免责声明:由于传播、利用本文所发布的而造成的任何直接或者间接的后果及损失,均由使用者本人承担

前言

最近来北京出差搞攻击队

拿到目标的首个 shell 后准备搞内网,遇上edr拼尽全力无法战胜最终变成深信服大人的形状

不知道从哪雇的点鼠标的猴子,为了写这篇文章,我甚至从走了一遍流程来截图,依然能顺利getshell

Start

权限获取:从未授权到Getshell

​ 也是伴随着不少时间的信息搜集找到了这个站

image-20250610145003916

​ 突破口是在f12从js下手

image-20250610145637518

​ 大概简单看了一眼,app.js价值比较大,很多逻辑的实现都写在其中

​ 然后把它下载了下来,用之前写的js匹配工具匹配出了一些路径

image-20250610150344522

​ 把路径放到字典里去burp探测了一手,看看有无未授权之类的

image-20250610151315206

工具基于正则去匹配,噪声肯定是很大的,需要考虑到一些前置路由和变量,然后又根据这些东西去搜具体代码实现 所以这些404也没有去追究

最终根据名字,留意到了/ajaxUploadFile

image-20250610151532970

果然有一个Xa变量作为了前置路径

image-20250610151637210

发现了Xa值为/1api

image-20250610151728211

/1api拼接到/ajaxUploadFile前面去访问

image-20250610151926918

提示需要验证码,没有跟其他路径一样发生登录验证跳转这种

并且呢响应了Access-Control-Allow-Origin: *跨域限制也可以忽略

接下来就需要构思上传表单,因为要保证提交的表单字段与后端接口预期一致,再考虑验证码校验

我的思路:

  1. 找目标业务上传功能点
  2. 从静态资源中反推

第一种:有了表单一切都好说,只要获取到了上传表单,其中的 name 属性基本上已经是服务端接受的字段名,但这个首页需要登录才能访问业务,尝试了能想到的方法均不可,所以放弃

突破点在第二种,有些开发会通过js构建上传结构,这就不得不提到FormData对象,笔者学过一段时间js开发 常用这个搭配XMLHttpRequestfetch处理文件上传

最终搜.append(找到了处理表单的具体实现

image-20250610174157092

先实现,直接复制粘贴给GPT,让它分析并生成一个文件上传的页面

image-20250610205501361

ai给出了上传的html

image-20250610210222438

上传抓包后发现校验验证码

image-20250610210334613

运气好+神人开发助力,往后翻又找到了上传逻辑

image-20250610210540502

前端校验文件后缀,外加硬编码,猜测这个filekey就是验证码

然后把之前生成的上传文件的html 加上这一串再做测试

image-20250610210814398

OK 图片可以成功上传

image-20250610211205649

这个时候并没有着急传webshell,首要目的是找到文件存储的位置,我能不能直接访问到

因为前面js信息搜集工具扫到了这个地址

image-20250610213422958

拼接尝试之后确认图片存储路径

image-20250610213911473

还好不是OSS,或者说分离存储那种 不然寄了

后面依次测试

  1. 图片内容不变,后缀改为jsp,验证是否有后缀检测 -> 成功

  2. 修改图片内容 添加java代码打印hello,判断目录是否解析jsp -> 成功

  3. 传一个接受参数当命令执行的jsp且混淆一下,不符合常见webshell,规避检测,看能否执行命令 -> 成功

    image-20250610215554874

  4. 上传webshell,冰蝎、几个免杀的webshell、要么无法上传,要么传上无法连接,最终哥斯拉马上传连接 -> 成功

image-20250610215836071

这里原本想的是打内存马,但是考虑到目标是jboss,我对jboss内存马并不了解

并且客户强调禁止做影响业务的操作,内存马的剔除有时会搞崩业务,就准备用webshell继续

内网渗透:“孤儿机”+EDR

依旧不出网这一块./,找不到出网协议这一块

先是看了查了下进程

image-20250611095153125

四个杀软 六百六十六

判断下不是云上环境

看了眼也没域,这种的话搞不了域渗透,很多姿势都废掉了

image-20250611102641665

直接上免杀mimikatz提凭据连RDP进去把杀软能退的退掉,翻一翻文件,webshell操作太慢动静太大,再传工具信息搜集

image-20250611102909896

得到ntlm

image-20250611103139079

得到明文

image-20250611103203188

文件上传的地方suo5代理传上去

image-20250611103726937

配置好隧道

image-20250611103927267

连接

image-20250611103957431

这个瞬间,先是加载了桌面,过了一会才出的这个验证,猜测应该是对行为的检测

后面找师傅问了下怎么把这个退掉,过程中没有截图,大概是提权删C:/Program Files/Sangfor/EDR/agent/bin/sfrdpverify.exe,或者加载驱动退掉,我对这一块也不太懂,试了几个方法和大佬给的exe后面统统失败

这条路堵死了

后面的想法是找找集群设备进行漏洞利用,这样也能拿下大把机器,前面有从其他业务注入拿到了不少账号密码

那就需要做信息搜集

先把所有可能通的网段找出来

image-20250611110528238

已知本机的ip段是192.168.196.1/24

image-20250611110853090

image-20250611110907267

还有224.0.0.1/24

再把netspy免杀下 传上去扫一下可达网段

最终也是找免杀大佬F_Dao免杀多次才上传成功

img

img

EDR再次发力,扫着扫着就会把进程关掉,导致最后只得到了两个网段

img

那目前就已知192.168.196.1/24192.168.10.1/24224.0.0.1/24这三个段

继续本地工具走代理去扫,不然用什么传什么动静太大,每一个都要免杀耗时耗力

image-20250611113318119

最后挂本地代理用了几个扫描工具,啥几把也扫不出来,就留了这一个fscan的截图

image-20250611115501103

这个时候需要禁ping扫描,因为socks5代理属于传输层,fscan默认先ping,ping走的icmp属于网络层,这样会导致不通

除了目标机器的网段没扫,这俩个网段均无任何发现

后面把工具免杀传到机器上

image-20250611153144611

这个时候有一个技巧,杀软有概率检测落地文件后缀,把二进制文件改成txt后缀,其实依然可以在cmd中运行

image-20250611153331046

这里在机器本地扫本机IP段,也是没啥重要的发现

其实这里做了很多操作,上了很多工具和命令,都没有截图 确实没什么有用的东西

image-20250611153551586

让浏览器走socks5代理后访问这几个url,跑了下指纹测了测业务, jboss漏洞跑了也没结果

image-20250611154224872

没截图

然后又搜集了一波信息

无任何有效发现,更别说堡垒机天擎vcenter什么的这种集群管理的业务了

img

img

可以看到连接也是空空如也,我已经想不到其他办法了

至于他不出网,可能是交换机做的映射,并且http icmp dns完全不通

后面翻到两个orcale数据库账号密码 以及 192.168.1这个c段

想着连数据库找首页的登录账号,但…

c段直接不通

外加这些注释掉了,猜测也是不用了,最后用这个数据库的账号密码碰撞了一下首页的登录 也是失败

image-20250611160859277

接着想上线cs,其实代理成功进去已经没上cs的必要了,当时想着破罐子破摔 插件全点一遍梭哈结束

因为目标不出网,所以用自己电脑当跳板:

我的电脑先反向连接上cs,再传一个正向连接的马到目标机运行,本机cs马走socks5代理,然后cs里面conncet去连接

img

做了免杀后成功落地并运行

image-20250611163317758

依旧连不上,猜测可能是端口白名单,换了几个常用端口 统统不行,大概率是edr的行为防护

如果没有edr 连上RDP或许还有更多可能

没有域 没有集群管理设备 没有其他网段 不出网 各大杀软,内网渗透就结束了

水坑收尾

这块是同事大佬实现的

image-20250611170208614

​ 等待有缘人

image-20250611165907429

截止项目结束都没有人上钩…

END

燃尽 这种内网环境不知道大家有什么思路