Full TTYs
Full TTY
Beachten Sie, dass die Shell, die Sie in der SHELL
-Variablen festlegen, in /etc/shells aufgelistet sein muss oder Der Wert für die SHELL-Variable wurde in der /etc/shells-Datei nicht gefunden. Dieser Vorfall wurde gemeldet
. Beachten Sie auch, dass die nächsten Snippets nur in bash funktionieren. Wenn Sie sich in einer zsh befinden, wechseln Sie zu bash, bevor Sie die Shell erhalten, indem Sie bash
ausführen.
Python
Sie können die Anzahl der Zeilen und Spalten mit stty -a
abrufen.
script
socat
Spawn shells
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
Eine bequeme Möglichkeit für interaktiven Shell-Zugriff, sowie Dateiübertragungen und Portweiterleitungen, ist das Ablegen des statisch verlinkten ssh-Servers ReverseSSH auf dem Ziel.
Unten ist ein Beispiel für x86
mit upx-komprimierten Binärdateien. Für andere Binärdateien, siehe die Release-Seite.
Bereiten Sie sich lokal vor, um die ssh-Portweiterleitungsanfrage abzufangen:
(2a) Linux-Ziel:
(2b) Windows 10 Ziel (für frühere Versionen, siehe Projekt-Readme):
Wenn die ReverseSSH-Portweiterleitungsanfrage erfolgreich war, sollten Sie sich jetzt mit dem Standardpasswort
letmeinbrudipls
im Kontext des Benutzers, derreverse-ssh(.exe)
ausführt, anmelden können:
Penelope
Penelope (https://github.com/brightio/penelope) aktualisiert automatisch Linux-Reverse-Shells auf TTY, verwaltet die Terminalgröße, protokolliert alles und vieles mehr. Außerdem bietet es readline-Unterstützung für Windows-Shells.
Kein TTY
Wenn Sie aus irgendeinem Grund kein vollständiges TTY erhalten können, können Sie dennoch mit Programmen interagieren, die Benutzereingaben erwarten. Im folgenden Beispiel wird das Passwort an sudo
übergeben, um eine Datei zu lesen:
Last updated