NFsec Logo

Lepszy reverse shell z rlwrap i nie tylko

10/03/2021 w Administracja Brak komentarzy.  (artykuł nr 775, ilość słów: 324)

r

lWrap jest opakowaniem biblioteki readline umożliwiającym edycję danych wejściowych z klawiatury dla dowolnego polecenia; zapewnia również mechanizm historii, który jest bardzo przydatny do poprawiania lub ponownego wykorzystywania poleceń. Program ten można wykorzystać wszędzie tam, gdzie interfejs wiersza poleceń danego narzędzia nie umożliwia takich czynności. W dodatku, jeśli posiadamy wolne połączenia z daną siecią, gdzie każde naciśnięcie klawisza jest przesyłane jedno po drugim w zauważalnej pauzie, a każda literówka staje się o wiele bardziej frustrująca i czasochłonna dla nas – rlwrap również sprawdza się w tej sytuacji, ponieważ buforuje wszystkie pojedyncze naciśnięcia klawiszy do momentu naciśnięcia klawisza [Enter], a następnie przesyła jednocześnie całą wprowadzoną linię tekstu. To znacznie ułatwia pisanie z dużą prędkością i poprawianie literówek.

Przykład. Jeśli odpalimy netcat i zaczniemy wpisywać jakieś polecenia i odruchowo nauczeni z powłoki bash będziemy chcieli przewinąć kursorem historię to możemy się rozczarować:

agresor@darkstar:~$ nc -vnlp 60669
Listening on [0.0.0.0] (family 0, port 60669)
uname -a
ls -al
cat /etc/passwd
^[[A^[[A^[[A^[[B

Uruchamiając to samo polecenie, za pomocą rlwrap zyskamy cały zestaw skrótów Ctrl+ ... oraz możliwość swobodnego poruszania się pomiędzy poleceniami:

apt install -y rlwrap
agresor@darkstar:~$ rlwrap nc -vnlp 60669
Listening on [0.0.0.0] (family 0, port 60669)
uname -a
ls -al
cat /etc/passwd
(reverse-i-search)`u': uname -a

W powyższym przykładzie zamiast kursorów została użyta funkcja przeszukiwania historii poleceń za pomocą Ctrl+R. Możemy nawet włączyć sobie pseudo autouzupełnianie – gdy uruchomimy narzędzie z parametrem --remember wszystkie słowa z standardowego wejścia i wyjścia zostaną dodane do listy uzupełnień:

agresor@stardust:~$ rlwrap -r nc -vnlp 60669
Listening on [0.0.0.0] (family 0, port 60669)
netstat -naplet | grep 6[TAB]
netstat -naplet | grep 60669

Narzędziem tym możemy przykryć bardzo wiele innych programów, które nie oferują swobody poruszania się po wydawanych poleceniach. Warto zapoznać się z jego możliwościami, ponieważ pisanie własnych filtrów, logowanie historii poleceń, przepuszczanie danych wyjściowych przez inne narzędzia – to tylko kilka z wielu możliwości tego programu.

Więcej informacji: man rlwrap, rlwrap na YT

Kategorie K a t e g o r i e : Administracja

Tagi T a g i : , , , ,

Komentowanie tego wpisu jest zablokowane.