再记由目录遍历到getshell
在上一篇文章之后,大家的反应出乎我的意料,可能是因为出于某些问题,此类文章较少较小众。我希望我可以通过文章记录的形式,来将经验和思路分享给大家,也欢迎大家找我交流经验。文笔不好,如有错误,欢迎斧正。
全文纯属虚构,如有雷同,就雷同吧。
目标国外站http://xxx.xx.com/
云悉指纹
Web指纹 | PHP/5.3.3,CentOS,Apache/2.2.15 |
---|---|
语言 | PHP/5.3.3 |
数据库 | 无 |
Web容器 | Apache/2.2.15 |
服务器 | 无 |
全球排名 | 无 |
操作系统 | CentOs |
ip:175.117.xxx.xxx
无cdn无waf
概览全局
访问直接跳转到http://xxx.xx.com/member/login.php
手动测试万能密码,尝试无果。
查看源代码寻找敏感路径或敏感api
发现敏感路径
访问仍然跳转到登陆界面,放弃。
目录有迹可循,没有加特殊前缀后缀,掏出御剑
http://xxx.com/admin
简陋后台,尝试万能密码,无果。
查看源代码,无果。(有些账号密码会写在源代码中!)
发现目录遍历,大部分都被重定向到登陆页面。看下御剑扫出的另外几个
xxx.com/temp/
http://xxx.com/html/
404
http://xxx.com/data/
看到这个我知道这个站死定了
被扫描器扫描之后创建了很多文件夹,并且时间都是最近的。很有可能后台编辑器不登陆就能用。
三个目录遍历点,我们需要耐心找下可以利用的文件或者目录。注意留意upload
字样的文件夹,因为很有可能会有前人的脚印。这里说一点就是如果你找到前人的马但是不知道密码,你可以尝试下载同名的图片用记事本打开。
测试之后总结下可能被利用的点
http://xxx.xxx/data/imagesfile/upload/
文件上传的目录
http://xxx.xxx/data/log/error_201511.log
MySQL错误日志爆出绝对路径
http://xxx.xxx/member/check_userid.php
http://xxx/member/message.php
唯一没打码的黄字导航存在注入,post搜索框存在注入,无任何过滤
http://xxx/board/?bid=1
到这里我想的是root权限+绝对路径写shell,美滋滋?
然后sqlmap报了这个,非root,非dba,服了
那只能跑后台管理员账号密码了。。然后没找到管理员表。。。国外站就是太卡,让他先跑着,回头继续看目录遍历,我们现在的目的要转向上传点上。
然后我在目录遍历之中没找到上传点。服了。
1 峰回路转
在之前的注入点之中,
我忽略了一个细节,而这个细节是谷歌翻译帮助我发现的- -
这个注入点是查看帖子,那么与之相对应的右下角既是发布/创建帖子。
上传点
上传点可用
尝试getshell apache+php5.3 图片白名单 上传重命名 尝试解析漏洞和截断,无果。
发现编辑器还有一个上传点
抓包
未重命名!
apache解析漏洞getshell
访问404???
发现不存在_thumb
这个目录,不知道怎么回事。
借助之前的目录遍历找到shell
蚁剑
权限是apache,
脏牛获取root,懒得截图了。
2 写在文后
总结:扫描=》发现目录遍历=》发现注入点=》发现编辑器=》解析漏洞=》getshell=》回马枪目录遍历找到shell=》脏牛
这篇文章花了半个小时去复现截图写稿,但是渗透的整个过程花掉了我两天时间,期间拐过各种坑,总而言之就是自己的经验不足,不够细心,谷歌翻译这个我是真的无语。实战是最好的老师。
文笔不好,写的很乱,见谅。
对文中1.php.rar_1_1.jpg的疑问,Apache解析漏洞是从右向左解析,格式识别不到才往前读啊,jpg格式Apache能解析到鸭,为啥继续往前读了,并且读到了php……
如果在 Apache 的 conf 里有这样一行配置 AddHandler php5-script .php 这时只要文件名里包含.php 即使文件名是 test2.php.jpg 也会以 php 来执行。不算解析漏洞,算是用户配置错误。文中本意是用解析漏洞,但是图截的有问题,抱歉。
如果你觉得这篇文章对你有所帮助,欢迎赞赏或关注微信公众号~