编辑推荐: |
本文来自于sohu,文章主要从渗透测试的第一步信息刺探到内网渗透等,详细介绍了一个相对完整的渗透实战,希望对您能有所帮助。 |
|
在看白帽子们的漏洞的时候总有一种感觉就是把web渗透简单地理解成了发现web系统漏洞进而获取webshell。其实,个人感觉一个完整的渗透(从黑客的角度去思考问题)应该是以尽一切可能获取目标的系统或者服务器的最高权限,尽可能的发现足够多的敏感信息。这个过程应该包括但不限于以下几个方面:
信息刺探: 待渗透目标的系统,人员,组织信息等。
漏洞侦测: 所有与待渗透目标相关的系统的漏洞侦测。
系统提权: 利用现有的信息对已经获取的系统进行提权从而获取最高控制权限。
内网渗透: 利用以获取的系统作为跳板进一步扩大战果,重复以上三步获取更多的系统权限和内网敏感信息。
一、 信息刺探
作为渗透测试的第一步,也是最重要地一步便是信息刺探。孙子兵法有云:“知己知彼,百战不殆”。
首先是选择实战的目标站点,搜集到的信息如下:
从以上搜集到的信息,我们可以简单的分析一下接下来的渗透思路:
查找主站漏洞并利用
利用子站漏洞旁注进入系统搜集更多有用信息
二、漏洞侦测
按照上面的思路首先尝试寻找主站的漏洞,通常可通过AWVS或者其他的扫描工具做初步的扫描,看看会不会有可以利用的点。但是最简单直接的方法是打开这个站点,尽可能仔细的浏览每一可能有价值的页面,如下:
有没有发现,其实我们可以观察到一些很有价值的信息。从上面的信息,我们可以发现这个主站是基于Joomla
CMS的,这个其实对我们接下来的渗透很有帮助,我们都知道最近爆出了Joomla的RCE和SQL注入漏洞,那么我们就可以去尝试看看这个站是否修复了这些漏洞。
于是,我们可以使用已经公开的exp(http://avfisher.win/archives/287)对其进行测试,
如下所示:
果然漏洞确实存在,而且我们也顺利地getshell了,那么是不是意味着我们的渗透已经结束了呢?no,no,no(重要的事情说3遍),其实真正的渗透才刚刚开始。
三、系统提权
我们发现这是一个Windows 2008 R2的服务器,既然我们已经拿到了webshell,接下来考虑的事情就应该是,我能不能获得管理员权限?
首先,在菜刀中执行命令: whoami 看看现在的shell是在什么权限下运行的,如下:
可以看出我们的shell是在system权限下运行的,那么也就表示我们可以很容易的添加一个管理员帐户,命令如下:
net user administer <password>/addnet localgroup
administrators administer /add
四、内网渗透
接下来,我们就需要经一步查看和收集系统的一些常见信息来帮助我们进一步的内网渗透,通常包括以下信息:
1. 系统信息 – systeminfo
2. IP信息 – ipconfig /all
WindowsIP 配置 主机名 . . . . . . . . . . . . . : EESTSWEB01
主 DNS 后缀 . . . . . . . . . . . : 节点类型 . . . . . .
. . . . . . : 混合 IP 路由已启用 . . . . . . . . . . : 否
WINS 代理已启用 . . . . . . . . . : 否以太网适配器 本地连接: 连接特定的
DNS 后缀 . . . . . . . : 描述. . . . . . . . . . . . .
. . : Microsoft虚拟机总线网络适配器 物理地址. . . . . . . . . .
. . . : 00-15-5D-00-02-01DHCP 已启用 . . . . . . . .
. . . : 否 自动配置已启用. . . . . . . . . . : 是 本地链接 IPv6地址.
. . . . . . . : fe80::98f7:e8a:3eeb:ff6%11(首选) IPv4地址
. . . . . . . . . . . . : 192.168.0.10(首选) 子网掩码 .
. . . . . . . . . . . : 255.255.255.0默认网关. . . . .
. . . . . . . . : 192.168.0.230DHCPv6IAID . . . .
. . . . . . . : 234886493DHCPv6客户端 DUID . . . . .
. . : 00-01-00-01-1C-E6-6D-9C-00-15-5D-00-02-01DNS
服务器 . . . . . . . . . . . : 192.168.0.1TCPIP 上的 NetBIOS.
. . . . . . : 已启用隧道适配器 isatap.{ADD2E201-9C5D-480F-8E29-F722627ABA6E}:
媒体状态 . . . . . . . . . . . . : 媒体已断开 连接特定的 DNS 后缀
. . . . . . . : 描述. . . . . . . . . . . . . . . :
MicrosoftISATAP Adapter物理地址. . . . . . . . . . . .
. : 00-00-00-00-00-00-00-E0 DHCP 已启用 . . . . . . .
. . . . : 否 自动配置已启用. . . . . . . . . . : 是隧道适配器 TeredoTunnelingPseudo-Interface:
连接特定的 DNS 后缀 . . . . . . . : 描述. . . . . . . . . .
. . . . . : MicrosoftTeredoTunnelingAdapter物理地址. .
. . . . . . . . . . . : 00-00-00-00-00-00-00-E0 DHCP
已启用 . . . . . . . . . . . : 否 自动配置已启用. . . . . . .
. . . : 是 IPv6地址 . . . . . . . . . . . . : 2001:0:7834:496d:18cf:134e:3f57:fff5(首选)
本地链接 IPv6地址. . . . . . . . : fe80::18cf:134e:3f57:fff5%18(首选)
默认网关. . . . . . . . . . . . . : :: TCPIP 上的 NetBIOS.
. . . . . . : 已禁用
3. 开放的端口信息 – netstat -an
4. 运行的进程信息 – tasklist
5. 局域网中公开的文件共享 – net view
6. 局域网中的域的信息 – net view /domain
分析并提取有用信息:
根据上面的分析,我们发现目标服务器已经开放了RDP(3389)但是服务器是在内网我们无法直接外连。既然如此,我们可以考虑端口转发到我们自己的外网服务器然后在连接。
第一步, 上传端口转发工具(可以参考http://avfisher.win/archives/318)
第二步,外网服务器开启端口监听端口5001和5002
第三步,内网服务器开启端口转发,将本地端口3389转发到外网服务器监听的端口5002上
第四步,发起RDP外连外网服务器的端口5001
现在,我们已经成功地利用端口转发并RDP连接到了内网这台服务器上了。
打开XAMPP,我们可以很容易的查看网站的数据库数据:
为了进一步渗透内网,我们需要对内网进行扫描,看看内网开启了哪些服务,这里我推荐一款快速扫描内网的工具(MyLanViewer),结果如下:
内网的一些共享目录:(各种内部资料和信息)
一些内网的系统:
私有云云存储管理系统:(可以为共享目录设置权限)
无线路由器:(内网流量嗅探和截取)
打印机:(获取到了部分企业联系人的通讯录)
事实上,至此整个渗透仍旧没有结束,我们目前只是获得了一台WORKGROUP的服务器,而实际上仍旧有10几台服务器在EES域里,那么我们接下来该怎么突破呢?
其实可利用的思路还有很多,比如:
1. 结合上面我们在内网扫到的通讯录以及我们之前搜集到的子域名邮箱 mail.***.sh.cn(见0x01),我们可以先根据邮箱地址生成一个密码字典进行暴力破解,看看能不能在用户的邮箱中获取其他有用的信息。
2. 继续挖掘和分析其他的子站可能存在的漏洞继而逐步突破。
3. 尝试破解上面获得的无线路由器密码嗅探网络流量获取企业员工的用户名和密码。
在此就不再深入下去了!总之,渗透是一门特别的艺术,必须善于运用一切已获取的信息不断变换思路最终达成目的。
五、总结
渗透是一个特别需要经验,细心和耐心的工作,你必须从黑客的角度去考虑每一个可能存在的漏洞进而利用并扩大战果。
总结上面的这次实战的结果,可以简单概括成以下几点:
耐心: 必须有足够的耐心去搜集目标的一切可能相关的信息。
细心: 仔细地观察和了解你的目标,不放过每一个细节,从细节中获得突破口。
思路: 善于总结和归纳所有的已知信息,并结合在平时积累的各种渗透思路进一步扩大战果。
总结: 把每次实战中接触和学习到的东西总结起来并从中提取出实用的思路以便下次实战中的再次利用。
|