Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍3 1
Forwarded from AUTHORITY
Еще в декабре мы обещали выпустить кое-что новое.
И мы действительно выпустили.. Блокноты!
Сделали всего 50 штук, которые разошлись, даже не успев попасть в открытую продажу.
Несколько штук мы подарили победителям Cyber Students QUIZ.
Более того, мы предложили угадать подписчикам, какой будет приз, чтобы получить эти прекрасные книжки вне конкурса.
Никто так и не угадал.
Итак, что это за блокноты такие?
В какой-то момент один из авторов канала решил систематизировать накопленные знания так, чтобы всегда можно было к ним обратиться, не имея ПК под рукой.
В результате, получились блокноты:
Первые 30 страниц - отборные техники и инструменты, используемые при проведении пентестов и ред-тим операций
Следующие 70 - пустые страницы под новые записи и зарисовки.
Техники и инструменты мы разбили по этапам атаки - от разведки до эксфильтрации.
Для каждого инструмента сгенерировали QR-коды, чтобы можно было быстро обратиться к информации в любой момент.
Для каждой техники написали примеры команд на исполнение.
Итак, из первой поставки у нас осталось всего 2 блокнота, которые мы решили разыграть между подписчиками прямо перед выпуском второй, большой партии.
Условия такие:
10 дней: 23.05.2025-01.06.2025
02.06 подведем итоги
Что нужно сделать:
1. Подписаться на канал AUTHORITY
2. Прислать в комментарии под этим постом самый смешной мем про IT
Оценивать будем максимально субъективно, на собственный вкус.
И мы действительно выпустили.. Блокноты!
Сделали всего 50 штук, которые разошлись, даже не успев попасть в открытую продажу.
Несколько штук мы подарили победителям Cyber Students QUIZ.
Более того, мы предложили угадать подписчикам, какой будет приз, чтобы получить эти прекрасные книжки вне конкурса.
Никто так и не угадал.
Итак, что это за блокноты такие?
В какой-то момент один из авторов канала решил систематизировать накопленные знания так, чтобы всегда можно было к ним обратиться, не имея ПК под рукой.
В результате, получились блокноты:
Первые 30 страниц - отборные техники и инструменты, используемые при проведении пентестов и ред-тим операций
Следующие 70 - пустые страницы под новые записи и зарисовки.
Техники и инструменты мы разбили по этапам атаки - от разведки до эксфильтрации.
Для каждого инструмента сгенерировали QR-коды, чтобы можно было быстро обратиться к информации в любой момент.
Для каждой техники написали примеры команд на исполнение.
Итак, из первой поставки у нас осталось всего 2 блокнота, которые мы решили разыграть между подписчиками прямо перед выпуском второй, большой партии.
Условия такие:
10 дней: 23.05.2025-01.06.2025
02.06 подведем итоги
Что нужно сделать:
1. Подписаться на канал AUTHORITY
2. Прислать в комментарии под этим постом самый смешной мем про IT
Оценивать будем максимально субъективно, на собственный вкус.
👍5😁2 1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17
Инструмент для аудита разрешений в
доступом (ACL – Access Control List)
UPD
Added info for Windows 2022 and Windows 2025
Added Exchange Schema version 'Exchange Server 2019 CU10
Написан на
SACL - список используемый для аудита доступа к данному объекту.
DACL - список указывающий права пользователей и групп на действия с данным объектом.
Разрешения, которые нам интересны
GenericAll - полные права на объект
GenericWrite - редактировать атрибуты объекта
WriteOwner - изменить владельца объекта
WriteDACL - редактировать ACE объекта
AllExtendedRights - расширенные права на объект
ForceChangePassword - сменить пароль объекта
Self - возможность добавить себя в группу
Работает в GUI или консольном режимах:
Invoke-WebRequest -Uri 'https://raw.githubusercontent.com/canix1/ADACLScanner/refs/heads/master/ADACLScan.ps1' -OutFile ADACLScan.ps1
.\ADACLScan.ps1
.\ADACLScan.ps1 -Base (Get-ADRootDSE).defaultNamingContext -Owner -Scope subtree -Filter '(objectClass=*)' | Where-Object {$_.Access -eq 'Owner'}
Экспорт в xls, csv, html
Большое количество возможностей
#adaclscanner #powershell #redteam #soft
Please open Telegram to view this post
VIEW IN TELEGRAM
Продолжение
10 последних логонов:
Get-WinEvent -FilterHashtable @{LogName='Security';ID=4624} -MaxEvents 10 |
ForEach-Object {
$eventXml = [xml]$_.ToXml()
$logonType = $eventXml.Event.EventData.Data |
Where-Object { $_.Name -eq 'LogonType' } |
Select-Object -ExpandProperty '#text'
$targetUser = $eventXml.Event.EventData.Data |
Where-Object { $_.Name -eq 'TargetUserName' } |
Select-Object -ExpandProperty '#text'
[PSCustomObject]@{
TimeCreated = $_.TimeCreated
LogonType = $logonType
TargetUserName = $targetUser
LogonID = ($eventXml.Event.EventData.Data |
Where-Object { $_.Name -eq 'TargetLogonId' }).'#text'
}
} | Format-Table -AutoSizeСбор по конкретному пользователю:
$user = 'exited3n'
Get-WinEvent -FilterHashtable @{LogName='Security';ID=4624} -MaxEvents 1000 |
ForEach-Object {
$eventXml = [xml]$_.ToXml()
$logonType = $eventXml.Event.EventData.Data | Where-Object { $_.Name -eq 'LogonType' } | Select-Object -ExpandProperty '#text'
$targetUser = $eventXml.Event.EventData.Data | Where-Object { $_.Name -eq 'TargetUserName' } | Select-Object -ExpandProperty '#text'
$logonId = $eventXml.Event.EventData.Data | Where-Object { $_.Name -eq 'TargetLogonId' } | Select-Object -ExpandProperty '#text'
if ($targetUser -imatch $user) {
[PSCustomObject]@{
TimeCreated = $_.TimeCreated
LogonType = $logonType
TargetUserName = $targetUser
LogonID = $logonId
}
}
} | Select-Object -First 1000 | Format-Table -AutoSize
Текущие на wmi:
Get-WmiObject -Class Win32_LogonSession |
Where-Object { $_.LogonType} |
ForEach-Object {
$session = $_
Get-WmiObject -Query "Associators of {Win32_LogonSession.LogonId='$($session.LogonId)'} Where AssocClass=Win32_LoggedOnUser Role=Dependent" |
Select-Object @{n='User';e={$_.Name}}, @{n='LogonType';e={$session.LogonType}}
}
#windows #logons #redteam
Please open Telegram to view this post
VIEW IN TELEGRAM
Сегодня решил написать о типах логона, учитывая количество вопросов по данному поводу, становится совершенно очевидно, что многим, особенно начинающим, этот момент не понятен
И что же это такое ?
Типы логонов - ключевой элемент в понимании того, как и откуда пользователи и процессы получают доступ к Windows системам и ресурсам
Немножко базы:
Interactive (2) Локальный, т.н. logon locally
Network (3) Сетевой, доступ к ресурсам по сети, например, к общим папкам
Batch (4) Пакетное задание, используется при выполнение заданий через планировщик
Service (5) Вход службы
Unlock (7) Разблокировка рабочего стола после блокировки экрана.
NetworkCleartext (8) Сетевой с передачей учетных данных в открытом виде (например, базовая аутентификация IIS).
NewCredentials (9) Вход с новыми учетными данными
RemoteInteractive (10) Удалённый интерактивный
CachedInteractive (11) Локальный интерактивный с кэшированными данными, например, при недоступности DC
CachedRemoteInteractive (12) Удалённый вход с кэшированными учетными данными
CachedUnlock (13) Разблокировка с кэшированными учетными данными
Interactive (2)
Console logon
RUNAS
Network (3)
NET USE
RPC вызовы
Evil-WinRM
Impacket-wmiexec и т.д.
Удаленный реестр
IIS Windows аутентификация
SQL Windows аутентификация
Batch (4)
Задания планировщика
Service (5)
Службы (services.msc)
NetworkCleartext (8)
PowerShell с CredSSP
NewCredentials (9)
RunAs с параметром /netonly
RemoteInteractive (10)
Удаленный рабочий стол (RDP)
Разница довольно таки большая, например при работе с DPAPI
При интерактивном входе (2) пользователь полноценно аутентифицирован в системе, и у него есть доступ к своим мастер-ключам
При сетевом входе (3) происходит аутентификация по сети, но контекст безопасности и доступ к мастер-ключам отсутствует или ограничен. Это связано с тем, что сетевая аутентификация не создаёт полноценной интерактивной сессии
Каждый уважающий себя C2 умеет ими манипулировать, типа такого -
token make domain.local user Password123 LOGON_INTERACTIVEПростой команды аля
whoami к сожалению нетКаждый вход в Windows создаёт сессию с определённым типом логона, который фиксируется в журнале безопасности (например, в событии с ID 4624)
Я написал 3 powershell
Первый выведет 10 последних логонов
Второй может собирать по конкретному пользователю
Третий на wmi покажет текущие
Но они не влезли в данный пост, поэтому положу их в другой
#windows #logons #redteam
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1 1 1 1
Обновление инструмента для выявления связей и построения графов в
Отличный инструмент при пентесте
Для сбора информации используются коллекторы bloodhound-ce или SharpHound
Bonus:
BadSuccessor query - dMSA (delegated Managed Service Account) в Windows Server 2025
MATCH (c1:Computer)-[:MemberOf*1..]->(g:Group) WHERE g.objectid ENDS WITH '-516' WITH COLLECT(c1.name) AS dcs MATCH (c2:Computer) WHERE c2.enabled = true AND (c2.operatingsystem contains '2025') AND (c2.name IN dcs) RETURN c2.name
Установка:
curl -L https://ghst.ly/getbhce | docker compose -f - up
http://localhost:8080/ui/login
Логин admin и сгенерированный пароль
Для обновления переходим в директорию с docker-compose.yml и запускаем:
docker compose pull && docker compose up
Сбор информации:
python3 bloodhound-python -u domain_user -p 'P@ss' -ns 10.0.0.1 -d contoso.com -c all --dns-tcp
Neo4j запросы:
# Domain Admins и время установки пароля
MATCH (g:Group) WHERE g.name =~ "(?i).*DOMAIN ADMINS.*" WITH g MATCH (g)<-
[r:MemberOf*1..]-(u) RETURN u.name AS User,
datetime({epochSeconds:toInteger(u.pwdlastset)}) as passwordLastSet, datetime({epochSeconds: toInteger(u.whencreated)}) AS dateCreated ORDER BY u.pwdlastset
# Сервисные УЗ, время установки пароля, дата создания
MATCH (u:User) WHERE u.hasspn=true AND (NOT u.name STARTS WITH 'KRBTGT') RETURN u.name
AS accountName, datetime({epochSeconds: toInteger(u.pwdlastset)}) AS passwordLastSet,
datetime({epochSeconds: toInteger(u.whencreated)}) AS dateCreated ORDER BY u.pwdlastset
# Пользователи и описание
MATCH (u:User) RETURN u.name as username, u.description as description
# Domain Admins или Administrators с сессией исключая DC
MATCH (c1:Computer)-[:MemberOf*1..]->(g:Group) WHERE g.objectid ENDS WITH '-516' WITH
COLLECT(c1.name) AS domainControllers
MATCH (n:User)-[:MemberOf*1..]->(g:Group) WHERE g.objectid ENDS WITH '-512' OR
g.objectid ENDS WITH '-544'
MATCH p = (c:Computer)-[:HasSession]->(n) WHERE NOT c.name in domainControllers return
p
# Неограниченное делегирование исключая DC
MATCH (c1:Computer)-[:MemberOf*1..]->(g:Group) WHERE g.objectid ENDS WITH '-516' WITH
COLLECT(c1.name) AS domainControllers
MATCH (c:Computer {unconstraineddelegation:true}) WHERE NOT c.name IN domainControllers
RETURN c
# Пользователи с ограниченным делегированием
MATCH p = ((u:User)-[r:AllowedToDelegate]->(c:Computer)) RETURN p
Подробный гайд:
ADCS атаки:
Ссылки:
P.S. Сам таки полностью перешел на CE версию и legacy использовать больше желания нет 👍😅
#bloodhound #pentest #active_directory #soft #bhce
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3 2❤1
Forwarded from Adaptix Framework
AdaptixC2 v0.5 is out
https://github.com/Adaptix-Framework/AdaptixC2
* Windows "gopher" agent
* Fast socks5 tunnels via "gopher" agent
* New Remote Terminal
* New Client side tunnels
More details in the changelog: https://adaptix-framework.gitbook.io/adaptix-framework/changelog/v0.4-greater-than-v0.5
https://github.com/Adaptix-Framework/AdaptixC2
* Windows "gopher" agent
* Fast socks5 tunnels via "gopher" agent
* New Remote Terminal
* New Client side tunnels
More details in the changelog: https://adaptix-framework.gitbook.io/adaptix-framework/changelog/v0.4-greater-than-v0.5
GitHub
GitHub - Adaptix-Framework/AdaptixC2
Contribute to Adaptix-Framework/AdaptixC2 development by creating an account on GitHub.
❤2 2