Skip to main content

Получение легитимного доступа

МетодыПолучение закреплениялегитимного доступа,доступа позволяющие закреплять- доступ к системе,системе небез вносяизменений в систему изменения,системы, используя существующие учетные данные и способы доступа к системе.

подхода:

подхода:

Плюсы Минусы
  • Наименее заметный для команды реагирования подход к закреплению доступа,заметный, так как в систему не вносится никаких изменений, которые можно было бы заметить.изменений.
  • Такой подход можетМожет предоставлять доступ достаточно долго, если инцидент с компрометациейкомпрометация системы не был обнаружен.
    обнаружена.

Минусы

  • Если инцидентПри компрометации сталобычно известен,меняют то самой очевидной из практик защиты становится изменение паролейпароли и ключейключи доступа к системе, что несет собой потерю доступа к системе для пентестера.доступа.
  • Лучше совмещать его с другими подходами, так как впри случаеобнаружении использования инвазивных методов закрепления,закрепления при их обнаружении, мы потеряемтеряется и данный способ закрепления.
  • Учетные данные могут быть изменены и без обнаружения факта компрометации системы по воле оператора,оператора обслуживающего систему.системы.

ПолучениеСпособы получения легитимного доступа к системе может быть достигнуто следующими практиками:системе:

  • Извлечение паролей и ключей из доступных файлов в ОС
  • Восстановление паролей из хешей
  • Подбор паролей методом перебора
  • Восстановление паролей и ключей из памяти процессов

Восстановление паролей из хэшей

JohnTheRipper 

$ sudo cp /etc/shadow /tmp/shadow
$ sudo unshadow /etc/passwd /tmp/shadow > /tmp/unshadowed
$ john /tmp/unshadowed

Hashcat

Поддерживает MD5, SHA1, SHA256, bcrypt и т.д. Пример взлома MD5: 

hashcat -m 0 -a 0 hash.txt /usr/share/wordlists/rockyou.txt

Параметры

-m 0алгоритм хеширования MD5
-a 0атака перебора
hash.txtфайл с хешами паролей
/usr/share/wordlists/rockyou.txtиспользуемый словарь для перебора паролей

Радужная таблица

Специальный вариант таблиц поиска для обращения криптографических хеш-функций, использующий механизм разумного компромисса между временем поиска по таблице и занимаемой памятью. Предварительно вычисляются радужные таблицы, которые затем используются для быстрого нахождения паролей, соответствующих хэшам. Подробнее тут.

Онлайн-сервисы

Подробнее

Подбор паролей методом перебора

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

Можно использовать nmap, patator или hydra, ... Лучше в виде портативных файлов для вашей версии ОС. Пример для patator:

patator ssh_login host=192.168.0.1 user=admin password=FILE0 0=/путь/к/файлу_с_паролями.txt -x ignore:fgrep='Permission denied'

Пример для nmap: 

nmap --script ssh-brute --script-args userdb=usernames.txt,passdb=passwords.txt <target>

--script ssh-brute – указывает использование скрипта для перебора паролей ssh.
--script-args userdb=usernames.txt,passdb=passwords.txt – указывает на файлы, содержащие список пользователей и паролей соответственно.
<target> – целевой IP-адрес или диапазон адресов.
Прекомпилированный бинарный файл nmap тут.

Восстановление паролей и ключей из памяти процессов

В Linux сложнее чем в Windows. 

Mimipenguin

Перехват паролей из памяти процессов на Linux-системе. Обычно используется для получения паролей, введенных пользователем в терминал, например, паролей от системы или приложений. После запуска Mimipenguin начнет мониторить процессы в системе и попытается извлечь пароли из памяти процессов. Пароли отображаются в терминале.

image.png

truffleproc

Инструмент для перехвата паролей из памяти любых процессов работающих в системе Linux, который ищет пароли и ключи API в процессах по регулярным выражениям выполняя выгрузку памяти процесса и анализируя ее. Ссылка на инструмент

Ручной способ 

Нужно найти процесс аутентификации:

# ps -ef | grep "authenticator"
> root 2027 2025 0 11:46 ? 00:00:00 authenticator

Сделать дамп процесса (например, memory-dump) и поискать учетные данные в памяти: 

# ./dump-memory.sh 2027
# strings *.dump | grep -i

Прочие подобные утилиты:

3snake – перехват паролей ssh, sudo и su (experimental)
SSHPry2.0 – перехват данных в терминале
Gimmecredz – дамп паролей в памяти (на основе bash)