welcome to hacker study blog :)

© jason
Powered by LOFTER

一次渗透单子网站某房产信息网并提权

自先看一下目标站首页;如图1


【信息收集】
经过前期探测基本确定了网站的环境,
网站脚本语言:asp aspx
搭建平台:IIS7.0
数据库:mssql2008
操作系统:windows2008

搭建组合↓
asp+aspx+IIS7.0+Win2008+mssql2008

【服务器IP】
经过综合判断后确定真实IP为↓
76.24.xx.142


【CMS探测】↓
某房产管理系统


【环境漏洞信息探测】↓
经过一会的探测以后,得出以下的信息。

【弱点探测】
web端漏洞;↓
-----此CMS的sql注入漏洞
手工没探测出cms,后来用bugscan探测得到cms,并且百度到此sql注入漏洞。

结果↓
测试以后,发现修复了,多方尝试还是不行。



-----.net容器填充漏洞
用AVWS爬行时发现的填充漏洞
比较鸡肋的这个漏洞,理论上可以读任意文件的源码。
这个无视了,曾利用过几次都失败了。并且利用周期很长,可能一天才能跑出来一个文件。


服务器;
IIS短文件漏洞
IIS物理路径泄露


【IIS短文件漏洞】
经过手工访问com/xxx.aspx 得到aspx特性报错信息,遂准备尝试IIS短文件漏洞。

访问com/a*~!*/.aspx 返回404
可能存在开头为a的文件

访问com/aaaaa*~!*/.aspx 返回bad reques
基本确定存在短文件漏洞,故 如下↓

1.短文件先跑一下,一般这种站目录都比较难猜,而且长,短文件的帮助不是很大。



【IIS物理路径泄露】
这貌似是IIS7 7.5都有的问题,访问不存在的文件或目录 显错爆出物理路径。↓

2.配置不当爆物理路径,直接访问个不存在的文件 如图2


【得到物理路径】
在根目录下访问任意文件名,得到了物理路径;D:\UserWebSpace\YICS NetWebSite\


【短文件探测结果】↓
短文件结果猜了一些文件名,都不存在。
不截图了,没什么东西。但是可以确定网站是放在根目录下的,可能二级目录还会有子站。


【目录结构及敏感探测】
1.手工在首页某图片查看属性,通过火狐的特点可以一次性看到结构。如图3


【收获】
得到了↓
1.网站图片存放路径及结构;
2.一个子域名。

确定常用图片存放目录;
/images/
/upimg/

分析↓
通过图片名称基本可以确定这两个目录分别是两个上传点上传的,images的上传点可能会比较好突破。


通过审查元素大概看看下目录和文件命名,其次就是确认搭建平台+支持的脚本情况,及防护情况。


google目录探测+爬行
经过爬行和google目录探测发现,如图4


avws爬行的结果不多。

google的截图容易被爆菊,目录很少,基本就是爬行的加前面探测的。


【收获】
得到两个实际存在目录,
/web/
/pubinfo/
/web_site/

【磨刀霍霍向猪羊】
逐个访问目录,发现其中1个目录存在遍历。/upimg/ 如图5



由于文件很多,所以↓
【搜索asa asp cer aspx txt rar zip等敏感后缀文件及敏感关键词】

文件存放目录,搜索脚本找到了后门。如图6


【收获】
sql.aspx
一个图马。
一句话

【访问准后门了解现状】
首先访问sql.aspx后门,看看情况。如图7



【后门,我想做你的主人】
看起来这个马儿是老马,遂尝试↓
1.查看源码,font找密码 失败 登陆错误在看源码 失败
2.本来很多是可以在脚本后门加上?profile=a 触发后门得到密码的,这个马不行也很正常 。


【爆破后门】↓
此大马的默认密码和弱口令。没进去。

1.burp直接爆破。
常用password+3+4+5+6+7+8位常用密码 一共20W左右 失败告终(后来得知密码及其复杂)


【保留思路,转战别的残留脚本】

2.然后下载了下面的图马,得知图马的密码是xmy,尝试登陆,错误。在看上传时间,基本可以判断出是不同的hack上传的。xmy这个密码基本没用了。
【得知】
这个站之前至少被成功渗透2次,通过上传时间基本确定不是同一个人所为。


访问a.asp空白,应该是一句话了。
思路↓
爆破疑似一句话脚本

1.用K8的爆破
死慢死慢,还爆破不出来。



2.准备用burp爆破一句话,速度快,字典也多些。如图8


这里用了.net的输出语句,在Burp里面替换pass为变量,只要变量=密码了。返回值会不一样。爆破结果如图9


当时一共配置了30多W好用的字典,没给爆破出来。



【该看清现实了】↓
抽根烟想了一下然后继续,想到这个系统是存在注入的,但是前面测试给修复了。

所以想继续回到注入。
于是采集了此站所有能采集到的脚本,逐个测试。


【水到渠成 事在人为】↓
结果半天的手工测试,找到了一个可能未被修补的链接;
得到↓
在/web_site/目录下存在Search.aspx?type=0&keyword=


主要考虑 1.能不能注 2.权限问题

放进工具看看情况;如图10



【结果】
存在注入,权限不小。失望的是不给读目录和写shell。不过常用的命令可以执行,whoami为网络权限。

【曾经的那匹马,等我】
思路,把没爆破出来的一句话导出成x.txt 看密码。

虽然磁盘权限不高,copy和type应该可以的。于是准备把一句话导出到同目录的txt,查看密码。
准备执行;
type "D:\UserWebSpace\YICS NetWebSite\upimg\a.asp">>"D:\UserWebSpace\YICS NetWebSite\upimg\666.txt"


工具没回显。如图11


【就让我看一下】
我们先访问看看,不行的话在找原因or换工具 如图12


【收获】
得到一句话密码为:A1~G^fs*Q*aQ&$#
这密码,要是能爆破出来 我可以考虑给自己烧香。



连接,如图13




【不满足,想要】

OK,此时得到了shell,下面上大马提权。看下网络情况;如图14



【基本情况】
内网,补丁打的不多,测试后用了IIS7的exp加了隐藏用户。如图15


查看下用户情况;图16


已启用并且加入管理组,看下远程端口。

通过系统探测和PID确定是5235.看下开启状况;图17


已经开启,下面就是转发端口了。

【本机环境】
我本地是内网,192.168.1.103.我这边两台电脑连接路由,路由接的拨号。所以没办法,映射路由的话太麻烦。

【外网,你回来吧】
然后给客服打个电话重置了拨号密码,网线直接接光纤,不经过路由了。这个事情耽误了时间。


【外网你来了,一起转发吧】
然后执行;如图18


成功拿下服务器,下面就看看数据;如图19 20



一共有20多个库,每个库里有100多个表。

想看看这个房产数据↓

一个一个找就累死了,于是用sql查一下库下所有表占用大小来判断数据存放位置。


执行;
01 获取当前数据库下所有表信息: 
02 SET NOCOUNT ON
03 DECLARE @db VARCHAR(20) 
04 --获取当前数据库 
05 SET @db=db_name() 
06 DBCC UPDATEUSAGE(@db) WITH NO_INFOMSGS
07 GO
08
09 CREATE TABLE #tblSpace 
10 ( 
11 数据表名称 varchar(250) null, 
12 记录笔数 int null, 
13 保留空间 varchar(15) null, 
14 数据使用空间 varchar(15) null, 
15 索引使用空间 varchar(15) null, 
16 未使用空间 varchar(15) null
17 ) 
18 DECLARE @tblname varchar(250) 
19 DECLARE curTbls CURSOR FOR
20 SELECT TABLE_NAME FROM Information_Schema.TABLES
21 --BASE TABLE很重要 
22 WHERE TABLE_TYPE= 'BASE TABLE ' 
23
24 OPEN CurTbls
25 FETCH NEXT FROM curTbls INTO @tblName 
26 WHILE @@FETCH_STATUS=0 
27 BEGIN
28 INSERT #tblSpace EXEC sp_spaceused @tblName 
29 FETCH NEXT FROM curTbls INTO @tblName 
30 END
31 CLOSE CurTbls
32 DEALLOCATE curTbls
33 SELECT * FROM #tblSpace ORDER BY 记录笔数 DESC
34 DROP TABLE #tblSpace 
目的→查看数据库下所有表的结构及详细储存信息


效果如图21


很快找到;如图22


很多数据,这东西动了不值,看看别的东西吧。

然后内网进一步时发现192.168.3.200 这个B段也是房产网,顺便一起给拿下了 如图23


另外有几点↓
1.sa降权,mssql2005以后默认不开启xp_dirtree列目录
2./images/基本确定不是后台上传目录,而是网站图片存放目录
3.细心你会发现有两个后门大小是一样的,你也会发现上传时间不一样,所以密码当然已经尝试过了。
4.端口映射其实不用我这么麻烦,这里支持aspx 其实直接用regeorg做个socket5代理穿透过去就好了



评论 ( 3 )
热度 ( 4 )
  1. redboyjason 转载了此文字