Вернуться   RDot > Аспекты НСД > Целевые системы/Target systems

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.08.2010, 02:39   #1
tipsy
 
Аватар для tipsy
 
Регистрация: 11.07.2010
Сообщений: 415
Репутация: 311
По умолчанию Захват локальных исходящих соединений в OpenSSH

Предположим, вы получили доступ к ssh аккаунту mike@firewall.com

Mike - системный администратор в крупной сети.
Так как прямого доступа к офисным серверам из дома у него нет, он логинится на mike@firewall.com, и оттуда выполняет команду:
Код:
ssh root@coolserver.intranet
У вас есть возможность нахаляву проехаться на его соединении прямо в уютный рутовый шелл на coolserver.intranet.
Для этого добавляем Майку в ~/.ssh/config следующее:
Код:
Host *
ControlMaster auto
ControlPath ~/.ssh/master-%r@%h:%p
Прибиваем его ssh соединение и ждём, пока Майк перелогинится на coolserver.intranet.
в каталоге .ssh появится файл(сокет) формата master-root@coolserver.intranet:22
Выполняем команду
Код:
$ ssh root@coolserver.intranet -o ControlPath=.ssh/master-root@coolserver.intranet:22
и вуаля - мы рут, без запроса пароля и какой-либо авторизации.
Ваша сессия инжектится внутрь уже существующего соединения.
Не мешкайте, потому что в момент, когда Майк завершит свою сессию - вас тоже выкинет.
Всё это происходит совершенно незаметно для самого пользователя.

У описанной выше задачи есть множество решений. Раньше я добавлял в .bash_profile "alias ssh=/tmp/my_cool_ssh", но это не всегда работает, и вариант с ControlMaster проще.


Кстати, обладая правами рута, можно захватывать исходящие соединения любых локальных пользователей к внешним ssh серверам, если вы прописали им эту опцию в ~/.ssh/config (либо вставили её в системный конфиг)
Это может быть полезно, если пропатчить ssh по каким-либо причинам нельзя.

Фрагмент мануала:
Цитата:
ControlMaster
Enables the sharing of multiple sessions over a single network
connection. When set to ``yes'', ssh(1) will listen for
connections on a control socket specified using the ControlPath
argument. Additional sessions can connect to this socket using
the same ControlPath with ControlMaster set to ``no'' (the
default). These sessions will try to reuse the master instance's
network connection rather than initiating new ones, but will fall
back to connecting normally if the control socket does not exist,
or is not listening.
tipsy вне форума   Ответить с цитированием
Старый 13.01.2011, 03:24   #2
tex
 
Регистрация: 26.12.2010
Сообщений: 135
Репутация: 41
По умолчанию

Намного выгоднее будет засниферить его пароль от ссш, так что этот способ может пригодится только уж совсем в спартанских условиях =)
tex вне форума   Ответить с цитированием
Старый 13.01.2011, 15:01   #3
tipsy
 
Аватар для tipsy
 
Регистрация: 11.07.2010
Сообщений: 415
Репутация: 311
По умолчанию

А как его заснифферить, если рута нет?
Толкового фэйка на ssh лично мне не попадалось.
tipsy вне форума   Ответить с цитированием
Старый 13.01.2011, 15:14   #4
tex
 
Регистрация: 26.12.2010
Сообщений: 135
Репутация: 41
По умолчанию

Придумать можно множество вариантов, как например : протроянить ssh и в .profile поставить алиас на протрояненный бинарник, рут не нужен.
tex вне форума   Ответить с цитированием
Старый 13.01.2011, 15:40   #5
tipsy
 
Аватар для tipsy
 
Регистрация: 11.07.2010
Сообщений: 415
Репутация: 311
По умолчанию

Отличный вариант, вроде бы на поверхности, но шаблонное мышление не давало его увидеть

Вариант в первом посте конечно жёсткий в том плане, что нужно в реальном времени отлавливать исходящий коннект от администратора и залезать в его сессию (ssh изредка выдаёт при этом ошибки в master-окно, закономерность не отловил), но есть сценарии, когда других простых вариантов нет - например, если авторизация организована по защищённым паролем id_rsa ключам или Kerberos тикетам.
tipsy вне форума   Ответить с цитированием
Старый 13.01.2011, 16:31   #6
tex
 
Регистрация: 26.12.2010
Сообщений: 135
Репутация: 41
По умолчанию

Цитата:
Сообщение от tipsy Посмотреть сообщение
но есть сценарии, когда других простых вариантов нет - например, если авторизация организована по защищённым паролем id_rsa ключам или Kerberos тикетам.
Мы все надеюсь понимаем, что имеем возможность подставить админу что угодно наше- в том числе и протрояненную командную оболочку.
tex вне форума   Ответить с цитированием
Старый 13.01.2011, 16:49   #7
tipsy
 
Аватар для tipsy
 
Регистрация: 11.07.2010
Сообщений: 415
Репутация: 311
По умолчанию

Понимаем, но готового кода не имеем.
Если у тебя был опыт с кейлоггерами, отпишись, буду благодарен.
tipsy вне форума   Ответить с цитированием
Старый 13.01.2011, 18:30   #8
naqnaq
 
Аватар для naqnaq
 
Регистрация: 13.07.2010
Сообщений: 10
Репутация: 2
По умолчанию

прога с похожим функционалом уже была предствалена в паблике на Blackhat USA и DEFCON.
Если не изменяет память называлась она metlstorms_sshjack...
__________________
in hack we trust
naqnaq вне форума   Ответить с цитированием
Старый 13.01.2011, 22:37   #9
hard
Banned
 
Регистрация: 06.07.2010
Сообщений: 50
Репутация: 1
По умолчанию

имхо слишком палевный и геморный способ. Лучше троянить сам ssh.
hard вне форума   Ответить с цитированием
Старый 13.01.2011, 23:43   #10
tex
 
Регистрация: 26.12.2010
Сообщений: 135
Репутация: 41
По умолчанию

Точно подобный софт не использовал но так найти возможно можно что-то..

А metlstorms_sshjack точно - внедряется в процесс ssh и дает доступ к оболочке.
tex вне форума   Ответить с цитированием
Ответ

Метки
ssh

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход



Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd. Перевод: zCarot