3 лайфхака для пентестинга — 23 июля 2026 г. в 10:00:02.935
3 лайфхака для пентестинга 👋 Приветствую в мире цифровой безопасности! Расскажу ещё о трех полезных фишках при пентесте. ⏺CRLF Injection - если приложение подставляет пользовательский ввод в HTTP-заголовки ответа без фильтрации символов \r\n, можно дописать произвольные заголовки или вообще тело ответа: GET /redirect?url=https://example.com%0d%0aSet-Cookie:%20session=hacked HTTP/1.1 %0d%0a это URL-encoded \r\n - граница между заголовками. Сервер отдаёт редирект и попутно устанавливает произвольную куку. Можно пойти дальше и добавить полноценный HTTP-ответ, разделив оригинальный пакет на два - это HTTP Response Splitting, который позволяет отравить кэш или подсунуть жертве поддельный контент от имени легитимного сервера. ⏺LaTeX Injection - когда приложение принимает LaTeX-документы для конвертации в PDF через pdflatex или xelatex, команды интерпретируются, как реальный LaTeX-код: \immediate\write18{cat /etc/passwd > /tmp/out.txt} \input{/tmp/out.txt} \write18 выполняет shell-команду если включён флаг –shell-escape (и он часто включён по умолчанию в онлайн-конвертерах). Результат попадает в готовый PDF через \input. Без shell-escape всё равно можно читать файлы напрямую: \input{/etc/passwd} Ищем везде где есть загрузка .tex файлов или поля ввода которые идут в LaTeX-шаблон - резюме-генераторы, научные редакторы, отчёты. ⏺ReDoS - регулярные выражения с вложенными квантификаторами могут требовать экспоненциального времени на специально составленные строки. Если валидация на бэкенде использует уязвимое regex, сервер можно положить одним запросом: import re # Уязвимое regex: (a+)+ pattern = re.compile(r'^(a+)+$') # Строка которая вызывает catastrophic backtracking evil = "a" * 30 + "!" # Этот матч будет выполняться секунды или минуты pattern.match(evil) Тестируем через отправку специальной строки и измерение времени ответа - значительное увеличение латентности при увеличении длины строки говорит о уязвимом паттерне. Особенно часто встречается в валидации email, URL и сложных форматов данных написанных без учёта backtracking. 🤖Бесплатный ChatGPT

