- HackWare.ru
- Этичный хакинг и тестирование на проникновение, информационная безопасность
- Атака Pass-the-hash (как использовать NTLM без взлома пароля)
- Как использовать NTLM без взлома пароля: атака Pass-the-hash
- Установка и запуск Invoke-TheHash в Windows
- NTLM хеш и выполнения команд через WMI
- Выполнение команд через PsExec
- Извлечение информации об удалённой системе из SMB
- SMB клиент с входом по NTLM хешу
- Invoke-TheHash
- Заключение
- Взлом терминалов киви — 6 способов
- Способ 1. Транспортировка:
- Способ 2. Физический взлом:
- Способ 3. Рыбалка:
- Способ 4. Нарезка купюр:
- Способ 5. Для Медвежатников:
- Способ 6. Взлом софта:
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Атака Pass-the-hash (как использовать NTLM без взлома пароля)
Это вторая часть, посвящённая аудиту безопасности Windows и оценке надёжности паролей пользователей, рекомендуется начать знакомство с первой части, которая называется «Как взломать пароль Windows».
Как использовать NTLM без взлома пароля: атака Pass-the-hash
Атака Pass-the-hash позволяет не подбирать пароль, а использовать непосредственно хеш.
mimikatz может выполнить известную операцию ‘Pass-The-Hash’ для запуска процесса под другими учётными данными с хешем NTLM пользовательского пароля вместо его реального пароля. Для этого программа запускает процесс с поддельной идентификацией, затем заменяет фальшивую информацию (NTLM хеш фальшивого пароля) на реальную информацию (NTLM хеш реального пароля).
Для выполнения этой атаки mimikatz, который умеет выполнять команды от другого пользователя, вначале нужно дать процессу привилегии отладки debug:
Затем нужно запустить команду вида:
Вместо ДОМЕН нужно указать полностью определённое доменное имя или имя рабочей группы, если выполняется для локального пользователя. Опцию /run:КОМАНДА можно пропустить и тогда будет выполнено cmd.exe (откроется приглашение командной строки).
Но мне кажется, что это не работает (возможно, я делаю что-то не так).
Но точно работает программа Invoke-TheHash, которая использует NTLM хеш для выполнения команд на удалённых системах, а также сбора информации и работе с файлами в сетевых папках. То есть для всех этих действий не требуется расшифровывать пароль из NTLM хеша.
Invoke-TheHash включает в себя следующие функции:
- Invoke-WMIExec (выполнения команд через WMI)
- Invoke-SMBExec (выполнения команд через SMB (PsExec))
- Invoke-SMBEnum (выполняет перечисление пользователей, групп, сетевых сессий и совместных ресурсов)
- Invoke-SMBClient (клиент SMB)
- Invoke-TheHash (для запуска функций Invoke-TheHash в отношении множества целей)
Установка и запуск Invoke-TheHash в Windows
Скрипты Invoke-TheHash написаны на PowerShell, поэтому настоятельно рекомендуется ознакомиться со статьёй «Настройка рабочего окружения PowerShell в Windows и Linux» в которой вы найдёте ответы на многие вопросы новоичков в использовании PowerShell, а также пример исправления ошибки в скрипте Invoke-TheHash при его запуске в Linux.
Переходим в каталог со скриптами (у вас может быть другой путь):
Для запуска импортируйте функции:
И используйте эти функции для запуска:
В качестве целевого компьютера мы будем использовать Windows Server 2019, имя компьютера HACKWARE-SERVER, IP компьютера 192.168.0.53. При запуске атаки из Windows, можно использовать имя компьютера, а при запуске атаки из Linux, имя компьютера вряд ли будет преобразовано в IP, поэтому лучше сразу указать IP адрес.
Для этого компьютера добыт NTLM хеш:
На Windows Server невозможно создать учётную запись Администратора без пароля либо со слабым паролем (смотрите «Какой пароль подойдёт для Windows сервера») и поэтому мы можем предположить, что не удалось взломать NTLM хеш. Рассмотрим варианты, как мы можем его использовать.
NTLM хеш и выполнения команд через WMI
Windows Management Instrumentation (WMI) в дословном переводе — инструментарий управления Windows. WMI — это одна из базовых технологий для централизованного управления и слежения за работой различных частей компьютерной инфраструктуры под управлением платформы Windows.
Если не вдаваться в подробности WMI, то эта технология используется для управления Windows компьютерами по сети и, среди прочего, позволяет выполнять команды на удалённых компьютерах. Минус практической атаки на WMI в том, что по умолчанию на обычных рабочих станциях Windows технология WMI отключена и/или доступ закрыт файерволом. Но на Windows Server технология WMI доступна.
Чтобы удостовериться, доступен ли WMI на удалённом компьютере, нужно запустить команду вида:
К примеру, я хочу проверить, доступен ли WMI для пользователя Администратор на компьютере с именем HACKWARE-SERVER:
Вы увидите окно запроса аутентификации на удалённой системе:
И в случае если всё хорошо (пароль правильный и WMI поддерживается), то вы увидите информацию о файловой системе на удалённом компьютере:
Если у вас действительно нет пароля, то переходим сразу к Invoke-WMIExec.
Нужно запустить команду вида:
- -Target — Имя хоста или IP адрес цели.
- -Username — Имя пользователя для использования в аутентификации.
- -Domain — Домен для использования в аутентификации. Этот параметр не нужен с локальными аккаунтами или когда используется @domain после имени пользователя.
- -Hash — NTLM хеш пароля для аутентификации. Эта функция примет как LM:NTLM, так и NTLM формат.
- -Command — Команда для выполнения на цели. Если команда не указана, то функция просто проверит, имеет ли пользователь и хеш доступ к WMI на целевой системе.
- -Sleep — По умолчанию = 10 миллисекунд: Устанавливает значение функции Start-Sleep в миллисекундах.
Моя реальная команда:
В этом примере на удалённой системе выполнилась команда:
То есть в оболочке PowerShell выполнено
- ls C:\ — означает показать список файла корня диска C:
- > — означает полученный результат перенаправить в файл
- c:\file.txt — это файл, куда перенаправлен вывод команды ls
То есть в результате на удалённой системе должен был создаться файл c:\file.txt, проверим:
По описанной технологии можно запускать бэкдор или любой другой файл или команду.
Используя команду PowerShell Invoke-Webrequest можно передавать файлы с атакуемой машины на другую:
Выполнение команд через PsExec
В целом всё очень похоже на функцию Invoke-WMIExec:
В моих тестах мне не удалось перенаправить вывод с SMBExec в файл, но функция работает, например, я выполнил следующую команду:
Полезной нагрузкой в ней является:
Делался запрос к веб-серверу к логам которого у меня есть доступ, и там я увидел соответствующую строку, подтверждающую, что к веб-серверу был сделан запрос от атакуемой машины:
Извлечение информации об удалённой системе из SMB
Invoke-SMBEnum выполняет перечисление пользователей, групп, сетевых сессий и совместных ресурсов (принтеров и сетевых папок) по SMB2.1 с или без входа по SMB.
Все опции уже знакомы, но отсутствует опция с командой. Вместо неё есть новое опция с действием:
- -Action — (возможные варианты: All, Group, NetSession, Share, User) По умолчанию = Share: Эта опция указывает, какое действие по перечислению выполнить.
Пример реальной команды:
Команда сработала, но что-то не то с кодировкой:
SMB клиент с входом по NTLM хешу
SMB клиент позволяет скачивать и закачивать файлы на сетевую папку. SMB клиентов много, уникальность Invoke-SMBClient в использовании NTLM хеша вместо пароля:
Действие может быть следующим:
- -Action — По умолчанию = List: (возможные варианты: List, Recurse, Delete, Get, Put) Действие для выполнения.
- List: Выводит список содержимого директории.
- Recurse: Выводит список содержимого директории и всех поддиректорий.
- Delete: Удаляет файл.
- Get: Загружает файл.
- Put: Выгружает файл и устанавливает метки времени создания, доступа и последней записи для соответствия исходного файлу.
В зависимости от выбранного действия, источником (Source) может быть следующее:
- -Source
- List и Recurse: UNC путь к директории.
- Delete: UNC путь к файлу.
- Get: UNC путь к файлу.
- Put: Файл для выгрузки. Если полный путь не указан, то файл должен быть в текущей директории. Когда используется переключатель ‘Modify’, ‘Source’ должен быть массивом байтов.
В зависимости от выбранного действия, новым файлом на локальной системе (Destination) может быть следующее:
- -Destination
- List и Recurse: Не используется.
- Delete: Не используется.
- Get: Если используется, значение будет новым именем загруженного файла. Если полный путь не указан, то файл будет создан в текущей директории.
- Put: UNC путь для выгружаемого файла. Имя файла должно быть указано.
Рассмотрим примеры самых ходовых действий.
Просмотр содержимого сетевой папки с именем Share-Server на компьютере \\HACKWARE-SERVER:
Скачать файл changelog.txt из папки Share-Server с компьютера \\HACKWARE-SERVER и сохранение его в текущую рабочую директорию локального компьютера с именем changelog_server.txt:
Закачка файла Invoke-TheHash.ps1, расположенного на локальном компьютере в директории C:\Users\MiAl\Downloads\Invoke-TheHash-master\, на компьютер \\HACKWARE-SERVER в папку Share-Server с именем Script.ps1:
Invoke-TheHash
Invoke-TheHash — это функция для запуска функций Invoke-TheHash в отношении множества целей.
Больше подробностей и примеров смотрите в документации: https://kali.tools/?p=5380
Заключение
Итак, в этой и предыдущей статье мы узнали:
- о существовании NTLM хеша,
- о том, где хранится пароль пользователя Windows,
- о том, что при наличии онлайн аккаунта Microsoft хеш пароля всё равно хранится на локальном компьютере
- как взломать пароль пользователя Windows
- как использовать NTLM хеш без взлома
Взлом терминалов киви — 6 способов
В последнее время страну захлестнула волна ограблений банкоматов, самый популярный способ — это подрыв газом. Но многих ловят, т.к. банкоматы строжайше охраняются, после срабатывания датчиков, которыми просто усыпан каждый банкомат, ЧОП приезжает через 3 минуты…
А зачем грабить банкомат, который имеет множество степеней защиты и поставлен на пультовую охрану, когда есть ящики с деньгами, не имеющие вообще никаких защит, зачастую даже не стоят под камерами наблюдения. Речь пойдет о платежных терминалах QIWI.
В платежных терминала мало денег, скажете вы? Это не проблема, т.к. перед ограблением можно зарядить деньгами терминал пополнив qiwi кошелек, а потом их же и забрать.
В терминалы киви устанавливают купюроприемнки на 1500 купюр, если заряжать пятаками это будет 7 500 000 рублей.
Как безопасно выводить деньги с киви кошелька? Способов есть много, имхо, самый беспалевный это обмен киви на биткоины через один из десятков обменников. Потом эти биткоины также просто можно в другом обменнике обменять на рубли или вывести через одну из биткоин-бирж. Все делается довольно быстро и не сложней чем завести себе скайп.
Теперь собственно о том, как забрать деньги с терминала. Есть несколько способов начнем, по порядку:
Способ 1. Транспортировка:
Самый простой и надежный способ — это взять терминал подмышку, донести до машины и с ним уехать, времени займет меньше минуты. Весит он очень мало по сравнению с банкоматом — около 85 кг, справится можно одному или лучше вдвоем. Если в районе установки терминала нет камер, то можно даже сделать вид, что терминал забирается на обслуживание техниками. Терминал можно погрузить в тачку либо же дотащить до подворотни, где его и раскурочить.
Способ 2. Физический взлом:
Как говорится против лома нет приема, у терминалов в отличи от банкоматов довольно простенькая защита от грубого физического воздействия. Вставляете гвоздодер между панелями и проворачиваете.
Еще есть вариант бить кувалдой по центру, тогда дверца вогнется внутрь и ее можно будет открыть.
Способ 3. Рыбалка:
Довольно нехитрый способ, суть заключается в том, что надо вытащить заглоченную купюру как рыбку из пруда. Есть два варианта — первый это привязывание лески к купюре, второй делаем длинную купюру при помощи либо скотча либо длинного листка бумаги скрепленного с купюрой.
Способ 4. Нарезка купюр:
Специальным способом из 20 купюр делаем 21. Смысл в том, что если разрезать купюру вдоль, отрезать тоненькую полоску шириной 5% от ширины изначальной купюры, и потом склеить две половинки вы получите узкую купюру шириной 95% от изначальной, но такую купюру терминал схавает. А отрезанные 5% можно использовать чтобы создать новую купюру.
Хотя данный способ подходит и для обмана банкоматов, лучше все таки применять его для терминалов киви, ибо за ними не следят ЧОПы, но самое главное именно киви можно обменять на биткоины без всякого палева. (для регистрации киви кошелька нужна только левая симка)
Способ 5. Для Медвежатников:
Замок в терминале несложный и банальная отмычка поможет открыть дверцу — правда тут нужно обладать ловкими руками,что дано не всем.
Способ 6. Взлом софта:
Киви терминал работает на ОС Windows XP, сама прошивка низкого качества и в ней есть несколько уязвимостей. Большинство из них не известны широкой публике, однако есть люди которые продают такую информацию.
Подводные камни
-на каждом терминале есть камера, которая смотрит в лицо клиенту — поэтому либо маска либо заклеить камеру наклейкой
-неподалеку от терминалов могут быть камеры в самых неожиданных местах, хотя есть много таких где их нет вовсе
-многих палят именно на выводе денег с киви кошелька, используйте обмен киви на биткоины и прогоны через 2-3 обменника прежде чем обналичить деньги
-хотя в терминал можно загрузить до 7 500 000 рублей, у некоторых терминалов есть установленное владельцем ограничение в 300 000 — 500 000 руб, при достижении которого терминал перестает зачислять деньги на киви кошелек, хотя и продолжает принимать деньги. Все что было внесено выше лимита будет зачислено на киви кошелек только после того, как приедет владелец терминала и заберет деньги с терминала. Тем не менее даже 300 000 руб, за 5 минут работы это неплохие бабки, а риск в 100 раз ниже чем при работе с банкоматом.
-не перепутайте бокс для денег с принтером который печатает чеки.
Больше мне добавить нечего, кроме того, что все эти деяния попадают под 158-ую статью УК РФ.