вольтаж – Telegram
вольтаж
1.24K subscribers
38 photos
6 videos
7 files
64 links
Кибершумные заметки о безопасности веба, инфры и головы

связь - @w0ltage
Download Telegram
Мало кто знает, что для осинта можно использовать поиск коллекций в Postman. Часто разработчики оставляют публичные репозитории, содержащие в себе как описание всех API ручек, так и токены авторизации, пароли от админок и бд, сертификаты.

https://www.postman.com/search?q=%D0%B1%D0%B4&scope=all&type=all
4🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
cheat sheets для всего

Вдохновившись modmenu в играх, и одновременно сгорев с неудобства всех cheat sheets для програм, написал скрипт с меню шпаргалок - cheatmenu.

Скрипт парсит YAML-файл с объявленными "шпаргалками", после даёт выбрать приложение по которому показать подсказки, а уже потом генерирует меню всех объявляенных подсказок.

Текущие фичи: выбранные шпоры копируются в буфер обмена; среди шпор можно искать по ключевым словам;

Обо всём остальном (и даже больше!) уже написано в репозитории. Там же лежит скрипт для автоматической установки.

Работает только на Linux, в частности на X.Org (крутейше) и на Wayland (небрежно).


Как появятся идеи по улучшению или по новым "подсказкам", то делай pull request, или создавай issue на Github, или же пиши мне, а там уже разберёмся.

#tool #machineops
❤‍🔥4👀1
Что если у тебя конфиг Burp Suite?
и тебе лень конвертировать того в YAML

Благо мне ещё раньше стало лень вручную синхронизировать свой конфиг с каким-то YAML в недрах cheatmenu. Поэтому написал скрипт по конвертации любого конфига Burp профиля в YAML-файл, подходящий для cheatmenu.


Пошаговый гайд для самых маленьких

# клонируем репозиторий
git clone https://github.com/tokiakasu/cheatmenu.git

# переходим в репозиторий
cd cheatmenu

# запускаем скрипт установки, ставим зависимости и обновляем шпаргалки
./cheatmenu/setup.sh

# переходим в папку с конвертером
cd cheatmenu/sheets/burpsuite/converter

# конвертируем конфиг в YAML
# вместо "profile_burp.json" подставь путь к своему конфигу
python3 burp2yaml.py profile_burp.json

# в результате скрипт создаст файл "burpsuite.yaml".
# замени дефолтный YAML со сгенерированным
mv burpsuite.yaml ../burpsuite.yaml





После запускай cheatgenerator.sh (лежит в директории со скриптом установки setup.sh), выбирай в меню "burpsuite" и проверяй появились ли твои шорткаты
❤‍🔥62
Пока каналы переполнены советами, крутыми тулзами и историями успеха, поделюсь рефлексией на прошедший Standoff Hacks, включая все свои фейлы, что из них вынес и почему интерес к ИБ разгорелся ещё сильнее.

https://teletype.in/@hackthishit/hacks-reflection

#me #mindops
12❤‍🔥2
Как тестировать мобильные приложения, если вебер

Будучи вебером, ВСЕГДА обходил тестирование мобилок стороной, думая "слишком сложно, где-то между реверсом и стегой". Пиком навыков было - запустить apkleaks, проверить доступ к firebase и протыкать найденные URL'ы.

Впрочем, на днях - веб закончился и осталось несколько мобильных приложений. Выбора не было, пришлось стать мобильщиком.

Спустя часы страданий в Android Studio и JADX, нашёл идеальный гайд от IppSec, с начальным сетапом для тестирования мобильных приложений, работающий с первого раза

За 22 минуты узнаешь
- как эмулировать Android (с root!) через Genymotion (под капотом VirtualBox)
- как проксировать траффик Android через Burp
- как поставить Frida, о которой слагают легенды мобильщики
- как обходить SSL Pinning на примере Instagram


Окупилась ли смена роли? Да, в тайне от веба, приложение общалось с вкусными и беззащитными API endpoint'ами :)

#mobile #android
🔥12👍1
Пока подводят итоги года, подведу итоги своих 2.2 годов, ощущавшихся как 5 лет 🎅

Почему? Потому что 2.2 года назад я закончил 3 курса колледжа, и по воле случая, ушёл в академический отпуск, попав в самостоятельное инфобезное плавание.

Уходя в академ, я был весьма average студентом, который лишь на 3 курсе впервые запустил Linux и только спустя неделю запомнил как выходить из vim'а.

Что успело произойти за время академа

— 1 год
- провёл свыше 30 лекций студентам (и не только)
- проработал год куратором группы студентов безопасников (пообещав себе больше никогда этим не заниматься)
— 2 год
- понял как самообучаться (как-нибудь напишу пост об этом)
- попал на стажировку в DeteAct и успешно пропустил её, поставив в приоритет Школу ИБ от Яндекса
- провалил собеседование в бизон
- делал CTF таски (порой п‌р‌о‌к‌л‌я‌т‌ы‌е‌ ‌ ) для Codeby
- выбил бесплатные проходки на PHDays 12 и OFFZONE
- нашёл свои первые баги на багбаунти
- перешёл с Python на Go, выпустив subchase
- успешно прошёл собеседование и устроился пентестером в бизон
- выиграл свой первый хакатон
- выступил с докладом Offensive DevTools
- поучаствовал в Standoff Hacks
-
избавился от игровой зависимости, продав консоль и удалив все аккаунты (потратил в играх 6.000+ часов)
- отчислился из колледжа по собственному желанию

По пунктам - всё круто и радужно, одни победы, но в этих 2 годах было невероятное количество стресса и изоляции. Преподавательство и кураторство приводило к нервным срывам. При отборе на стажировку были панические атаки. При попытках бросить игры и перенаправить энергию в ИБ, я терял "игровых друзей", которых знал 6+ лет.

Впрочем, я ни о чём не жалею. Я рад, что сменил свой маршрут жизни, и нашёл то, ради чего хочу просыпаться каждый день. В моей жизни появились поддерживающие люди, наполняющие энергией. Впереди только круче, сложнее, и от того эпичнее!

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

#newyear #me
Please open Telegram to view this post
VIEW IN TELEGRAM
👍96
К чему вся эта стата из жизни автора?

К тому, что не надейся на чудо в новому году, а начни ебашить, создавая своё чудо. Будет сложно, больно, но каждая победа будет better than anything else you can imagine.

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

Всё, давай до следующего года, и чтоб в конце следующего года тоже написал "этот год был круче и сложнее всех предыдущих, но я ни о чём не жалею и горжусь собой" 👏
Please open Telegram to view this post
VIEW IN TELEGRAM
10❤‍🔥5
это мы читаем
2
Forwarded from HaHacking
🎄 #события #заметки #web #infrastructure #mobile #offense #defense #devsecops #malware #reverse #forensics #iot

➡️От лица HaHacking хочу поздравить каждого с наступившим Новым годом (дракона, кстати 💻)! 🔔⭐️

⭐️ Желаю срабатывания своих кавычек и несрабатывания чужих WAF'ов, побольше ивентов и инвайтов на ивенты, а также моральных сил, чтобы стойко переносить любой инцидент или статус отчёта! И, конечно, всего общечеловеческого: родных и близких рядом, искристой улыбки на лице и тепла на душе;


🎁 В честь праздника – символический подарок:

🧩 Бот @HaHacking2023bot

🧩 Карта qwqoro.github.io


Собрала 150 статей 2023 года выпуска, которые оставили наиболее яркий след в моей памяти; Благо спектр любопытных для меня тем довольно широкий, так что каждый сможет найти на созданной мною карте уголок, соответствующий его интересам и уровню погружения 🚗

⬆️ Организовала для них небольшой город, распределила по категориям и кратко описала каждую статью в карточках внутри зданий ‼️


Читайте, вдоволь наевшись салатов, тепло вспоминайте уходящий год и радушно встречайте следующий. С Новым годом!


➡️Enjoy! 🐇

   @HaHacking  🐇🎄
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥62
вольтаж
Сегодня читал доклад по использованию Chrome DevTools при тестировании веба. Рассказал что лежит за пределами "посмотреть код элемента" и какими суперсилами обладает панели разработчика, с помощью которых ты сможешь тестировать веб без бурпа под рукой #research…
Кроме невероятной панели разработчика, в Chrome также невероятно удобно разделять проекты на профили.

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

Получил проект, поставил расширения, зашёл в нужные аккаунты, пробил веб, написал отчёт и удалил/архивировал профиль.

За наводку спасибо крутому пентестеру Артёму (его канал)

#chrome #tricks
3🔥3
Есть 100 хостов с доступным SSH. Нужно прогнать Terrapin Scanner на потенциальную уязвимость к атаке Terrapin. Сканер принимает только один хост в качестве цели. Твои действия?

Можно завернуть в shell'овский цикл, построчно проходясь по файлу и подставляя строки как переменные в команду.


cat hosts.txt \
| while read line; do \
Terrapin-Scanner --connect $line; \
done


Из минусов - много букв + итерируешься только последовательно, без всякой параллельности / асинхронности


Ещё вариант, использовать загадочный xargs, "построчно" проходящий по вводу (stdin) или файлу, а после подставляющий строки как из цикла выше.


xargs -a hosts.txt -P 5 -I HOST \
Terrapin-Scanner --connect HOST


Через -I HOST определил "переменную" для строк из ввода, а с помощью -P 5 заставил запускать сканеры в 5 процессах одновременно.

Стоило нажать Enter, как xargs прошёлся по строкам от cat и начал запускать до 5 процессов Terrapin сканера одновременно, просканировав хосты за считанные секунды.

Этот же подход применим для любых других ситуациях, где нужно быстро распарсить и обработать построчные элементы.

#tricks #machineops
🔥8❤‍🔥2
Если нужно исполнить последовательность команд, связанных операторами, то оборачивай команды в sh -c "command1; command2" и передавай в xargs. Подобно команде ниже (взял отсюда)

xargs -a subs.txt -I@ sh -c 'assetfinder -subs-only @ | anew | httpx -silent  -threads 100 | anew httpDomain'
4❤‍🔥2
👁 Курс на мисконфиги. Как поймать проблемный CORS на проде

На новогодних праздниках, вместо поедания мандаринов, решил совместно с SidneyJob, провести исследование поведений браузеров при мисконфигурации CORS.

Разобрали как работает SOP и CORS, посмотрели возможные мисконфиги и способы их эксплуатации, провели несколько экспериментов, и даже вспомнили, как работают регулярки.

Мы даже сделали для этого отдельную лабу! В ней ты сможешь создавать свои PoC'и при мисконфигурация CORS'a и сразу же кидать на них ссылки уже в отчёте.

Всё получившееся собрали вместе и выпустили как нашу первую статью на xakep.ru. Приятного чтения!

https://xakep.ru/2024/01/18/cors-cheatsheet/

#web #client_side #research
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥8👍4
Channel photo updated
Channel name was changed to «вольтаж»
Снимаю уровень серьезности с канала и возвращаюсь после солидного выгорания. Вновь буду тыкать кавычки и писать пласты текста

За одно, сменил никнейм с tokiakasu на @w0ltage , ибо как меня только не называли: токиасука, токийская лапша или "хз как читается".

По итогу, только я мог произнести его нормально. Что иронично, ибо tokiakasu переводится как "make it clear"
😁51
xz бэкдор

Уже все написали про бэкдор, но без разбора гениальности этого бекдора, чем я сейчас и займусь.

Для тех, кто в танке - в библиотеке liblzma, для пакета xz, позволяющим сжимать файлы в нечто с расширением .xz, обнаружили бэкдор, позволяющий спокойно подключиться к вашему SSH серверу.

Причём, бэкдор есть только в .tar архивах, приложенных к релизам 5.6.0-1, а сам бэкдор был найден не секьюрити ресерчером, а обычным прогером, когда тот заинтересовался "почему потребление CPU растет x10 при подключении по SSH"

Теперь к разбору цепочки поставок в компрометацию сервера

0. в файле конфигурации исполняется скрипт build-to-host.m4, модифицирующий Makefile для билда, если на хосте запущен процесс sshd в /usr/bin

1. делает он это через "тестирование" с архивами bad-3-corrupt_lzma2.xz и good-large-compressed.lzma (не используемые для тестов где-либо ещё)

2. тесты приводят к исполнению кода, сжатому в bad-3-corrupt_lzma2.xz, который распаковывает архив good-large-compressed.lzma

3. код внутри good-large-compressed.lzma исполняется, приводя к внедрению liblzma_la-crc64-fast.o (сам бэкдор) в Makefile для liblzma

4. после билда и успешной установки, бэкдор перехватывает исполнение через подмену ifunc resolvers для crc32_resolve() и crc64_resolve(), меняя код на вызов _get_cpuid()

ifunc - механизм glibc, позволяющая реализовывать функцию разными способами, и выбирая между реализациями во время работы программы


5. после бекдор мониторит динамическое подключение библиотек к процессу через тут же поставленный audit hook, ожидая подключение библиотеки RSA_public_decrypt@got.plt

6. увидев подключение RSA_public_decrypt@got.plt, бекдор подменяет адрес библиотеки на адрес подконтрольного кода

Готово! Теперь, при подключении по SSH, в контексте перед аутентфикацией по ключу, процесс исполнит подконтрольный злоумышленнику код =)

Для великих пывнеров, разрабов малвари и прочих заинтересованных, рекомендую почитать текст оригинального письма, описывающего бэкдор и описание ситуации с бэкдором на гитхабе

EN: https://w0ltage.github.io/blog/Articles/xz-v5.6.0-1-backdoor

#infrastructure #research #vulnerability_research
🤯8🔥6
Пометка из комментариев, если запутались "а как это сжатие в архив связано с ssh, это же разные бинари". Вся проблема в библиотеке lzma, которая иногда становится зависимостью OpenSSH
Forwarded from вольтаж
Да, ибо liblzma порой становится зависимостью OpenSSH. Обычно, это может произойти, когда дистрибутив патчит OpenSSH для поддержки Systemd уведомлений, от чего libsystemd начинает зависеть от liblzma. Поэтому, ванильный OpenSSH не уязвим к этому бэкдору

источник - пост на арч форуме по бэкдору
это мы читаем

#web #client_side #xss #tool
🔥3
Forwarded from wr3dmast3r vs pentest
Знакомимся с DOOM DOM Invader, или как найти DOM-XSS на Habr во время написания статьи 😔

Сегодня поговорим про инструмент DOM Invader, узнаем некоторые причины появления DOM-уязвимостей и проанализируем несколько примеров уязвимого JavaScript-кода 🖼️

Также вы узнаете, какой потенциальный импакт можно показывать команде BugBounty для получения выплаты за Client-Side уязвимость 👀

Подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
41