问答
发起
提问
文章
攻防
活动
Toggle navigation
首页
(current)
问答
商城
实战攻防技术
漏洞分析与复现
NEW
活动
摸鱼办
搜索
登录
注册
红队外网打点实战案例分享
渗透测试
本文将分享一系列红队外网打点实战案例,素材内容来源于之前参加的HVV比赛和红队检测项目,通过深入剖析攻击技术去探索红队渗透测试的最佳实践,不足之处烦请各位师傅指点交流!
红队外网打点实战案例分享 ------------ ### 从最基础的登录框突破 登录框作为hw出现场次最多的角色,也是最容易出洞的,下面介绍一些自己常用的测试方法 #### 登录爆破小技巧 ![image-20231130171640751](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-e9916fd4ddbea0e2c174582e3b720f93285664be.png) 像这种系统的爆破我们有两种解决方法: - 分析前端加密算法,写脚本模拟对密码进行加密 - 固定密码为123456 000000 使用常见的用户名作为字典进行爆破 两种方法各有优劣,我更倾向于第二种,在比赛打点效率会更高,分析加密算法更适用于红队检测项目 ![image-20231201170955410](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-96b4186afb66c6a97b56544840f7dc921d2f722c.png) 使用爆破的账号密码登入后台,便可以继续寻找后台上传点 看到图片类型这里限制上传的文件格式 ![image-20231201171410743](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-f9dcba00258f8c4d3d1b01b98a7162361453a815.png) 直接添加 `aspx` 文件格式类型 ![image-20231201171600249](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-c9677fd2d99e678fb692a0b3110c0e55a5b66a6c.png) 成功getshell ![image-20231201171755656](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-89cfd5175993005e2d9c956debe1dea03affebf3.png) #### 修改返回数据包参数进入后台 有些时候网站登录状态是根据前端判断的,这时候我们就可以直接修改返回包进行绕过 ![image-20231128172935703](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-33322c81982deadd5ce7d35ea3fbb9159c3f7621.png) 前端判断登录逻辑根据返回包的ret值决定,当返回值为1则成功登录 ![image-20231128173007315](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-d2e5891ffa42be9e76de1486166fc5dfef17e639.png) 成功进入后台 ![image-20231128173130312](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-b7ea08099caf234cd3e0ec274c90fdb8bced9175.png) #### 插件探测常见sql注入和log4j漏洞 sql注入插件推荐 [https://github.com/smxiazi/xia\_sql](https://github.com/smxiazi/xia_sql) 基本原理是通过发送多个数据包,根据返回数据长度判断是否存在注入 ![image-20231128170800532](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-2ff16b3b00410edaf55dea71314631383dec1808.png) 除了被动扫描以外,我们还可以通过手动添加单引号、双引号去查看返回包,若存在类似报错则可能存在sql注入 ![image-20231128164205795](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-ab3fea78097e42f8c8edc9d3671134755ab47132.png) ![image-20231205180145610](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-dd281a0e85af02ca01c1517d4c9d4030f8cc0221.png) sqlmap一把梭 ![image-20231128173629321](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-26270ab91a741d3f59416d92c71a3da976ac14b6.png) log4j插件推荐 <https://github.com/TheKingOfDuck/burpFakeIP> 通过burp插件fuzz数据包的header头 ![image-20231128171023433](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-20525f952fd642e99941b3fb8cacac0cedbad6a0.png) 成功探测出登录框的log4j漏洞 但要注意的的是很多dnslog平台已被防火墙标黑,因此推荐使用ceye或者自搭建dnslog平台 ![image-20231108153844067](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-3c69688b039301839ff0de70ac058589c92c2a4a.png) #### 系统默认口令+后台1day漏洞利用 随着攻防比赛愈发频繁,公网能直接利用的前台漏洞越来越少,大多数都被批量扫描修复过了,但我们可以利用系统的默认口令结合1day进行利用 如若依存在默认口令 `admin/admin123` ![image-20231128173913383](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-77bb328d5e6fbb8e18f68276032b930b9794647b.png) 进入后台就可以通过计划任务或反序列化执行命令 ![image-20231128174037559](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-9af0e7591f04c2007b7ebfb7c3b43de8bdffa48b.png) 很多时候我们碰到OA系统,拿OA漏洞检测工具扫一下没漏洞就放弃了,其实像这种OA系统还可能会存在默认口令的问题 > # 默认口令 > > 系统管理员:system/system > 集团管理员(A8-v5集团版) group-admin/123456 > 单位管理员(A8-V5企业版) admin1/admin123456 > 审计管理员(所有版本) audit-admin/seeyon123456 ![image-20231108142849667](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-012059e790d42649025c9f893179b9ef9fa1fa0b.png) 前台使用账号密码有时候不能登录,可发送下面数据包获取cookie POST /seeyon/rest/authentication/ucpcLogin HTTP/1.1 Host: User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101 Firefox/78.0 Content-Length: 71 Content-Type: application/x-www-form-urlencoded Accept-Encoding: gzip UserAgentFrom=xx&login\_username=audit-admin&login\_password=seeyon123456 获取cookie之后就可以使用补丁较新的后台洞进行深入利用,这次使用copyfile这个后台洞 但实战后发现这个漏洞存在一些坑点,写入webshell时候报错了 POST /seeyon/ajax.do?method=ajaxAction&managerName=portalCssManager&rnd=111 HTTP/1.1 Accept: \*/\* Content-Type: application/x-www-form-urlencoded;charset=UTF-8 Content-Length: 70 Host: 192.168.91.17 Connection: Keep-Alive User-Agent: Apache-HttpClient/4.5.13 (Java/1.8.0\_321) Accept-Encoding: gzip,deflate arguments=%5B%22xxxxxx%22%5D&managerMethod=generateCssFileByCssStr ![image-20231108144907706](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-9fadc40e5f31b2a6ce8060969df3e6c4bea7d134.png) 本地开环境调试一下,fuzz发现是双引号所导致,可通过前面加`\`解决,还有其他的问题总结如下: - 写seeyon路径下会404,可以换写到root目录下 - webshell的双引号需要前面加入反斜杠,即`“`换成`\"` - 复制的文件名不能与之前的相同,否则会复制失败 - `//`后需要进行换行 经过一首歌的时间,最终成功getshell ![image-20231108144745332](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-32ff22bea4baf63ff56bcf8e1d48d602985f78b1.png) 同样,X微OA的默认账号密码有 `sysadmin/1` `sysadmin/Weaver@2001`等等 ![image-20231108145625641](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-dfbe4a70cc47f01017c347dfad24bda014895e73.png) ### 差点擦肩而过的shiro漏洞 #### 被动扫描识别shiro指纹 使用`afrog`、`Wappalyzer`等指纹识别器有时候无法直接识别shiro框架 ![image-20231205182048928](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-28acaf527f3c5e57fa016a8916a7cd3d5b83ad96.png) 抓包使用`hae`插件被动扫描识别网站特征 <https://github.com/gh0stkey/HaE> ![image-20231205181820379](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-6f94e59f4a0a72727903902f00991e5d5af07842.png) #### WAF拦截绕过 使用工具检测到key,但利用链爆破时候被拦截了,访问网站发现被拦截了 ![image-20231206155954218](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-d100e99dcf59b4bf33a88ff1f26afdd4ac8a081a.png) 换个ip继续冲,工具直接打不行,准备改用burp手动发包,但是问题又来了,挂着burp网站直接无法访问了 改用`yakit`能正常发包,猜测可能是`burp`特征被识别了,这时候想到最近看的github项目,决定尝试一下 <https://github.com/sleeyax/burp-awesome-tls> 未使用插件前,burp指纹特征被识别,抓包被拦截 ![image-20230926103809988](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-5107639e3cd3e0d8bbe88169fc1ad49ceb934413.png) 使用插件后正常抓包 ![image-20231206155620773](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-be472076a1da452df8bb425bf10131d0e00a6f3d.png) 最终通过 OPTIONS 请求方式 + 静态资源 uri 路径 + 缩短payload长度成功绕过WAF 缩短payload长度可使用 `4raIn`师傅的项目 <https://github.com/antiRookit/ShortPayload> 成功getshell ![image-20231206161014300](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-eb13cf2fa56b9c45ce8f8c5704fa14eecaad2227.png) #### Yso重编译拿下某企业shiro系统 某个目标资产搜集到一个shiro框架系统,通过工具探测到存在默认密钥 `kPH+bIxk5D2deZiIxcaaaA==` ![image-20231201152530229](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-733bc633d76491867c0e3426e7f652f965059f67.png) 存在JRMP利用方式,但JRMP执行失败 ![image-20231201152802850](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-1a496f8bf85ad3358833075e356cbd7272822893.png) 可能原因:Yso自带的CB链版本和目标环境CB链版本不一致 ![image-20231201154231641](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-c6b997c1d269f4d12da5562684c6115046bc18e1.png) 用1.8.3重新进行编译 ![image-20231201155359541](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-c0ded8e7575e0713cdeba626fa7fd80a7745f3d7.png) 使用新的yso成功执行命令,另外防止其他队伍从目标得分还可以修改shiro默认key ![image-20231201164320072](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-2c1beed65ae4eacd41f6ddd91d1b0a8fcaf546b5.png) ### JS源代码抽丝剥茧从单点到逐个击破 #### fuzz未授权webpack接口 右键源代码——查看检索js——在后面添加.map curl -O [http://xx.xx.xx.xx/\\\*.js.map](http://xx.xx.xx.xx/%5C*.js.map) ![image-20230208155102503](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-48d6b1eddcfbf922c0cab689e01463f95770f5f4.png) 之后会下载一个js.map,使用`reverse-sourcemap`进行还原 npm install --global reverse-sourcemap reverse-sourcemap --output-dir 生成的目录 app.6804b239.js.map 可寻找各种未授权的接口进行进一步的利用![image-20230208155348698](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-42c79abf43b938f2547378c03f933dad6c937969.png) 使用脚本提取路径,提取后的结果可作为字典放到burp进行fuzz ![image-20231204091531846](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-f31e896bf761063c07e6c22abd53956375698b25.png) #### ueditor编辑器漏洞捡漏 查看源码,发现使用了ueditor组件 ![image-20231128165624453](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-ee91631ca876ab9efd6b1d73477cbd1d2cf20f44.png) 或者全局进行检索 ueditor,发现ueditor路径 ![image-20231130170430351](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-55f575ea11be96dee7198e56ad0fe2c3cfda2aeb.png) 构建表单上传 1.jpg?.aspx `invalidPattern.Replace` 处通过正则替换后成为 1.jpg.aspx,后经过 `GetExtension()`得到扩展名 aspx 最后返回处理后的木马路径 ![image-20231128163158480](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-d5d831d64ad5e15c6d34eafaec3674db5b39c613.png) #### 亚马逊S3存储桶接管 在js里翻找,发现网站背景图片来源于s3存储桶地址 ![image-20231130161308589](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-f93ffd25ade2181d60a79e2420bb122489dc491c.png) 访问该地址发现为 `NoSuchBucket` ,表示可以接管 ![image-20231130161423070](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-6b20132ec00c3a071126019da8b508e5695b473e.png) 亚马逊云注册相应的存储桶,填入相应的名称和区域即可,接管后再次访问会变为 `UnauthorizedAccess` ![image-20231130161414612](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-b3f726a9c0173a34725310e001e5159e6bad6326.png) ### 从任意文件读取到部署war包getshell ![image-20231111171659613](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-e05a3e166e5e3c1ccdd9fd5f36006ae054f2dfdb.png) #### 框架识别 根据返回的 `rememberme` 判断为shiro框架 ![image-20231111170059912](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-54c4a19e6f44cf68dc0d78460a48957cffce9929.png) 直接拿工具打一波发现找不到密钥,正常正常,毕竟现在公网的shiro经过多轮hw基本也绝迹了 ![image-20231114151122460](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-28ffa0ed61f3774d55fcf27c387d68e0498fffb1.png) #### 挖掘注释接口 问题不大,尝试从系统其他方面入手,从js里全局搜索 `download` `upload`这些字段,可能存在任意文件上传或读取漏洞 > 通常开发人员为了省事,可能会直接把前端功能代码注释掉,而不把相应后端接口删除,这时候就会给我们留下可乘之机 像这里我们通过检索`download`,发现一个被注释的下载接口,拼接路径尝试进行任意文件读取 ![image-20231111154938909](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-a42cdcd7401d0575e470f35dfd37f4d0e14826c6.png) #### shiro权限绕过 拼接路径后访问发现会重定向到首页,这时候开始怀疑漏洞是否存在,但转念一想可能是权限问题 这时候想到shiro框架有个容易被忽略的点,那就是权限绕过 shiro权限绕过分析 <https://xz.aliyun.com/t/12643> > 直接拼接会重定向到首页 > resources/js/xxxxxx/downloadFile?url=/../../../../etc/passwd > > /..;/可绕过 > resources/js/xxxxxx/..;/../../downloadFile?url=/../../../../etc/passwd 通过`/..;/`成功读取主机文件 ![image-20231205180304934](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-90d37f3be022deddf00d05f1ffa905e94b434322.png) 能读取文件那肯定是不够的,我们目标是getshell,尝试读数据库密码,但扫描端口发现未对外开放 这时候查看扫描结果发现8080端口是开放的,直接读取`/conf/tomcat-users.xml`文件,获取tomcat的密码 ![image-20231111162242162](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-54aacf144b454a42f7a16611172523e3b00330f0.png) 使用获取的账号密码登录,部署war包成功getshell ![image-20231114153922042](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-7071c141a5552e8353a30ef8816a2c7ea5a21b17.png) ![image-20231114154106436](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-d432a53742dcf035847766772d0c41db4763142c.png) ### 从旁站获取源码到任意文件上传 #### 提取网站特征 - 查看网站特定js、开发厂商信息,如 `技术支持XXXX` `XXX公司` - 通过fofa、hunter测绘平台寻找旁站 ![image-20231128155643703](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-1b5e17ac3465cd87e6cb16a3ed326b874b7d3cfc.png) #### 旁站备份文件扫描 导出同cms站点列表,扫描旁站备份文件 ![image-20231116142355826](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-1a0af85e94965a141049bb58b12a5e7f5bd1fadd.png) #### 云盘搜索泄露源码 我只能说,凌风云是个好东西 ![image-20231128165334694](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-139d5abd25f778638b02282f7215cf4cb793559d.png) #### 代码审计 - 获取源码后我们优先挖掘任意文件上传这类能getshell的漏洞 - 查看 `web.xml` 搜索`.SaveAs` `upload`查找可利用的点,像下面这个代码,我们通过检索发现两处疑似上传的接口 ![image-20231128155232535](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-03bfd4d5e5068a09a998ca00e1d5354f080f6f97.png) 跟进 `PreviewImageUploadServlet.class` ![image-20231206170233562](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-7608a4bc31670bf102e27d2c0b695bf736848f03.png) 定义保存文件的路径,默认为 `/img/faces`,如果请求中包含名为 `path` 的参数,则将保存路径设置为该参数的值 创建一个 `MultipartRequestParser` 实例,用于解析请求,并将结果存储在 `PreviewImageInfo` 对象中 PreviewImageInfo info = (PreviewImageInfo)parser.parse(request, "com.chinasofti.ordersys.servlets.common.PreviewImageInfo"); 跟进 `PreviewImageInfo.class` ,没有进行过滤,因此我们可以构建表单直接上传 ![image-20231130154855014](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-1cf4eae2f3ff23ea50c2102d7d57a2d28c09d867.png) ![image-20231130155948868](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-d175ec3a44f5773b116b5a46e05b603ee65ac382.png) ### 某访客系统从actuator到百万数据泄露 查看burp历史记录发现系统会向后端请求`/gateway`接⼝ ![image-20231201172834700](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-9a31d722c5fc7c5d1410d1fe84ca7ce5c9af599e.png) 拼接路径进行目录扫描发现⼀堆`actuator`端点,使用最近新出的几个漏洞均没打成功 ![](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-1b2836a1176c04da7ae7f450084753eeadf586b1.png) #### heapdump泄露 尝试从其他地方入手,发现存在 `heapdump` 泄露,使用工具查看泄露了些什么内容 <https://github.com/whwlsfb/JDumpSpide> 发现一些账号密码,但都是在内网无法直接利用 ![image-20231201173329253](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-36db1c51df6db2d89bf2af4a6258fa944f270bd2.png) 继续从中寻找机会,把里面的接口和url拼接路径到Burp批量跑⼀下,这时候发现一个可以的注册接口,感觉有戏! ![image-20231201174012959](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-d9fe67da1e80be3928b7a0aa7075860b4011759f.png) #### 创建用户获取token凭证 使用该接口创建用户 ![image-20231201174057840](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-4ef6cf4d4eb2504a7e2541fae2d1711645336b05.png) 但创建后的用户不能直接登录到系统,但可以通过新增的账密获取token凭证 ![image-20231201174330630](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-208be86aa9956cacced215bcc07668943e00b234.png) 可结合接口文档使用token凭证调用接口查询,获取大量用户敏感数据 ![image-20231201174614299](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-c4b219c14cd8462096368aaf769f3a41d0caf0de.png) ### 从nacos任意用户注册到接管企业云 HVV中最爱的nacos,全身上下都是价值连城的宝贝,关键是好找! 指纹特征 `HTTP Status 404 – Not Found 以及 8848端口` ![image-20231206161755852](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-9b46abee85bd96de1b9cae727c76678cad8dfc3f.png) 直接访问404,拼接 `nacos` 路径可以看到目标系统 ![image-20231201175611372](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-69331ab5f9f2a5193fc1c1cecea0642935e453aa.png) #### 漏洞检测 探测漏洞可使用下面脚本 [https://github.com/Pizz33/nacos\_vul](https://github.com/Pizz33/nacos_vul) ![image-20231205173718614](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-9d282587d2a3eb3e93a15cbd8e2309571e495c9d.png) nacos任意用户注册,关键在于登入后台查看配置文件里的账密信息 ![image-20231205174306564](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-c825ef717f37e465d9371a1531d92b7be73d981d.png) ![image-20231206170430641](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-41dee83ad36abed10a7a78dccd83e5785e9a82e8.png) 获取`accesskeyid`和`accesskeysecrets`后可使用工具接管云 推荐工具 <https://github.com/teamssix/cf/releases> <https://github.com/mrknow001/aliyun-accesskey-Tools/releases/tag/v1.3> ![image-20231205174631148](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-431031a5d23b9e51da778f649b130000010b71c1.png) ![image-20231201175514157](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-b4a9c21b8e3f9dabc31a87dc96c4a3f2be9f3dba.png) 获取到云数据库的账密,直接navicat连接 ![image-20231205175752012](https://shs3.b.qianxin.com/attack_forum/2023/12/attach-31e3de08121050b44b6bcb4904632a208adf8c6c.png)
发表于 2023-12-15 09:00:01
阅读 ( 8956 )
分类:
WEB安全
13 推荐
收藏
7 条评论
Kl
2023-12-15 16:02
学习了
请先
登录
后评论
Lserein
2023-12-18 10:14
tql
请先
登录
后评论
秋思
2023-12-18 17:54
6
请先
登录
后评论
ALI
2023-12-21 10:27
tql
请先
登录
后评论
LiAoRJ
2024-01-01 15:03
牛
请先
登录
后评论
Nexnull
2024-02-06 10:02
shiro绕过那个真的很容易遗忘,挺好用
请先
登录
后评论
用户700817805
2024-03-26 14:48
TQL
请先
登录
后评论
请先
登录
后评论
hyyrent
红队摸鱼选手
7 篇文章
×
发送私信
请先
登录
后发送私信
×
举报此文章
垃圾广告信息:
广告、推广、测试等内容
违规内容:
色情、暴力、血腥、敏感信息等内容
不友善内容:
人身攻击、挑衅辱骂、恶意行为
其他原因:
请补充说明
举报原因:
×
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!