This media is not supported in your browser
VIEW IN TELEGRAM
🚩 Новые задания на платформе Codeby Games!
⚙️ Категория Реверс-инжиниринг — Ржавый ARM
🕵️ Категория Форензика — Осторожнее с доверием
🌍 Категория Веб — Crawler
Приятного хакинга!
🕵️ Категория Форензика — Осторожнее с доверием
Приятного хакинга!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20👍6🎉4 3🥰2
Новый курс от Академии Кодебай! 😎
🔸 Старт курса 22 июля.
⌨️ Узнать подробнее
Друзья, всех приветствую! Меня зовут Денис Соколов, и я старший архитектор по информационной безопасности и автор курса «Профессия Пентестер».
Как понятно из названия, это комплексное обучение по тестированию на проникновение, в ходе которого вы поработаете в лабораториях, получите практические навыки в сфере этичного хакинга, разберетесь, что такое Kill Chain, научитесь проводить внутреннее и внешнее тестирование на проникновение.
Если хотите сделать свой шаг в сфере наступательной кибербезопасности и BugBounty — буду ждать Вас на своем курсе!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28🔥11 7❤4👎2
В третьей части цикла статей про PE-файлы мы поговорим об импорте в PE-файлах. Узнаем, как правильно искать уязвимости и что стоит учитывать при анализе.
❓ Помните ли вы времена, когда Win95 только вышла, и все работало на процессорах i386 с тактовой частотой около 40 МГц? Разработчики PE-формата тогда придумали три способа, как справиться с импортом API из системных dll:
1. Статический импорт "Bound": Компилятор прописывает имена библиотек и адреса API в программу. Это экономит время на загрузку, но может привести к краху приложения, если версии библиотек изменятся.
2. Динамический импорт: Универсальный подход, где адреса функций вычисляются загрузчиком после загрузки программы в память. Да, это медленно, но зато надёжно.
3. Отложенный импорт "Delay": Загружаем функции только тогда, когда они реально нужны. Это сокращает время первоначальной загрузки, но может замедлить выполнение программы.
🕯 Структура и иерархия импорта
Система импорта в PE-файлах - это настоящая иерархия. Начало этой иерархии лежит в каталоге
🗓 Основная таблица "Image Import Table"
Каталог начинается с нуля, а сам каталог является частью опционального заголовка. Здесь содержится массив дескрипторов, каждый из которых описывает импорт из одной dll. Поле
📎 Статический импорт и его тонкости
Старый добрый статический импорт использует поле
💡 РЕ32+ без импорта
Заглянем в схемы импорта «Bound» и узнаем, как можно создавать приложения без секции импорта вообще. Представьте, никакого импорта — чистый хардкор!🥇
Это возможно благодаря тому, что ОС проецирует Kernel32 и Ntdll.dll во все пользовательские процессы. Главная задача - найти базу Kernel32, пробраться к её экспорту и вытащить оттуда адреса всех необходимых API.
➡️ Читать подробнее
1. Статический импорт "Bound": Компилятор прописывает имена библиотек и адреса API в программу. Это экономит время на загрузку, но может привести к краху приложения, если версии библиотек изменятся.
2. Динамический импорт: Универсальный подход, где адреса функций вычисляются загрузчиком после загрузки программы в память. Да, это медленно, но зато надёжно.
3. Отложенный импорт "Delay": Загружаем функции только тогда, когда они реально нужны. Это сокращает время первоначальной загрузки, но может замедлить выполнение программы.
Система импорта в PE-файлах - это настоящая иерархия. Начало этой иерархии лежит в каталоге
DATA_DIRECTORY
. В центре внимания всегда находится таблица адресов IMPORT_ADDRESS_TABLE
(IAT), независимо от выбранной схемы импорта. Интересный момент: поле TimeDataStamp
играет важную роль в процессе импорта.Каталог начинается с нуля, а сам каталог является частью опционального заголовка. Здесь содержится массив дескрипторов, каждый из которых описывает импорт из одной dll. Поле
OriginalFirstThunk
указывает на начало IMPORT_LOOKUP_TABLE
, где лежат 32-битные значения для каждой функции API. Интересный момент: если старший бит взведён, то это ординал (номер) функции в экспорте dll, иначе это RVA-адрес записи с именем функции.Старый добрый статический импорт использует поле
TimeDataStamp
для проверки валидности связывания. Если всё хорошо, загрузчик продолжает работу, если нет - переходит к динамическому импорту. В более новой схеме Bound
, информация о связывании хранится в таблице, на которую указывает запись каталога Bound
. Важно отметить, что поле TimeStamp
в дескрипторе импорта указывает на тип связывания: 0 - динамический импорт, -1 - новая схема Bound
, и все остальные значения - старая схема.Заглянем в схемы импорта «Bound» и узнаем, как можно создавать приложения без секции импорта вообще. Представьте, никакого импорта — чистый хардкор!
Это возможно благодаря тому, что ОС проецирует Kernel32 и Ntdll.dll во все пользовательские процессы. Главная задача - найти базу Kernel32, пробраться к её экспорту и вытащить оттуда адреса всех необходимых API.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13 10👍7❤3
Что такое SSTI(Server-side template injection)?
👩💻 Уязвимость, которая возникает, когда злоумышленник может внедрить вредоносный код в шаблон, который выполняется на сервере. Давайте рассмотрим пример, демонстрирующий уязвимый фрагмент кода с использованием Jinja:
‼️ В этом уязвимом коде параметр имени из запроса пользователя напрямую передается в шаблон с помощью функции "рендеринга". Потенциально это может позволить злоумышленнику внедрить вредоносный код в параметр имени, что приведет к внедрению шаблона на стороне сервера.
👩💻 Payload {{плохой код}} вводится в параметр имени.
Пример payload'а:
Вывод:
output = template.render(name=request.args.get('name'))
Пример payload'а:
https://codeby.ex/?user={{7*7}}
Вывод:
49
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27❤9🔥5
Подготовьтесь к тому, что безопасность никогда не будет статичной, и всегда будут новые вызовы и возможности для исследования.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15👍7🔥5 4💯1
🚩 Новые задания на платформе Codeby Games!
🔑 Категория Криптография — Слово за слово и Холмы
🕵️ Категория Форензика — Гул Земли 2
🏆 Категория Квесты — Возрождение
Приятного хакинга!
🕵️ Категория Форензика — Гул Земли 2
Приятного хакинга!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍8 7❤2🤩1
Трюки с таблицей импорта РЕ-файла 🖱
Сегодня мы разберем техники манипуляций с таблицей импорта в PE-файлах. Эта статья для тех, кто хочет на практике понять, как работают исполняемые файлы и как можно использовать это знание для защиты своего кода от анализа.🛡
✔️ Общее положение дел с импортом: Изучим основы анализа исполняемых файлов, особенно в контексте импорта API из системных DLL. Посмотрим, как различные инструменты и процессы взаимодействуют с файлами на диске и в памяти, и как это влияет на анализ.
✔️ Импорт API по ординалу: Разберемся, как использовать порядковые номера (ординалы) для импорта функций, что позволяет скрыть использованные функции от инструментов анализа. Узнаем, как это работает и какие ловушки ждут нас на этом пути.
✔️ Ошибки в реализации дескрипторов импорта: Исследуем возможности манипуляции с таблицей импорта, включая удаление и замену записей, чтобы сделать анализ файла еще более сложным для инструментов анализа.
📌 Читать подробнее
#pe_file #ordinal #iat
Сегодня мы разберем техники манипуляций с таблицей импорта в PE-файлах. Эта статья для тех, кто хочет на практике понять, как работают исполняемые файлы и как можно использовать это знание для защиты своего кода от анализа.
#pe_file #ordinal #iat
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16 8🔥5
Что такое LFI/RFI(Включение локального файла/Удаленное включение файла)?
🔴 Удаленное включение файла: файл загружается с удаленного сервера
🔴 Включение локального файла: сервер загружает локальный файл
Уязвимость возникает, когда пользователь может каким-либо образом контролировать файл, который будет загружен сервером.
‼️ Уязвимые функции PHP:
Пример payload'a:
*👩💻 Полный список Payload'ов есть в /usr/share/wordlists/... (Kali linux)
Вывод:
Уязвимость возникает, когда пользователь может каким-либо образом контролировать файл, который будет загружен сервером.
require, require_once, include, include_once.
Пример payload'a:
https://codeby.ex/?data=../../../../etc/passwd
*
Вывод:
Содержимое файла passwd
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15 6❤🔥2❤2🔥1
Курс "Профессия Пентестер" стартует 22 июля!
- Научитесь атаковать сети, WEB-сайты, операционные системы и локальные устройства и проводить внутренний и внешний пентест
- Участвуйте в BugBounty программах или постройте карьеру в сфере информационной безопасности
Полный цикл обучения:
- от освоения Kali Linux и администрирования, до написания эксплойтов и шелл-кода, обхода антивирусных решений
- от сетевой разведки до эксплуатации уязвимостей, повышения привилегий и закрепления в сети
Хотите стать пентестером? Присоединяйтесь к нам – защищайте мир от угроз, находя уязвимости и предотвращая кибератаки!
Пишите нам @Codeby_Academy или Узнайте подробнее о курсе
- Научитесь атаковать сети, WEB-сайты, операционные системы и локальные устройства и проводить внутренний и внешний пентест
- Участвуйте в BugBounty программах или постройте карьеру в сфере информационной безопасности
Полный цикл обучения:
- от освоения Kali Linux и администрирования, до написания эксплойтов и шелл-кода, обхода антивирусных решений
- от сетевой разведки до эксплуатации уязвимостей, повышения привилегий и закрепления в сети
Хотите стать пентестером? Присоединяйтесь к нам – защищайте мир от угроз, находя уязвимости и предотвращая кибератаки!
Пишите нам @Codeby_Academy или Узнайте подробнее о курсе
👍17 10🔥8❤5😁1
В новой статье найдем подход к обработке больших объемов данных в .csv файлах с различной структурой столбцов и содержимым. Это может быть особенно полезно для тех, кто сталкивается с необходимостью нормализации данных перед их дальнейшим анализом или использованием в проектах.
❓ Задача:
Для этого используем комбинацию предварительной обработки файлов с помощью EmEditor и написания скрипта на Python для дальнейшей нормализации данных.
✔️ Обработка текста Ф.И.О.
Для нормализации данных в столбцах с Ф.И.О. можно использовать функции Python для работы со строками. Например, можно написать функцию, которая удаляет лишние символы, заменяет латинские буквы на русские (если это необходимо), и нормализует формат Ф.И.О., удаляя лишние пробелы и тире.
✔️ Нормализация номера телефона
Для приведения номеров телефонов к единому виду можно использовать регулярные выражения или специальные функции Python. Например, можно удалить все нецифровые символы и добавить префикс, если он отсутствует.
✔️ Нормализация адреса электронной почты
Адреса электронной почты также могут требовать нормализации. Это может включать в себя удаление лишних символов, проверку наличия символа "@", а также доменной части адреса.
✔️ Нормализация даты рождения
Дата рождения может быть представлена в различных форматах. Для ее нормализации можно использовать модули Python для работы с датами и временем, такие как
🖥 Например:
➡️ Читать подробнее
Обработать несколько .csv файлов и нормализовать содержимое столбцов таким образом, чтобы данные были одного формата. Например, привести номер телефона из формата "8 (908) 800 80 80" к виду "79088008080".
Для этого используем комбинацию предварительной обработки файлов с помощью EmEditor и написания скрипта на Python для дальнейшей нормализации данных.
Для нормализации данных в столбцах с Ф.И.О. можно использовать функции Python для работы со строками. Например, можно написать функцию, которая удаляет лишние символы, заменяет латинские буквы на русские (если это необходимо), и нормализует формат Ф.И.О., удаляя лишние пробелы и тире.
Для приведения номеров телефонов к единому виду можно использовать регулярные выражения или специальные функции Python. Например, можно удалить все нецифровые символы и добавить префикс, если он отсутствует.
Адреса электронной почты также могут требовать нормализации. Это может включать в себя удаление лишних символов, проверку наличия символа "@", а также доменной части адреса.
Дата рождения может быть представлена в различных форматах. Для ее нормализации можно использовать модули Python для работы с датами и временем, такие как
datetime
. Это позволит привести даты к единому формату.import re
import string
def fio_normalize(fio: str) -> str:
"""Нормализация ФИО. Проверка, является или ФИО написанным латиницей. Удаление цифр, тире."""
fio = fio.strip().lower()
fio = re.sub(r'[^a-zа-я-ё ]', "", fio).strip()
fio = dash_clear(fio)
if is_latin(fio):
fio = fio.title()
else:
fio = "".join([replacer(x) if x in string.ascii_letters else x for x in fio])
fio = re.sub(r'[^а-я-ё ]', '', fio).title()
return fio if fio.strip() else ""
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🔥5❤2💯2
🚩 Новые задания на платформе Codeby Games!
🖼 Категория Стеганография — Плотная маскировка
🧰 Категория PWN — Вопрос
🌍 Категория Веб — Игровой автомат
Приятного хакинга!
Приятного хакинга!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍7❤🔥6🎉2
Освойте методы атаки и защиты на курсе SQL Injection Master! Аналогов по объему практики в СНГ и EN-cегменте нет.
Что ждет вас на курсе?
Запись до 25 июля. Продолжительность - 3 месяца
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤6🔥4❤🔥1
Новость от ESET: обнаружен зловред HotPage, замаскированный под блокировщик рекламы, активный с конца 2023 года.
🗣️ Этот софт загружает драйвер ядра, позволяющий злоумышленникам запускать код с привилегиями на Windows. Инсталлятор устанавливает драйвер и две библиотеки, перехватывающие сетевой трафик браузеров.
•
Изменять содержимое страниц•
Перенаправлять пользователя•
Открывать новые вкладки по заданным критериям•
Собирает и передает системную информацию на сервер, связанный с китайской компанией Hubei Dunwang Network Technology Co., Ltd.Please open Telegram to view this post
VIEW IN TELEGRAM
😱14🔥3💯3❤2
Подписка Basic:
1. Доступ к райтапам
Вы получаете доступ к авторским подробным инструкциям по задачам после их решения. Это поможет вам лучше понять, как решать задания и улучшить свои навыки в области кибербезопасности.
2. VPN-конфигурации (изолированные серверы)
Доступ к изолированным VPN-серверам для выполнения заданий. Это обеспечивает более безопасное и стабильное соединение.
3. Доступ к заданиям, находящихся в архиве (retired)
Возможность проходить архивные задачи, которые были загружены на платформу более пяти месяцев назад, но теперь доступны только по подписке Basic.
Стоимость подписки символическая - 990р. Вы получаете не только доступ к новому функционалу и полезным материалам, но и окажете необходимую для нас поддержку.
Приятного хакинга!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22👎14🔥11❤🔥3❤2
Что такое CMD Injection (Command Injection) ❓
👩💻 Command Injection - это одна из разновидностей внедрения кода. Её особенностью является выполнение несанкционированных команд операционной системы на удалённом сервере через уязвимое приложение.
👩💻 Пример уязвимого кода на языке PHP:
Если мы используем специальные символы, то фильтрация входных данных будет нарушена.
Тем самым system выполнит нашу команду.
🖥 Пример payload'a:
<?php
if (isset($_GET['filename'])) {
system("touch /codeby/" . $_GET['filename'] . ".cdb");
}
?>
Если мы используем специальные символы, то фильтрация входных данных будет нарушена.
`command`
$(command)
Тем самым system выполнит нашу команду.
`ls`
$(ls)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23❤6🔥4😁2
🗣️ Представители WazirX заявили, что атака произошла из-за несоответствия между данными в интерфейсе Liminal и реальным содержимым транзакции. Они считают, что пейлоад был подменен, чтобы злоумышленник получил контроль над кошельком.
•
5,43 млрд токенов SHIB•
15 200 токенов Ethereum•
20,5 млн токенов Matic•
640 млрд токенов Pepe•
5,79 млн USDT•
135 млн токенов Gala#новости
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥8❤4❤🔥2👎1
#новости
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥4💯4❤2
Пример такого запроса:
codeby.net/message_dialog.jsp?id=313
Благодаря тому что мы можем менять значение параметра id, мы можем видеть диалог между пользователями.
*программа для создания скриншотов
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18👍9❤🔥7🤯2👎1😱1😢1
🚩 Новые задания на платформе Codeby Games!
👩💻 Категория Active Directory — Путешественник
🎢 Категория Разное — Змеелов
🔎 Категория OSINT — Окунемся в историю?
Приятного хакинга!
Приятного хакинга!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥19❤9👍8👎2😢2
#вакансия
🚀 Проектная работа
💰 Сдельная оплата
📆 Свободный график
🚩 Специалист по созданию заданий для CTF Attack Defense по веб-безопасности
Обязанности:
— Разработка и создание сценариев для заданий по веб-безопасности в рамках CTF-соревнований формата Attack Defense.
— Подготовка и внедрение атакующих и защитных сценариев, моделирование различных уязвимостей и методов их эксплуатации.
— Тестирование и верификация разработанных сценариев, обеспечение их корректной работы.
— Разработка и поддержка чекеров для автоматической проверки выполнения заданий.
— Создание подробных инструкций и документации по заданию.
Требования:
— Опыт участия в CTF-соревнованиях, понимание формата Attack Defense.
— Глубокие знания о распространенных уязвимостях веб-приложений (OWASP Top 10) и способах их эксплуатации.
— Знание одного из языков программирования: Go (Golang), Python, PHP, Java.
— Опыт работы с инструментами для тестирования безопасности (Burp Suite, OWASP ZAP и др.).
➡️ Писать @StPoV
🚀 Проектная работа
📆 Свободный график
Обязанности:
— Разработка и создание сценариев для заданий по веб-безопасности в рамках CTF-соревнований формата Attack Defense.
— Подготовка и внедрение атакующих и защитных сценариев, моделирование различных уязвимостей и методов их эксплуатации.
— Тестирование и верификация разработанных сценариев, обеспечение их корректной работы.
— Разработка и поддержка чекеров для автоматической проверки выполнения заданий.
— Создание подробных инструкций и документации по заданию.
Требования:
— Опыт участия в CTF-соревнованиях, понимание формата Attack Defense.
— Глубокие знания о распространенных уязвимостях веб-приложений (OWASP Top 10) и способах их эксплуатации.
— Знание одного из языков программирования: Go (Golang), Python, PHP, Java.
— Опыт работы с инструментами для тестирования безопасности (Burp Suite, OWASP ZAP и др.).
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🥰9😢3💯3👎1