nmap スキャンを使用
80 ポートが http で開いていることを発見
ウェブページを開く
何もないことを発見
F12 を開いて、ログインのようなアドレスがあるのを見た
開いてみると、本当に。。
試してみる
admin'# 無効
ゲストアカウントでログイン
成功;
ファイルアップロードを試みると、admin アカウントが必要であることがわかった
Account で情報を発見し、上部のアドレスバーに ID=2 があることを発見
id を 1 に変更すると、admin に関連する情報が表示される
一番探して、F12 で cookie を見て、これを利用して情報を admin の情報に変更することができる
再度ファイルアップロードを訪問し、通過した
シェルを生成し、IP とポートを自分のリスニングポートに変更し、アップロードする
次に、以前ファイルで設定したポートをリスニングする
gobuster を使用してアドレスをブルートフォースする
ここでシェルを取得したが、このシェル
python3 で擬似端末を開く
/etc/passwd ファイルで情報を確認
一般ユーザーのキーを取得
www-data@oopsie:/home/robert$ cat user.txt
cat user.txt
f2c74ee8db7983851ab2a96a44eb7981
このディレクトリの db.php でユーザーパスワードを発見
www-data@oopsie:/var/www/html/cdn-cgi/login$ cat db.php
cat db.php
$conn = mysqli_connect('localhost','robert','M3g4C0rpUs3r!','garage');
?>
robert アカウントに切り替え
export PATH=/tmp:$PATH ///tmp ディレクトリを環境変数に設定
cd /tmp/ ///tmp ディレクトリに移動
echo '/bin/sh' > cat // 悪意のある cat コマンドを構築
chmod +x cat // 実行権限を付与
上記のコマンドを使用して、ROOT 権限を取得
環境変数を変更したため、呼び出された cat は悪意のあるもので、ファイルを表示できない。ここでは tac コマンドを使用して表示する。tac は行を逆順に出力し、一文の各文字を逆に出力するわけではないので、ここで直接 tac で表示すればよい。
==================================================