Use of Ruby Forwardable module and runtime meta-programming may introduce vulnerabilities
该报告还没有中文解读。
原文摘录
摘自原文(8431 字符中的一小部分)
I was digging through the `gitlab-foss` repository and noticed an interested pattern that seems to be adopted in a few places: the use of `Forwardable` with meta-programming over delegators, explicit `attr_reader` methods or `method_missing`. Heads up: the arbitrary file read vulnerability I …
原文中的代码
class HelloWorld
def initialize(attributes)
@options = OpenStruct.new(attributes)
end
def say_it
"Hello world"
end
def method_missing(method, *args)
@options.send(method, *args)
end
end默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 GitLab 所有。
时间线
- 报告提交
- 公开披露
阅读 HackerOne 原文 ↗作者 @jobert · 版权归作者与 GitLab 所有