PDA

Просмотр полной версии : [reptyr] востановление утраченной PTY (SSH) сессии


swagcat228
17.02.2020, 05:46
GitHub - nelhage/reptyr: Reparent a running program to a new terminal

Reparent a running program to a new terminal. Contribute to nelhage/reptyr development by creating an account on GitHub.

github.com


Маленькая программулина, которая может очень выручить в том случае, если вы, к примеру, работали с вашим сервером по SSH, и отошли выпить кофе, а когда пришли - сессия прервалась из-за нестабильного интернет соединения, к примеру. И вам очень нужно востановить ее, там же была ваша работа с метасплоит или почти написанный конфиг сервера nginix.

reptyr - инструмендля для "пере-PTY-ивания" программ.

reptyr это утилита для захвата процесса выполняющейся на фоне (либо в другой сессии PTY) программы и переноса его в теущий "терминал". Запустили иисполняемый процесс через SSH, но по каким-то причинам утратили сессию? Не хотите убивать процесс и терять все результаты его работы? Не беда, запустите новую сессию, и используйте reptyr что бы захватить старый процесс, после чего можете закрыть старую, уже пустую (и подвисшую), сессию SSH.

ЮЗАНИЕ


reptyr PID


"reptyr PID" захватит процесс с указанным PID и перенесет его в текущий сеанс.
После захвата процесс сможет писать в консоль и читать из нее, включая ^C и ^Z. (к сожалению если вы свернули процесс ^Z в старом сеансе то вам придется манипулировать командами "bg" или "fg". Это не возможно исправить без модификаций оболочки вашего терминала.)

Выход есть. Открываем новое соединение SSH и пишем:

Bash:



root@server:~/reptyr
# ps -a
PID TTY TIME CMD
4338
pts/4 00:00:00 reptyr
7393
pts/6 00:00:00
ps
28396
pts/2 00:00:00 msfconsole
28401
pts/2 00:00:33 ruby


копируем пид процесса и пишем:

Bash:



root@server:~/reptyr
# reptyr -T 28396
ls
[
*
]
exec:
ls
1
.png Amass cobaltstrike.store JBXFYaOV.wav nessus880.deb pm.mp3 qfLBPSBI.wav Telegram-Tools wft XUlTxKIk.wav
admin-panel-finder arachni config nais2.txt password_field.png powerfuzzer reptyr Terminal.Manager.Test.application wordpress-exploit-framework xxxa
AhMyth-Android-RAT BruteX go nais.txt pentest pwd.txt stash.sqlite tgcrypto WPSeku
msf5 exploit
(
multi/handler
)
>
exploit -J -z -j
[
*
]
Exploit running as background job
2
.
[
*
]
Exploit completed, but no session was created.
[
-
]
Handler failed to
bind
to
0.0
.0.0:4444:- -
[
-
]
Handler failed to
bind
to
0.0
.0.0:4444:- -
[
-
]
Exploit failed
[
bad-config
]
: Rex::BindFailed The address is already
in
use or unavailable:
(
0.0
.0.0:4444
)
.


как вы видите -

The address is already in use

то есть метасплоит продолжает свою работу и ждет отклик от стейджера.

f22
17.02.2020, 19:39
Для статуса статьи хотя бы переведи инфу с первой страницы на github'e, а то получается какая-то заметка/инструкция...

swagcat228
17.02.2020, 19:46
f22 сказал(а):

Для статуса статьи хотя бы переведи инфу с первой страницы на github'e, а то получается какая-то заметка/инструкция...


Окей. просто не вижу смысла копировать содержимое с РИДМИ на гитхабе. Можно нажать на ссылку)

f22
17.02.2020, 19:49
swagcat228 сказал(а):

Окей. просто не вижу смысла копировать содержимое с РИДМИ на гитхабе. Можно нажать на ссылку)


Нет, я не про Readme, а про

И всё-таки лучше перевести , а не просто копировать.

swagcat228
17.02.2020, 21:45
f22 сказал(а):

Нет, я не про Readme, а про

И всё-таки лучше перевести , а не просто копировать.


пожалуйста



f22 сказал(а):

Для статуса статьи хотя бы


Кстати, на счет статуса статьи - я считаю, что статья - это когда человек сам провел какой-то анализ, каую-то работу, добился каких-то результатов - и делится с аудиторией своими исследованиями.

Но на форуме же есть раздел "SOFT" - который предназначен для софта.
Ладно, если речь идет о таких вещах как metasploit или msfvenom - то тут можно сделать статью про софт.
Но если речь идет о скрипте с десятком параметров и простым предназначением - то зачем делать статью?
Тут не над чем проводить глубинный анализ. Это и есть "заметка".

имхо.