Admin Command Injection via username in user_archive ExportCsvFile
该报告还没有中文解读。
原文摘录
摘自原文(1464 字符中的一小部分)
When a user generates a backup of their posts, their username gets sent to the `ExportCsvFile` job. The username is placed inside of a gzip command in backticks. Although the application prevents special characters in usernames, an admin is able to make modifications to the database via the restore …
原文中的代码
file_name_prefix = if @entity == "user_archive"
"#{@entity.split('_').join('-')}-#{@current_user.username}-#{Time.now.strftime("%y%m%d-%H%M%S")}"
file_name = "#{file_name_prefix}-#{file.id}.csv"
absolute_path = "#{UserExport.base_directory}/#{file_name}"
`gzip -5 …默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 Discourse 所有。
时间线
- 报告提交
- 公开披露
阅读 HackerOne 原文 ↗作者 @ziot · 版权归作者与 Discourse 所有