Тайминг-атаки
Reading time: 3 minutes
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.
warning
Для отримання глибокого розуміння цієї техніки перегляньте оригінальний звіт з https://portswigger.net/research/listen-to-the-whispers-web-timing-attacks-that-actually-work
Основна інформація
Основна мета тайминг-атаки полягає в тому, щоб мати можливість відповідати на складні питання або виявляти приховані функції, просто перевіряючи різницю в часі у відповідях на подібні запити.
Традиційно це було дуже складно через затримки та джиттер, які вводилися як мережею, так і сервером. Однак, з моменту відкриття та вдосконалення атаки Race Condition Single Packet, стало можливим використовувати цю техніку для усунення всіх затримок мережі з рівняння.
Залишаючи лише затримки сервера, тайминг-атаки стають легшими для виявлення та зловживання.
Відкриття
Прихована атакувальна поверхня
У блозі коментується, як за допомогою цієї техніки вдалося знайти приховані параметри та навіть заголовки, просто перевіряючи, що коли параметр або заголовок були присутні в запиті, була різниця в часі приблизно 5 мс. Насправді, ця техніка відкриття була додана до Param Miner у Burp Suite.
Ці різниці в часі можуть бути викликані тим, що був виконаний DNS-запит, деякі журнали були записані через недійсний ввід або тому, що деякі перевірки виконуються, коли параметр присутній у запиті.
Щось, що потрібно пам'ятати, виконуючи такого роду атаки, це те, що через приховану природу поверхні ви можете не знати, яка насправді причина різниць у часі.
Неправильні налаштування зворотного проксі
У тому ж дослідженні було зазначено, що техніка таймінгу була чудовою для виявлення "обмежених SSRF" (які є SSRF, що можуть отримати доступ лише до дозволених IP/доменів). Просто перевіряючи різницю в часі, коли встановлено дозволений домен в порівнянні з тим, коли встановлено недозволений домен, допомагає виявити відкриті проксі, навіть якщо відповідь однакова.
Як тільки відкритий проксі з обмеженнями виявлено, стало можливим знайти дійсні цілі, аналізуючи відомі піддомени цілі, і це дозволило:
- Обійти брандмауери, отримуючи доступ до обмежених піддоменів через відкритий проксі замість Інтернету
- Більше того, зловживаючи відкритим проксі, також можливо виявити нові піддомени, доступні лише внутрішньо.
- Атаки на підробку фронтенду: Фронтенд-сервери зазвичай додають заголовки для бекенду, такі як
X-Forwarded-For
абоX-Real-IP
. Відкриті проксі, які отримують ці заголовки, додадуть їх до запитуваного кінцевого пункту, отже, зловмисник зможе отримати доступ до ще більшої кількості внутрішніх доменів, додаючи ці заголовки з дозволеними значеннями.
Посилання
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.