Full TTYs
フルTTY
SHELL
変数に設定するシェルは、必ず_/etc/shells_にリストされている必要があります。そうでない場合は、「SHELL変数の値が/etc/shellsファイルに見つかりませんでした。このインシデントは報告されました」と表示されます。また、次のスニペットはbashでのみ動作することに注意してください。zshにいる場合は、bash
を実行してbashに切り替えてからシェルを取得してください。
Python
stty -a
を実行することで、行と列の数を取得できます。
スクリプト
socat
シェルを生成する
python -c 'import pty; pty.spawn("/bin/sh")'
echo os.system('/bin/bash')
/bin/sh -i
script -qc /bin/bash /dev/null
perl -e 'exec "/bin/sh";'
perl:
exec "/bin/sh";
ruby:
exec "/bin/sh"
lua:
os.execute('/bin/sh')
IRB:
exec "/bin/sh"
vi:
:!bash
vi:
:set shell=/bin/bash:shell
nmap:
!sh
ReverseSSH
インタラクティブシェルアクセス、およびファイル転送とポートフォワーディングの便利な方法は、ターゲットに静的リンクされたsshサーバーReverseSSHを配置することです。
以下は、upx圧縮バイナリを使用したx86
の例です。他のバイナリについては、リリースページを確認してください。
sshポートフォワーディングリクエストをキャッチするためにローカルで準備します:
(2a) Linuxターゲット:
(2b) Windows 10 ターゲット(以前のバージョンについては、プロジェクトのリードミーを確認してください):
ReverseSSHポートフォワーディングリクエストが成功した場合、
reverse-ssh(.exe)
を実行しているユーザーのコンテキストで、デフォルトのパスワードletmeinbrudipls
を使用してログインできるはずです:
No TTY
もし何らかの理由でフルTTYを取得できない場合でも、ユーザー入力を期待するプログラムと対話することができます。次の例では、パスワードがsudo
に渡されてファイルが読み取られます:
Last updated