文章目录
Part 1 MIME上传绕过实例
step 1 环境配置和模块了解
burpsuit 代理功能
1、设置代理
2、访问10.1.1.59:81,用户名是admin,密码是password。然后打开burp,在dvwa中访问SQLinjection,截获的数据包如下。
spider 模块
1、单击右键选择send to spider,切换到Spider模块下,burpsuite会自动对网站进行爬取。
2、切换到Control选项卡下可以查看爬行的状态和设置爬行范围。
3、Options选项卡中可以进行爬行的设置等。
4、一段时间后切换到Target模块查看结果。
5、修改请求方式。原来的GET变POST,POST变GET。
6、Don’t intercept requests表示不拦截请求,比如我们选择To this host,此时,即使Intercept is on状态,burp也不拦截请求,这时我们就可以正常访问页面了。
但是不是意味着我们这次操作就神不知鬼不觉了呢?并不是的,切换到proxy选显卡的options选项下,可以看到Intercept Client Requests下新增了一条记录,即下图最后一条。
Do intercept下Response to this request功能可用于对服务端发送过来的信息做修改来欺骗浏览器。
7、如果开启URL-encode as you type表示对你输入的&,=等字符将会被URL编码替换。
target 模块
这个模块下有两个选项卡,Site map主要是将爬行的站点以树形结构显示,Scope主要是用来设置范围进行过滤。
有时当我们对一个目标网址进行测试时,Site map下会出现许多不相关的网址,我们可以使用Filter来过滤,只留下目标网址。
如下图,点击Filter,勾选Show only in-scope items,这时site map就只剩下我们的目标网址了。
任意点开一个目录又会出现许多功能,如下图,我们选择remove from scope。
然后到scope下查看Exclude from scope,可以发现多了一条记录,就是我们刚刚remove掉的那一条。
也可右键选择Spider this branch,burp就会对这个目录进行爬取。
点击Expand branch来展开分支,其他功能不是很常用,有兴趣可自行了解.
Site map选项卡右边可以看到一些请求的信息,在Host下可以选择对链接进行高亮显示,comment下可以添加注释,针对单个链接也可进行右键操作。下图为高亮颜色的列表,单击喜欢的颜色即可使用,右侧comment下的add a piece of notes是添加的注释。
step 2 使用burpsuite上传绕过服务端MIME类型检测
1、创建文件
因为桌面上有个txt文件,那么直接按住Ctrl 拖动即可复制该文件,然后将文件名及其后缀改为1.jpg
2、登录
打开http://10.1.1.59:81,登录名为admin,密码为password,点击左侧upload
3、设置代理上传文件并抓包
说真的,这里的设置代理困扰了我很久,最后我没有设置代理,直接点开burp,然后上传文件,在proxy模块对抓到的包直接右键send to repeater
4、修改文件类型
在repeater模块将Content-Type后的text/plain修改为image/jpeg,下图是修改过的样子。
5、搜索文件路径
在repeater模块点击go,搜索文件路径。虽然不知道路径但是知道文件名呀,所以我们在右边搜索框直接搜索文件名1.txt
6、复制搜索到的路径(即文件名前的内容),在浏览器中打开,得到的结果如下:
对比一下原始的txt文档内容:
嗯,果然是它。
Part 4 课后习题
【解析】forward是继续传输,drop是丢弃。
【解析】前三项都对,这是个多选题。