网络攻防中的渗透技术在实际渗透过程中可以流程化,首先是信息收集,收集IP地址及其域名信息,对端口进行扫描,对目标站点进行漏洞扫描,如果扫描结果中有高危漏洞,则可以对高危漏洞进行利用,例如sql注入漏洞,成功利用后,轻者可以获取数据,严重的可以直接获取webshell及系统权限。对于access数据库,只能通过登录后台后,寻找上传漏洞等来获取webshell权限,然后利用webshell来对服务器进行提权。
1.1信息收集与分析
1.查询该域名主机下有无其它域名主机
打开https://www.yougetsignal.com/tools/web-sites-on-web-server/网站,如图1所示,在输入框中输入网站地址www.****.com,然后单击“Check”,获取该域名主机下的所有绑定域名,共计64个。
图1 获取主机绑定域名信息
2.获取IP地址以及端口开放情况
分别使用“ping www.********.com”以及“sfind -p ***.***.***.***”命令获取常见端口开放等信息,如图2所示,ping命令无反映,主机开放了80,21以及1433端口。也可以使用“masscan -p 1-65535 ***.***.55.77”命令进行全端口扫描。
图2 获取端口开放等信息
1.2漏洞扫描
1.使用工具进行漏洞扫描
打开Jsky漏洞扫描工具,在其中新建立一个任务,然后进行扫描,如图3所示,发现SQL注入点8个,跨站漏洞1个。
图3使用Jsky扫描网站漏洞
2.使用其他工具进行漏洞扫描
在进行实际漏洞测试时,可以使用其它扫描软件例如WebCruiser、WVS等,使用多个扫描器,其获取的漏洞及信息可能不一致,漏洞扫描的结果主要用来进行漏洞分析,如图4所示,WVS扫描结果获取后台地址信息。
图4获取sql盲注入及后台地址
1.3进行注入漏洞测试
1.sql注入漏洞存在测试
在jsky中选择存在漏洞的url记录,然后选择使用pangolin进行渗透测试,pangolin程序会自动进行猜解,如果存在漏洞,则会显示SQL注入点的类型,数据库,关键字等信息,在图5所示,我们直接单击Tables猜解数据库表,获取了admin和news表。
图5 猜解表
说明:
在pangolin中需要自己进行一些设置,可以设置文字显示模式,有时候需要手工设置SQL注入点的类型(type),以及数据库等信息。
2.猜解管理员表admin中的数据
选择admin表中的id、admin_id、admin_name、admin_pass四个字段,然后单击pangolin主界面右中方中的“Datas”猜解数据,如图6所示,在最下方显示整个表中共2条记录,在右边区域显示猜解的结果。管理员密码非常简单,其中一个管理员用户名和密码都是“1”,密码和用户名均为进行加密。
图6 获取管理员用户名称和密码
3.获取后台地址
在Jsky扫描中发现存在admin目录,因此直接在浏览器中输入“http://www.*********.com/admin/”,打开后台登陆地址,如图7所示,后台非常简洁,没有验证码之类的东东。
图7 获取管理后台登陆地址
4.进入管理后台
在后台管理页面中输入管理员名称和密码“1”,单击“登陆”,成功进入管理后台,如图7所示,在后台中主要有“首页/管理中心/退出”、“用户管理”、“添加信息”和“系统信息”四个主要管理模块。
图7成功进入后台管理中心
1.4获取webshell及提权
1.寻找上传点
在该网站系统中,新闻动态、友情链接等添加信息接口中,均存在文件上传模块,且未对文件进行过滤,如图8所示,可以上传任何类型的文件,在本次测试中就直接将aspxspy.aspx文件直接上传上去。
图8可上传任何类型的文件
2.寻找上传的Webshell地址
上面选择是通过添加友情链接将webshell文件上传上去,到网站找到友情链接网页,然后直接查看源代码,如图9所示,获取webshell的地址。
图9 获取Webshell的真实地址
3.获取Webshell成功
在网站中输入Webshell的地址:“http://www. ******.com/ads/****1229233452.aspx”,输入管理密码,如图10所示,webshell可以正常运行,单击“Sysinfo”可以查看系统信息。
图10执行Webshell成功
注意:
由于前面已经有人上传了aspx的webshell,加上检测时上传了多个aspx的webshell,因此抓图中有些地址可能不完全匹配。
4.获取数据库配置文件信息
有Webshell后,获取数据库的配置信息就相对简单多了,到网站目录中去寻找conn.asp、config.asp、inc等,找到后打开该文件查看其源代码即可获取数据库的物理地址或者配置信息,如图11所示。在aspxspy中有一个功能特别好用,那就是iisspy,使用它可以获取该主机下所有的站点目录等信息。
图11 查看数据库连接文件conn.asp
5.执行命令
在aspxspy中命令执行不太好用,换一个功能更强大的aspx类型的木马,如图12所示,可以执行“net user”、“net localgroup administrators”、“ipconfig /all”、“netstat-an”等命令来查看用户、管理员组、网络配置、网络连接情况等信息,但不能执行添加用户等提升权限操作,一执行就报错。
图12 执行基本命令
6.读取注册表信息
通过分析,发现该服务器安装了Radmin软件,且管理员修改了radmin的默认管理端口4899,如果能够获取radmin的口令加密值,也可以直接提升权限,单击“Regshell”,在“Key”中输入Radmin2.x版本的口令值保存键值“HKEY_LOCAL_MACHINESYSTEMRAdminv2.0ServerParameters”,然后单击“Read”读取,如图13所示,未能成功读取,后面使用其它Webshell的注册表读取,还是未成功,说明权限不够。
图13 读取Radmin2.x的口令值失败
8.使用asp的webshell来提升权限
在有些情况下,aspx的webshell不好使,但asp的webshell执行效果比较好,如图14所示,上传一个asp的webshell,然后分别查看serv-u和PcAnyWhere,系统使用了PcAnyWhere进行远程管理。将其配置文件CIF下载到本地。
图14获取PcanyWhere的配置文件
6.获取PcanyWhere的密码
使用“Symantec PcanyWhere Password Crack”软件直接破解刚才获取的CIF配置文件,如图15所示,顺利的读出PcanyWhere远程连接的用户名和密码,后面我安装了Symantec PcanyWhere,通过它来连接该服务器,连接成功后需要用户名和密码才能进行完全控制。
图15 破解PcAnywhere远程管理密码
更多学习内容欢迎关注本公众号“小兵搞安全”
原文始发于微信公众号(小兵搞安全):对某网站进行漏洞扫描及利用
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论