Наш Discord сервер
👆🏻Тут можно пообщаться и найти много полезной информации 🦈
👆🏻Тут можно пообщаться и найти много полезной информации 🦈
www.opennet.ru
Ядро Linux достигло отметки в 40 млн строк
Размер ядра Linux достиг рубежа в 40 млн строк исходного кода. Из 40 млн строк 24 млн относятся к коду драйверов (драйверы для GPU AMD занимают около 5 млн строк), а 4.4 миллиона специфичны для различных аппаратных архитектур (для поддержки x86 используется…
🔗Ссылка:
https://opennet.ru/62635/
https://opennet.ru/62635/
👍1
Forwarded from RedTeam brazzers (Миша)
Всем привет, на днях в достаточно подробном исполнении появилась еще одна вариация атаки Kerberos Relay. Этот пост для тех, кто окончательно запутался и не знает, с чего начать изучение всего обилия инструментов и статей.
Для локального повышения привилегий можно использовать KrbRelay и KrbRelayUp. Это тулы, которые позволяли повысить привилегии и получить учетную запись системы. Вкратце мы, благодаря особенностям создания объектов в СОМ, могли перехватить учетные данные системы и перенаправить их в какую-либо службу. Пример использования. После того, как потыкаете, можете посмотреть подробный разбор. Есть две статьи от Google Project Zero тут и тут. Если этот материал показался слишком сложным, то попробуйте начать с этой статьи на хабре. Если и она не идет, то читайте весь материал, на который я оставил там ссылки.
В последней статье активно упоминается RemoteKrbRelay . Это вариация локальной атаки KrbRelay и KrbRelayUp, но только в удаленном исполнении — можем захватывать аутентификацию чужих компьютеров. POC можно использовать для атак SilverPotato и CertifiedDCOM.
Помимо всего прочего, стоит упомянуть DavRelayUp (POC1 , POC2, POC3). Этот инструмент использует локальный релей NTLM (не керберос, просто схожая структура репозиториев) через поднятый WebDAV на LDAP. Фактически, это автоматизация действий, описанных в этой статье.
Существуют также варианты, которые работают несколько иначе и в некоторых случаях даже не требуют наличия у нас учетной записи в домене. Они основываются на возможности ретрансляции AP-REQ пакетов пользователей.
Начнем с krbrelayx.py. Изначально инструмент создавался в качестве тулкита для абуза неограниченного делегирования с Linux-систем, либо если делегирование настроено на учетную запись пользователя. Статья , примеры командлетов. Однако в дальнейшем была обнаружена возможность перехвата AP-REQ пакетов во время аутентификации клиентов (эта ауф появляется потому , что по дефолту в ADIDNS настроены Secure Dynamic Updates , требующие аутентификации перед обновленим записи) и захвата серверов с ролью DNS. Статья про релей из DNS.
Логичный вопрос: «Как получать AP-REQ?» И у нас есть несколько вариантов ответа.
1. Через MiTM: из DNS Authenticated Updates (см выше), из отравления LLMNR, через подмену DNS записи, - в общем практически любой MiTM ;
2. Через принудительную аутентификацию со специальным DNS-именем. Он же абуз CredMarshalTargetInfo(). Читать теорию тут, примеры использования krbrelayx с ним тут;
3. Через триггер и аутентификацию поверх DCOM. Тулза-триггерилка называется potato.py , ее разбор тут.
Вернемся к DNS. Зона может быть настроена с флагом
Если нам требуется осуществлять перехват и релей AP-REQ-пакетов с Windows, то можно использовать KrbRelayEx. Пример использования.
Также есть KrbRelay-SMBServer , который используют чтобы чейнить абуз CredMarshalTargetInfo() с Kerberos Relay с Windows-тачки.
Для локального повышения привилегий можно использовать KrbRelay и KrbRelayUp. Это тулы, которые позволяли повысить привилегии и получить учетную запись системы. Вкратце мы, благодаря особенностям создания объектов в СОМ, могли перехватить учетные данные системы и перенаправить их в какую-либо службу. Пример использования. После того, как потыкаете, можете посмотреть подробный разбор. Есть две статьи от Google Project Zero тут и тут. Если этот материал показался слишком сложным, то попробуйте начать с этой статьи на хабре. Если и она не идет, то читайте весь материал, на который я оставил там ссылки.
В последней статье активно упоминается RemoteKrbRelay . Это вариация локальной атаки KrbRelay и KrbRelayUp, но только в удаленном исполнении — можем захватывать аутентификацию чужих компьютеров. POC можно использовать для атак SilverPotato и CertifiedDCOM.
Помимо всего прочего, стоит упомянуть DavRelayUp (POC1 , POC2, POC3). Этот инструмент использует локальный релей NTLM (не керберос, просто схожая структура репозиториев) через поднятый WebDAV на LDAP. Фактически, это автоматизация действий, описанных в этой статье.
Существуют также варианты, которые работают несколько иначе и в некоторых случаях даже не требуют наличия у нас учетной записи в домене. Они основываются на возможности ретрансляции AP-REQ пакетов пользователей.
Начнем с krbrelayx.py. Изначально инструмент создавался в качестве тулкита для абуза неограниченного делегирования с Linux-систем, либо если делегирование настроено на учетную запись пользователя. Статья , примеры командлетов. Однако в дальнейшем была обнаружена возможность перехвата AP-REQ пакетов во время аутентификации клиентов (эта ауф появляется потому , что по дефолту в ADIDNS настроены Secure Dynamic Updates , требующие аутентификации перед обновленим записи) и захвата серверов с ролью DNS. Статья про релей из DNS.
Логичный вопрос: «Как получать AP-REQ?» И у нас есть несколько вариантов ответа.
1. Через MiTM: из DNS Authenticated Updates (см выше), из отравления LLMNR, через подмену DNS записи, - в общем практически любой MiTM ;
2. Через принудительную аутентификацию со специальным DNS-именем. Он же абуз CredMarshalTargetInfo(). Читать теорию тут, примеры использования krbrelayx с ним тут;
3. Через триггер и аутентификацию поверх DCOM. Тулза-триггерилка называется potato.py , ее разбор тут.
Вернемся к DNS. Зона может быть настроена с флагом
ZONE_UPDATE_UNSECURE , что разрешает обновления без аутентификации. В таком случае мы можем осуществить MiTM и перехватить AP-REQ креды, идущие на какие-либо службы. Соответственно, сделать релей на эти службы и получить к ним доступ. POC называется KrbJack. Он автоматизирует весь цикл атаки: сначала подменяет IP-адреса, потом слушает пакеты и, если обнаруживает аутентификацию по керберосу или NTLM, то пытается отрелеить ее на шару ADMIN$ с последующим деплоем шелла. Тулзу можно использовать и просто для обновлений записей анонимно. Пример использования в репозитории.Если нам требуется осуществлять перехват и релей AP-REQ-пакетов с Windows, то можно использовать KrbRelayEx. Пример использования.
Также есть KrbRelay-SMBServer , который используют чтобы чейнить абуз CredMarshalTargetInfo() с Kerberos Relay с Windows-тачки.
Forwarded from Blue (h/c)at Café
В этом посте я рассказал про уязвимость в Next.js, которая на первый взгляд выглядит как небольшой баг в кешировании, но на деле может превратиться в серьезную проблему, способную привести к неожиданным последствиям 😏 .
Суть в том, что можно обмануть сервер и заставить его кешировать динамические страницы так, будто это статический контент. Если злоумышленник подменит данные, они останутся в кеше и будут раздаваться пользователям. Это открывает путь для Stored XSS, DoS и утечки данных. Мы привыкли считать кеш полезным инструментом для ускорения работы сайта, но если его неправильно настроить, он превращается в оружие.
Если у вас в проектах используется Next.js — советую проверить, не уязвим ли ваш сервис для этого я приложил PoC.
Источники для изучения
https://security.snyk.io/vuln/SNYK-JS-NEXT-8025427
https://github.com/advisories/GHSA-gp8f-8m3g-qvj9
https://github.com/vercel/next.js/security/advisories/GHSA-gp8f-8m3g-qvj9
https://zhero-web-sec.github.io/research-and-things/nextjs-cache-and-chains-the-stale-elixir
https://vulert.com/vuln-db/CVE-2024-46982
Тут могла бы быть интересная история, но это останется секретом)
Суть в том, что можно обмануть сервер и заставить его кешировать динамические страницы так, будто это статический контент. Если злоумышленник подменит данные, они останутся в кеше и будут раздаваться пользователям. Это открывает путь для Stored XSS, DoS и утечки данных. Мы привыкли считать кеш полезным инструментом для ускорения работы сайта, но если его неправильно настроить, он превращается в оружие.
Если у вас в проектах используется Next.js — советую проверить, не уязвим ли ваш сервис для этого я приложил PoC.
Источники для изучения
https://security.snyk.io/vuln/SNYK-JS-NEXT-8025427
https://github.com/advisories/GHSA-gp8f-8m3g-qvj9
https://github.com/vercel/next.js/security/advisories/GHSA-gp8f-8m3g-qvj9
https://zhero-web-sec.github.io/research-and-things/nextjs-cache-and-chains-the-stale-elixir
https://vulert.com/vuln-db/CVE-2024-46982
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Системные логи
Одним из ключевых шагов в активной разведке при работе с новым приложением является сбор API-эндпоинтов из JavaScript-файлов. 💻
Существует множество методов для автоматизации сбора эндпоинтов, и одним из самых простых и удобных способов является использование закладок🗓
Ниже представлю один из таких скриптов, который поможет вам эффективно собирать API-эндпоинты.
1️⃣ Добавьте новую закладку на панель инструментов вашего браузера.
2️⃣ Замените URL-адрес закладки фрагментом кода JavaScript, представленным выше.
3️⃣ Перейдите на целевую страницу и нажмите на закладку. Скрипт запустится в вашем браузере, открывая ранее неизвестные конечные точки прямо на странице.
Существует множество методов для автоматизации сбора эндпоинтов, и одним из самых простых и удобных способов является использование закладок
Ниже представлю один из таких скриптов, который поможет вам эффективно собирать API-эндпоинты.
javascript:(function(){var scripts=document.getElementsByTagName("script"),regex=/(?<=(\"|\'|\`))\/[a-zA-Z0–9_?&=\/\-\#\.]*(?=(\"|\'|\`))/g;const results=new Set;for(var i=0;i<scripts.length;i++){var t=scripts[i].src;""!=t&&fetch(t).then(function(t){return t.text()}).then(function(t){var e=t.matchAll(regex);for(let r of e)results.add(r[0])}).catch(function(t){console.log("An error occurred: ",t)})}var pageContent=document.documentElement.outerHTML,matches=pageContent.matchAll(regex);for(const match of matches)results.add(match[0]);function writeResults(){results.forEach(function(t){document.write(t+"<br>")})}setTimeout(writeResults,3e3);})();This media is not supported in your browser
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Наш Discord сервер
👆🏻Тут можно пообщаться и найти много полезной информации 🦈
👆🏻Тут можно пообщаться и найти много полезной информации 🦈