Coffee cube
276 subscribers
119 photos
17 videos
24 files
82 links
Этот канал посвещен моему пути в сфере Информационной безопасности.

Выкладываю статьи по моим исследованиям, райтапы на лабораторные работы и забавные истории. Присоединяйтесь^3

По всем вопросам можете писать мне в ЛС: @ju57_4_cu63
Download Telegram
Привет^3☕️

API можно не только писать, но еще и эксплуатировать в своих целях. Об этом и поговорим)

Чаво😼

Application Programming Interface - это интерфейс общения между клиентом и сервером. Современные приложения почти полностью завязаны на API:
• фронтенд подгружает данные через API;
• мобильные приложения общаются с сервером тоже через API;
• микросервисы внутри крупных систем связываются через... API;
• интеграции (платежи, карты, рассылки) строятся на внешних что? Правильно - API;

Именно поэтому безопасность API важна безопасность всего приложения.

С чего начинается атака?

Чтобы API тестировать - нужно найти хоть какие-то ендпонты)
какие есть эндпоинты;
какие параметры они принимают;
какие методы поддерживают (GET, POST, PATCH, OPTIONS и т.д.);
есть ли ограничения по частоте запросов и как работает авторизация.

В этом может помочь документация, которая бывает в открытом доступе. Даже если ее нет - эндпоинты можно найти с помощью фаззинга, например через ffuf, или же поискать в JavaScript файлах.

🧙Пример атаки

Многие фреймворки автоматически связывают параметры из запроса с полями в базе. Если разработчик не ограничил список полей, можно «подбросить» лишние:


PATCH /api/users/123
{
"username": "wiener",
"email": "[email protected]",
"isAdmin": true
}


Если сервер примет isAdmin и сохранит - вжух, и админка у нас в кармане.

😼Как защищаться

• Делать allowlist допустимых параметров и методов;
• Проверять типы входящих данных;
• Прятать документацию, если API не публичное;
• Унифицировать обработку ошибок, чтобы не сливать лишнюю информацию;
• Не забывать про старые версии API.

Вперед к приключениям тестированию💃

Попробовать поискать и проэксплуатировать ендпоинты API, а не писать их можно в следующих лабах:

Exploiting a mass assignment vulnerability
Exploiting an API endpoint using documentation
Exploiting server-side parameter pollution in a query string
Finding and exploiting an unused API endpoint


↖️ 📕тг🤬чатик✏️посты

#web #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
5❤‍🔥5👨‍💻1
Привет^3☕️

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

Рассмотрим пример коллизионной атаки на хэши, патчинг и динамический анализ. Настоятельно рекомендую сначала попробовать решить самостоятельно, а затем изучить другие решения 😮

📎Ссылка на лабу

↖️ 📕тг🤬чатик✏️посты

#reverse #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍6🔥2👨‍💻1
Нет времени объяснять. 😒 Какие темы для постов вам нравятся?
Anonymous Poll
54%
🌐 Веб
35%
👨‍💻 Крипта
37%
😵‍💫 Реверс
38%
😄 Мемы
13%
💬 Другое (напишу в комментариях)
1👍1🤔1
Привет^3☕️

Чтож... Поговорим про уязвимости в процессе аутентификации.

Что это такое?

Аутентификация — это проверка подлинности лица, которое хочет получить доступ к системе. Если говорить проще, то система задаёт нам вопрос: «А ты точно продюсер?» Если система совсем глупая, то можно ответить «Да» и ни о чём не переживать. Но чаще всего это нужно будет подтвердить.😍

Самый базовый способ — проверка пароля. Не буду напоминать, что хранить пароль в БД в открытом виде нельзя. Так же не стоит скидывать его мне в личку @ju57_4_cu63 вместе с логином.😎

А в чём подвох?🤔

Даже не зная пароля, на этом этапе можно получить полезную информацию. Картинка к посту, конечно, мемная, но со смыслом.

Информативно описывать ошибки - это хорошо, но есть нюанс... Если явно указывать, что именно неверно - логин или пароль, то логины можно перебрать по словарю. Если приходит ошибка «неверный пароль», значит, пользователь существует. А это уже пригодится для дальнейшей атаки.

И это всё?😏 Конечно нет. Для выявления существующих пользователей может помочь задержка по времени при проверке пароля, различия в ответах сервера для существующего и несуществующего пользователя, даже блокировка аккаунта при вводе некорректного пароля.

Чё ж делать, чё ж делать🔥

Вот небольшой список рекомендаций:

Не стоит сливать действующие пароли: если пароль известен - мало что поможет. Все попытки аутентификации по HTTP нужно перенаправлять на HTTPS;
При некорректной попытке входа не сообщайте пользователю, какое именно поле неверно. Лучше использовать универсальную ошибку;
Валидируйте пароли, запрещая слишком простые и слишком длинные.

Идите и пробуйте сами😉

Описанные методы можно потрогать в следующих лабах) Удачки😮

Username enumeration via different responses
Username enumeration via subtly different responses
Username enumeration via response timing
Username enumeration via account lock


↖️ 📕тг🤬чатик✏️посты

#web #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
6❤‍🔥7🔥2👍1👨‍💻1
Привет^3☕️

Наконец то это свершилось. 17-го сентября в 10:00 (мск) состоится мой стендап 😃мое выступление про бесфайловые атаки на Linux на конференции VolgaCTF. Запасайтесь попкорном🍿 - будет трансляция! Ссылку обязательно скину, как только она появится.

В своём докладе я расскажу про тренды в малваре, связаные с запуском файлов прямо в оперативной памяти👻. Приведу пару примеров, которые встречал в процессе работы, а также покажу PoC 👨‍💻 для этих техник.

Готовьтесь смеяться, кринжевать и узнавать что-то новое)🧚


↖️ 📕тг🤬чатик✏️посты

#анонс
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍166🏆2👨‍💻1
Привет^3☕️

Это служба безопасности Сбербанка. На вашем счёте замечена подозрительная активность. Назовите код из SMS... Ну пожалуйста... Вечер в хату...😐

Как вы могли догадаться, речь пойдёт про двухфакторную аутентификацию. Чтобы не ломать себе мозг и язык - просто 2FA.

Что такое 2FA и с чем его едят? 🤌

Это дополнительный уровень защиты: помимо пароля, система требует ещё что-то — код из SMS, push-уведомление, токен или приложение (Google Authenticator, Authy, Multifactor и т.д.).
Идея в том, что даже если пароль украдут, вход будет затруднён.

Я Конор, и я проверю, как это работает на самом деле😼

email-коды - это вообще не 2FA, а та же однофакторка, только с костылями;
у некоторых сервисов 2FA проверяется только при логине в веб, но не в мобильном приложении или через API;
"обязательная" 2FA может отключаться, если угадать резервные коды или сбросить пароль;
ну а иногда разница в том, есть она или нет, нулевая.

Как атакуют😇

Фишинг: создаётся фейковая страница, куда жертва вводит и пароль, и одноразовый код;
Вишинг: ребята из службы безопасности Сбербанка лично звонят вам за кодом;
Пробелы в логике: например, вход через "забыли пароль" обходит весь процесс 2FA.

Лабки🐈‍⬛️

Очевидно, что фишить никого я не предлагаю. Но попробовать обойти 2FA всё ещё можно вот в этих лабах:

•2FA simple bypass
•2FA broken logic


↖️ 📕тг🤬чатик✏️посты

#web #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
67🎃3😁2👨‍💻1
Привет^3 ☕️

Продолжаем постигать дзен криптографии🙏. AES — пффф, конечно нет. RSA — рано. Постквантовая криптография — банально🗿. Сегодня опять XOR. Да, мой ваш любимый XOR.

В лабах попытаемся подобрать ключик для наших флагов. Это вполне себе реально. И довольно часто может пригодиться в реверсе. Поэтому стоит попробовать:3 🙌

Favourite byte
You either know, XOR you don’t

↖️ 📕тг🤬чатик ✏️посты

#crypto #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
64🔥2👨‍💻21
Привет^3

Надеюсь, что попкор и прохладительные напитки у вас под рукой, так как через час вы будете созерцать мое выступелние. Трансляцию можно найти вот на этой странице. Я выступаю на треке B. Жду вас там в 10:00 по мск🥹
Please open Telegram to view this post
VIEW IN TELEGRAM
78👏6🔥2👨‍💻1
VolgaCTF_presentation.pdf
18.1 MB
Немного измененная презентация с доклада:3
5👍6🔥3👏3👨‍💻1🆒1
Совсем забыл. В презентации есть пасхалка) Она сомнительная, но веселая. Кто первый найдет и скинет ее мне в личку - может забрать вот этот рюкзак. Он прикольный, но у меня есть свой любимчик)

↖️ 📕тг🤬чатик ✏️посты

#оффтоп
Please open Telegram to view this post
VIEW IN TELEGRAM
25👍1😎1
Привет^3☕️

Некоторые уже сдались и просили им отдать ответ, чтобы они могли спать спокойно.🗿

Пасхалка связана с моей работой, а именно с вирусной аналитикой. Стоит всегда обращать внимание на подобное, так как оно помогает разобраться в работе малварая.

И так, подсказка: все скрины делал я, в том числе скрины вредоносов. В декомпиляторах есть замечательная возможность их патчить. Поэтому ищите пасхалку в скринах декомпилированного кода:3

↖️ 📕тг🤬чатик ✏️посты

#оффтоп
Please open Telegram to view this post
VIEW IN TELEGRAM
3🙉1
Привет^3☕️

В предыдущих постах мы начали реверсивно инжинировать. Но вирусная аналитика - это не только реверс. Часто приходится разбираться в техниках, которые используют разработчики ВрПО(кто понял - тот понял)👾 для того, чтобы усложнить нам жизнь.🚽

Сегодня разберем одну из таких техник, а именно обнаружение отладчика.🐈‍⬛️

↖️ 📕тг🤬чатик ✏️посты

#reverse #malware
Please open Telegram to view this post
VIEW IN TELEGRAM
671🔥1😁1😭1👨‍💻1
Привет^3☕️

Зачем брутить пароль, если его можно просто сбросить?😎

Об этом и поговорим.

А в чем собственно дело?🙂

Вот вы сохранили хэшированный пароль. Добавили в него уникальную соль как по-питерски. Казалось бы - все секурненько. Но нет. Ведь защищать только проверку пароля недостаточно)

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

Следует проверять весь функционал сайта, который связан с аутентификацией.

Предлагаю вам оценить данный подход😮:

Password reset broken logic
Password reset poisoning via middleware

↖️ 📕тг🤬чатик✏️посты

#web #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍531
Привет^3☕️

В ROT мне ноги — сегодня снова криптография, и даже немножечко программирования.👨‍💻

Лабу не назовешь сложной, но она дает повод попробовать Python для автоматизации. Новички часто спрашивают: нужно ли им знать программирование, чтобы идти в ИБ? Ответ неоднозначный, но все же скорее нет, чем да. 🙂

Задач в ИБ много, и все разнообразные. Почти всегда они не связаны с программированием, но в тоже время умение автоматизировать какие-то задачи может здорово пригодиться: воспроизвести алгоритм при реверсе, написать какой-нибудь деобфускатор или написать имитацию C2 сервера, чтобы поймать запрос.

Поэтому не стоит зацикливаться только на программировании. Это когда-то было и моей ошибкой.😔 А если вы уже ебать лох, как и я что-то умеете — то эти знания можно здорово применить.

В разборе я буду использовать python модуль — pwntools. Его часто используют для pwn, поэтому имеет смысл с ним познакомиться. При желании лабу можно решить на любом языке, даже на brainfuck земля вам пузом. 🫡⌨️

Encoding Challenge

↖️ 📕тг🤬чатик✏️посты

#crypto #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
651❤‍🔥1
Привет^3☕️

Я уже писал про брутфорс в контексте взлома архива 📄. Поэтому рекомендую почитать пост и статью, там есть полезные ссылки на различные вордлисты.

Если не получается обойти стену, то можно ее проломить.💪 Брутфорс никто не отменял. Сложно ли это - нет. Долго ли это - да. Но таков путь.🤨

Сайты защищаются от подобных атак: блокируют IP, используют CAPTCHA. Ну а вдруг прокатит?)🤔

Предлагаю вам попробовать самим🍸:
Broken brute-force protection, IP block
Brute-forcing a stay-logged-in cookie
Offline password cracking
Password brute-force via password change


↖️ 📕тг🤬чатик✏️посты

#web #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
34👨‍💻1
Привет^3☕️

Продолжаем изучать реверс. Медленно, но верно. Помните я упомянул про XOR😇, назвав его граалем криптографии? Так вот - я не врал. Сегодня снова он)🤬

Реверс - практический навык, поэтому без практики не обойтись👉. Поэтому как всегда будут лабки:
Nostr 7
crackme1


↖️ 📕тг🤬чатик ✏️посты

#reverse #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
641👨‍💻1
Привет^3☕️

Сегодня в лабе будет достаточно интересный способ обхода аутентификации.😱 Заключается он в логической ошибке обработки паролей. А именно, парсер успешно парсит список паролей и любезно проверяет каждый из переданных. Это позволяет обойти защиту от брутфорса🏋️‍♂️.

Так что предлагаю вам попробовать решим самим. Я не шучу. Вот лаба. Идите. Решайте. Кыш😉:

Broken brute-force protection, multiple credentials per request


↖️ 📕тг🤬чатик✏️посты

#web #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
6❤‍🔥511🔥1👨‍💻1
Привет^3☕️

Нужна ли ИБ-шникам математика? Да… Нет… Возможно… Вы не понимаете, это другое

В криптографии она используется активно. Поэтому, хотите вы того или нет, придётся с ней познакомиться😐. Начнём не с самого коварного - алгоритма Евклида.🏆

Greatest Common Divisor
Extended GCD

↖️ 📕тг🤬чатик✏️посты

#crypto #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
6❤‍🔥3👍1🤝1😎1
This media is not supported in your browser
VIEW IN TELEGRAM
Привет^3☕️

Время-деньги🤑. Сегодня разберем достаточно интересный тип узявимостей, а именно ошибки в бизнес логике.

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

Идите и попробуйте сами:
Excessive trust in client-side controls
Inconsistent security controls
Weak isolation on dual-use endpoint

ПЫ.СЫ: иногда действия пользователей похожи на то, что происходит на видео

↖️ 📕тг🤬чатик✏️посты

#web #writeup
Please open Telegram to view this post
VIEW IN TELEGRAM
68🤣1