taibeihacker
Moderator
0x01 站点1:文件上传
发现源代码泄露
打開自己珍藏已久的辣雞字典,掃描發現存在bin.zip信息洩露,嘗試進行代碼審計文件位置:SimpleDataPlatform.SimpleDataPlatform.fileUpload
找到ProccessRequest接收請求,可以看到獲取了一堆參數後(初始化),後進入了HandleFiles方法,

跟進HandleFiles進行處理,如果dateType=ZBJHSB時,就繼續處理請求,dateType為GET傳參

路徑為/Uploads/SetData/ZBJHSB,str名稱為時間戳,且str2(後綴)沒有進行限制就進行保存,

OK,這應該是一個妥妥的任意文件上傳了,只要有返回值,那麼這個站就沒了。但是很不湊巧的是,他沒有返回值。
由於方法fileUpload,瞎猜文件名為
fileUpload.aspx
fileUpload.ashx
fileUpload.asmx
fileUploads.aspx
fileUploads.asmx
fileUploads.ashx
Upload.等加上自己現有的字典爆破了一波,成功找到了返回了200的文件名http://xxx.com:6039/FileUploads.ashx
直接構造上傳表單,這裡Form裡的name字段應該是沒有具體設置的(代碼裡沒有找到),發包後返回200,可能真的傳上去了吧?
POST /FileUploads.ashx?DataType=ZBJHSB HTTP/1.1
Host: xxx.cn:6039
Content-Length: 195
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36
X-Requested-With: XMLHttpRequest
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarySVkAJfiOUeRxhsu8
Accept: */*
Connection: close
------WebKitFormBoundarySVkAJfiOUeRxhsu8
Content-Disposition: form-data; name='File'; filename='1.aspx'
Content-Type: image/jpeg
11111111111
------WebKitFormBoundarySVkAJfiOUeRxhsu8--

之前我們看到使用的格式為yyyyMMddHHmmssfff作為文件名,然後直接截取後綴作為ext,而且我們有了具體的路徑,那麼只需要爆破時間戳文件名即可拿下該站點,以前還沒有這麼做過,不妨試試。
爆破时间戳
使用Powershell生成時間戳,然後此時在Burp按下go發送請求包powershell -c Get-Date -Format yyyyMMddHHmmssfff

再爆破後面5位數字,也就是ssfff(由於電腦上的時間不一定準,有時候甚至可能要爆破6位)
不知道等了多久

運氣真好,後面的就不多說了。
0x02 站点2:文件上传
找到上传接口
打開網站http://xxxx:880/zwwpt/#/就發現存在一個webpackdebug模式未關閉,查看JS發現上傳接口
http://