墨者_WebShell文件上传分析溯源(第2题)
靶场:
https://www.mozhe.cn/bug/detail/TzRsdjFSYW9HQlA2OFdGbXo0KzBUdz09bW96aGUmozhe
背景介绍
安全工程师"墨者"在一篇网络安全方面的技术文章发现了一个比较有意思的、而且比较少见的漏洞,一般程序员不会写出这样的漏洞代码,你看了这样的漏洞就会对开发这个程序的人匪夷所思。不过,在一些程序里,他就是这样写的。
实训目标
1、掌握Cookie的基本知识;
2、了解JavaScript的基本知识;
3、了解常见的管理后台的命名方式;
4、了解PHP基本的代码;
解题方向
通过上传脚本代码,读取服务器上的文件。
解题思路:
1、御剑扫描后台
2、尝试访问访问admin/upload.php,发现无权访问,并有一个upload1.php页面一闪而过,随后跳转到upload2.php。
用burp抓包,得到上传页面
通过抓取upload1.php页面,发现返回了源码,现在已知处理上传的文件为upload_file.php
3、将数据包发送到repeater模块,更改cookie的uploadmd5字段,获取upload_file.php的源码
通过分析代码,发现上传上去的文件被重命名,处理代码为$file2 = $path.$time.'_'.$verify.'_'.$file1;
上传路径为/uploadfile/+重新命名后的文件名称
命名方式为年月日+verify值+原来文件名称。
4、上传一句话木马文件,得到20201012_ff9a4d8aa2f1b270_2.php
5、菜刀连接,在html文件夹下找到key
http://219.153.49.228:47904/admin/uploadfile/20201012_ff9a4d8aa2f1b270_2.php