Кейлоггер для терминала Linux с помощью Shelljack

Кейлоггер терминал Linux Shelljack

Shelljack — это ути­лита, которая работа­ет в прос­транс­тве поль­зовате­ля и с помощью ptrace сни­фает тер­минал и поз­воля­ет пересы­лать куда‑нибудь получен­ные дан­ные. Эта­кий кей­лог­гер, который уме­ет зах­ватывать ввод в терминале.

Еще по теме: Простой кейлоггер на Python

Кейлоггер для терминала Linux с помощью Shelljack

При­мене­ние такому инс­тру­мен­ту есть не толь­ко в целевых ата­ках, но и в мир­ной пов­седнев­ной жиз­ни. Допус­тим, вы вынуж­дены пре­дос­тавить кому‑то дос­туп к обо­лоч­ке на сер­вере, который вы адми­нис­три­руете. Но как про­кон­тро­лиро­вать про­исхо­дящее там?

Мож­но прос­то запус­тить Shelljack и нас­тро­ить его пересы­лать себе все, что тво­рит­ся в тер­минале, в реаль­ном вре­мени, и, если что‑то идет не так, вы сра­зу узна­ете, что имен­но сде­лал поль­зователь, и смо­жете вов­ремя дроп­нуть сес­сию.

Статья в образовательных целях, для обучения пентестеров (этичных хакеров). Ни редакция spy-soft.net, ни автор не несут ответственности за ваши действия.

Обыч­но подоб­ные защит­ные при­колы реали­зуют с помощью фун­кций ауди­та, политик SELinux или даже спе­циаль­ного модуля в ядре, но эта ути­лита поз­воля­ет вооб­ще не лезть в ядро и сде­лать все в поль­зователь­ском прос­транс­тве. Вам не пот­ребу­ется даже root!

Но не думайте, что смо­жете вот так вот прос­то сле­дить за любыми поль­зовате­лями. Мало того, на Ubuntu, начиная с еще допотоп­ной вер­сии 10.10, при­менен спе­циаль­ный патч, который огра­ничи­вает воз­можнос­ти ptrace, и имен­но в Ubuntu работа этой ути­литы все же пот­ребу­ет прав root. Впро­чем, если вы админ, то это вряд ли вызовет какие‑то проб­лемы.

Го­тово­го бинар­ника у Shelljack нет. Для сбор­ки пот­ребу­ется уста­новить зависи­мос­ти ptrace_do и ctty, но они тоже собира­ются без малей­ших зат­рудне­ний:

Пос­ле это­го дос­таточ­но любым спо­собом под­смот­реть PID про­цес­са эму­лято­ра тер­минала, за которым нуж­но сле­дить. Коман­да запус­ка в общем слу­чае такая:

  • -f ука­зыва­ет на файл для хра­нения логов.
  • -n поз­воля­ет переда­вать перех­вачен­ные дан­ные в реаль­ном вре­мени по сети на ука­зан­ный IP-адрес и порт.
  • PID — это, соот­ветс­твен­но, иден­тифика­тор про­цес­са‑жер­твы.

Подробнее см. официальный репозиторий на GitHub.

ПОЛЕЗНЫЕ ССЫЛКИ:

ВКонтакте
OK
Telegram
WhatsApp
Viber

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *