![Web渗透技术及实战案例解析](https://wfqqreader-1252317822.image.myqcloud.com/cover/379/654379/b_654379.jpg)
2.7 对某音乐网站的一次安全检测
在前面的章节中提到了如何通过WebShell的特征关键字来获取WebShell,同时提到了三种真正能够获得该WebShell的方法,本文是对该文的一个补充,也即当我们找到一个需要密码验证的WebShell时,从网络攻防的角度,应该如何来处理问题。由于本次检测未能联系到官方负责人,因此主要从安全检测的角度进行分析。
2.7.1 获取WebShell信息
1.使用Google再次进行关键字搜索
直接打开Google搜索页面,在其中输入关键字“Copyright (C) 2008 Bin -> WwW.RoOTkIt.NeT.Cn”,然后单击“Google搜索”,如图2-65所示,出现两个搜索结果。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0167-01.jpg?sign=1738886632-loP73ZjZ14LelaeM03X9BAsbzfAUFbzz-0-be25c6d9e011374558d478aa0e6cc72a)
图2-65 再次使用Google进行搜索
2.增加特征关键词范围进行搜索
在Google搜索框中增加一些关键字,例如“Password:.Copyright (C) 2008 Bin -> WwW.RoOTkIt.NeT.Cn”,如图2-66所示,出来的结果多了不少,一共有7个搜索记录。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0167-02.jpg?sign=1738886632-wwhjIriPhAjhdkmkvZspPpcgG4GRdtyd-0-2535c8ca44a95ea602bfa417fdbb3bcf)
图2-66 扩大搜索关键字范围
3.获取意外的WebShell的管理密码
在入侵者的WebShell中,管理密码就如同房间的钥匙,只要有它也就可以进入房间,在图2-66中查看真实网站地址中以aspx结尾的地址,然后进行查看,如图2-67所示,直接打开“http://www.carraigdonn.com/uploadedpics/unpublic.aspx”,获取该WebShell的加密值“9e94b15ed312fa42232fd87a55db0d39”。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0168-01.jpg?sign=1738886632-wYOT5QgRwa546tVxoDIv13zMYfFrsAXx-0-41e1f3d6574755030ac1de93011ed26f)
图2-67 获取他人的WebShell
在该加密值后附带有一个“//PASS:007”,可以推测该WebShell的密码为007,但为了真正获取该WebShell的密码,还是到cmd5.com网站进行验证,将“9e94b15ed312fa 42232fd87a55db0d39”值输入解密框中,单击“MD5加密或解密”获取其密码为“007”,如图2-68所示,呵呵,一个好密码!
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0168-02.jpg?sign=1738886632-wUy5ojtyB2aSIzYflf1kgNW9IU44t2LT-0-ede3a967b899dad91945205ba7b0e043)
图2-68 获取WebShell的真正管理密码
前面是对上篇文章的一个复习,不会的朋友可以去尝试,将目前所有的WebShell的关键特征进行收集和整理,通过本方法一定能够有所收获!
2.7.2 安全检测之信息获取
回到本文的正题上来,通过前面的一些方法,已经知道某网站被入侵后还留了一个asp.net的后门WebShell,由于没有该WebShell的密码,因此需要通过其他途径来获取。
1.查询该域名主机下有无其他域名主机
打开ip866.com网站,如图2-69所示,在输入框中输入网站地址www.****.com,然后单击“点这里反查全部相关域名”,获取该域名主机下的所有绑定域名,大致有40多个。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0169-01.jpg?sign=1738886632-DZeU8ajGf7QZhHz7xj7edWv0hWm7t7d6-0-48223f3f523dcf544ff85eb47015a211)
图2-69 获取主机绑定域名信息
2.获取IP地址以及端口开放情况
分别使用“ping www.********.com”以及“sfind -p 219.133.***.***”命令获取端口信息等信息,如图2-70所示,ping命令无反映,主机开放了80、21以及1433端口。
2.7.3 安全检测之漏洞检测
1.使用工具进行漏洞挖掘
打开Jsky,在其中新建立一个任务,然后进行扫描,如图2-71所示,发现SQL注入点8个,跨站漏洞1个。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0170-01.jpg?sign=1738886632-lJHDCL033g3exHpqBF4NfY2x9scPnUpg-0-f104a738281e9dd7e56e5e5b37b4d986)
图2-70 获取端口开放等信息
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0170-02.jpg?sign=1738886632-WmbxzdnnJarOVfRMQuK0msTS6ryNUqXP-0-00403af9fbd56cceedef5aeed6e2b49e)
图2-71 使用Jsky扫描网站漏洞
2.进行注入猜解
在图2-71中选中一个SQL注入点,然后选择使用pangolin进行渗透测试,pangolin程序会自动进行猜解,如果存在漏洞,则会显示SQL注入点的类型、数据库、关键字等信息,如图2-72所示,直接单击Tables猜解数据库表,可获取admin和news表。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0171-01.jpg?sign=1738886632-ikWvKJ3agHshd72rVnmFlJ0LANfbqGAE-0-ca72dedb0e4757cfae0a0c51cc5bf11d)
图2-72 猜解表
说明:
在pangolin中需要自己进行一些设置,可以设置文字显示模式,有时候需要手工设置SQL注入点的类型(type),以及数据库等信息。
3.猜解管理员表admin中的数据
选择admin表中的id、admin_id、admin_name、admin_pass四个字段,然后单击pangolin主界面右中方中的“Datas”猜解数据,如图2-73所示,在最下方显示整个表中共2条记录,在右边区域显示猜解的结果。管理员密码非常简单,其中一个管理员用户名和密码都是“1”,密码和用户名均为进行加密。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0171-02.jpg?sign=1738886632-THkGtRHAL3ei8ItGnbo8IcSOCAgpi4z3-0-597cf5d3d35cf69b345f80093081f27a)
图2-73 获取管理员用户名称和密码
4.获取后台地址
在Jsky扫描中发现存在admin目录,因此直接在浏览器中输入“http://www.*********.com/admin/”,打开后台登录地址,如图2-74所示,后台非常简洁,没有验证码之类的东西。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0172-01.jpg?sign=1738886632-abIEiwj80bTY6784daD2ipfAgGDGAaFh-0-6a1cdaa877dd291d090f6b7c0c955e85)
图2-74 获取管理后台登录地址
5.进入管理后台
在图2-74中分别输入管理员名称和密码“1”,单击“登录”按钮,成功进入管理后台,如图2-75所示,在后台中主要有“首页/管理中心/退出”、“用户管理”、“添加信息”和“系统信息”四个主要管理模块。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0172-02.jpg?sign=1738886632-9tyPar8Mu86U805srtC4AfVOulIqLm5J-0-49104943841de56390e700fa2f0df3ba)
图2-75 成功进入后台管理中心
6.寻找上传点
在该网站系统中,新闻动态、友情链接等添加信息接口中,均存在文件上传模块,且未对文件进行过滤,如图2-76所示,可以上传任何类型的文件,在本次测试中就直接将aspxspy.aspx文件上传上去。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0173-01.jpg?sign=1738886632-uMn3Wl5fgUuN3XJayPAYIpP7KthYHeci-0-b2ca20b5e27d130384f17d471a0720bf)
图2-76 可上传任何类型的文件
7.寻找上传的WebShell地址
上面选择是通过添加友情链接将WebShell文件上传上去,到网站找到友情链接网页,然后直接查看源代码,获取WebShell的地址,如图2-77所示。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0173-02.jpg?sign=1738886632-h4oaqvaUaBCucKrpys4TSSK2Ws1C6tpu-0-e3de54bc364305bad89e1d0d578dadb0)
图2-77 获取WebShell的真实地址
8.执行WebShell成功
在网站中输入WebShell的地址:“http://www.xiaobang.com/ads/20081229233452.aspx”,输入管理密码,如图2-78所示,WebShell可以正常运行,单击“Sysinfo”可以查看系统信息。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0174-01.jpg?sign=1738886632-G6DOsCzfYfWUQZHiyYuyEnpGjeFDLJQU-0-042d5b525040f904647e291834f02e5b)
图2-78 执行WebShell成功
注意:
由于前面已经有人上传了Aspx的WebShell,加上检测时上传了多个Aspx的WebShell,因此抓图中有些地址可能不完全匹配。
2.7.4 提权之路
1.获取数据库配置文件信息
有WebShell后,获取数据库的配置信息就相对简单多了,到网站目录中去寻找conn.asp、config.asp、inc等,找到后打开该文件查看其源代码,即可获取数据库的物理地址或者配置信息,如图2-79所示。在aspxspy中有一个功能特别好用,那就是iisspy,使用它可以获取该主机下所有的站点目录等信息。
2.下载网站数据库
如图2-80所示找到数据库的物理路径,然后单击“down”按钮即可进行下载,在图2-80中可以看到系统已经对数据库采取了一些安全措施,比如设置了一个比较难以猜测的名称,但当我们获取WebShell后,设置再复杂的名称也是无用了!
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0175-01.jpg?sign=1738886632-XPrZhD0RD58ORRhN7YzdixeQ9WTnxHP5-0-6162ab5a4fd00a07b42d468a41495e88)
图2-79 查看数据库连接文件conn.asp
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0175-02.jpg?sign=1738886632-d4mBn4haCslBqAxF4xUZneZ98P3KbHMF-0-19d9759cebc22d24d5853526141ad5f4)
图2-80 下载数据库
3.执行命令
在aspxspy中命令执行不太好用,换一个功能更强大的aspx类型的木马,如图2-81所示,可以执行“net user”、“net localgroup administrators”、“ipconfig /all”、“netstat-an”等命令来查看用户、管理员组、网络配置、网络连接情况等信息,但不能执行添加用户等提升权限操作,一执行就报错,如图2-82所示。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0176-01.jpg?sign=1738886632-NDI2BsnbnWXzBmA3TV1guFkuAQGfmOPi-0-cf03884fee689644f0f2462fa9580dde)
图2-81 执行基本命令
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0176-02.jpg?sign=1738886632-r2Zlesobb7XIs7h6xmZ37f82xuRN46C4-0-e88be444d4e64d845356d65a3f1c5c75)
图2-82 执行命令报错
4.读取注册表信息
通过分析,发现该服务器安装了Radmin软件,且管理员修改了Radmin的默认管理端口4899,如果能够获取Radmin的口令加密值,也可以直接提升权限,单击“Regshell”按钮,在“Key”中输入Radmin2.x版本的口令值保存键值“HKEY_LOCAL_MACHINE\ SYSTEM\RAdmin\v2.0\Server\Parameters”,然后单击“Read”按钮读取,如图2-83所示,未能成功读取,后面使用其他WebShell的注册表读取,还是未成功,说明权限不够。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0177-01.jpg?sign=1738886632-tubXA6VhMqvik5YqTrWpPwzpSdqb6W7O-0-b15d19386e9c79a577b95d6879136533)
图2-83 读取Radmin2.x的口令值失败
5.使用asp的WebShell来提升权限
在有些情况下,aspx的WebShell不好使,但asp的WebShell执行效果比较好,如图2-84所示,上传一个asp的WebShell,然后分别查看serv-u和PcAnyWhere,系统使用了PcAnyWhere进行远程管理。将其配置文件CIF下载到本地。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0177-02.jpg?sign=1738886632-lxPg4mN4a1Vmk7HT2qUfX80Sc8WQFc1A-0-414ae93e75585204889780d5b5491635)
图2-84 获取PcanyWhere的配置文件
6.获取PcanyWhere的密码
使用“Symantec PcanyWhere Password Crack”软件直接破解刚才获取的CIF配置文件,如图2-85所示,顺利地读出PcanyWhere远程连接的用户名和密码,后面笔者安装了Symantec PcanyWhere,通过它来连接该服务器,连接成功后需要用户名和密码才能进行完全控制。
![](https://epubservercos.yuewen.com/0456ED/3590270403425901/epubprivate/OEBPS/Images/Figure-0178-01.jpg?sign=1738886632-WRTjUdtufuafGJuKEHGVkmJzHW0yLmpT-0-68eb4670992e26cf3c3bb798e6c1f90a)
图2-85 破解PcAnywhere远程管理密码
2.7.5 总结与探讨
本次安全检测来自于上次上篇文章,本次仅仅为安全检测,安全检测发现了漏洞,验证了上篇文章中的思路,成功获取了WebShell,且在一定几率下还可以完全控制该服务器(等待管理员进入系统后,未锁定屏幕的过程中,通过PcanyWhere来实施远程控制),在本次检测过程中有以下一些收获。
1.在网络安全攻防实战过程中丰富了安全渗透和检测实践经验
本次检测熟悉了aspxspy这个功能强大的asp.net的WebShell,该WebShell最大的优点是在获取某一个WebShell后可以通过它来下载其他绑定域名站点的数据库。
2.加深对站点安全防护的认识
在本次检测中我可以明显地感觉到该主机系统进行了一些安全防护,除了PcanyWhere程序权限设置不严格外,其他部分的权限设置的还可以。即使入侵者拿到了WebShell也无法控制服务器,虽然以牺牲用户资料为代价。
3.安全重在实战、实践和基础技术的研究
我一直都认为安全技术是一个长期积累的过程,只有不断地进行技术研究、技术积累、才能提高自己,通过这次研究,将促使我们更加注重技术的研究和研发!