扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
1.情况探查:
检测目的:拿到数据库
先看下目标的环境:Unix+php+mysql
IP:*.*.*.79
粗看了下端口开放情况:80,443 ,8080(8080没有东西)
扫了下1-254的web开放情况,有两个sa点,直接NBSI3里面执行命令:ping *.*.*.79,返回:Request timed out;arp -a:不在列表内,放弃!
继续分析:大约把IP定在70-90之间。
----------------------------------------------------------
2.目标站的尝试:
A.注射
有个board:../fluzboard.php?s=view&id=notice&no=1 可以注射。出錯信息一闪而过,管理员设置出錯就回首页。于是我抢先按停止,记录路径!(把网速放慢,嘻嘻,别让页面那么快跳转,有时候慢也有用处的!)
先看注射:支持union查询,猜到member表,很舒坦的暴到一套帐号。用load_file()暴代码的时候出现问题,几个关键页面老是一暴就弹出警告窗口(script的,想是代码里面的某些脚本捣乱),然后就返回首页。
还是老办法,抢在跳转前面按停止,查看源代码,mysql口令到手。(这里发现目标有两个库,还调用77的一个库)
通过暴代码,慢慢对整个程序有了了解,猜出的表也多了,管理员口令也拿到了。
后台有两个:进去后很郁闷,看着干瞪眼。啥能利用的东东都没有。
B.毁坏的上传:
再说说fluzboard留言本,这玩意我google了下,没直接找到源码,不过使用这玩意的站倒有一些,发现可以guest发言上传的,能直接弄到webshell(我这里拿了几个shell用来分析源码)。目标站做了手脚,把流言、回复等隐藏掉了,通过查看源文件可以找到链接,不过上传被破坏掉了,所以无法得手。
C.郁闷的包含:
不能导出shell注射点的利用已经很难有所作为了,我于是想到文件包含。手里有了fluzboard的源码可以分析,倒是发现fluzboard.php存在一处包含,我在其他fluzboard下测试也可以,目标上却提示不能包含远程文件。日,又没有可以上传的地方。
-----------------------------------------------------------
3.邻家姐姐:
本站行不通,咱只能把视野放大些,80也是unix+php+mysql,绑了几个米,我轻易弄到webshell。在shell里扫了下77,79的端口,发现果然处于同一局域网内,端口21,22,443,80,3306,8080都出來了。
前面我知道79调用77的一个库,也就是说77是支持远程连接的,于是80上连接试试,成功!(第一个库到手)
77的web结构跟79是一样的,我有了数据库的操作权限,于是很快想到在库里建表插入一句话马,导出到web可写目录拿shell。于是一次一次试:Unix变态的权限配置让我郁闷到死,计划再告搁浅。(注射点下不能导出,但在库里直接操作是可以的)
我分析这段的管理可能是同一个,管理习惯上应该会相似。于是在80上分析目录结构。我发现很多web目录都会有一个log目录,而该目录是777属性,嘿嘿,于是我猜出了77上的可写目录,成功获得webshell。
但是目标79还是没办法突破!
-----------------------------------------------------------
4.破解:
phpshell下可以完成mysql+php口令的破解,我在黔驴技穷的境地下想到了这个。
于是整理了下手上的信息,做了个passwd.txt传到shell目录,尝试破解。皇天不负苦心人啊,几次尝试后弄到一个ftp口令。
于是用Nstview反弹一个shell回我的跳板机,ftp上去传个shell。(第二个库到手)
至此成功拿下目标数据,完美收工!
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者