1.1Kпросмотров
38.9%от подписчиков
8 марта 2026 г.
📷 ФотоScore: 1.2K
🕷 Поиск синтаксических ошибок: чек-лист для багхантера Syntax confusion возникает, когда два или более компонента системы по-разному интерпретируют одни и те же входные данные из-за неоднозначных или противоречивых синтаксических правил. Разногласия могут возникать между браузерами, прокси-серверами, веб-серверами, фреймворками, библиотеками или даже различными фичами в одном и том же стеке выполнения. Начинай поиск синтаксических ошибок с этих простых шагов — они помогут выявлять несоответствия в работе парсера и превратить их в практические уязвимости ⬇️ 1️⃣ Сгенерируй семантически эквивалентные варианты: getParam vs getParam[]
:443 vs :000443 2️⃣ Обрати внимание на нормализацию на каждом этапе: браузер, CDN, прокси, фреймворк приложения, библиотека 3️⃣ Намеренно инициируй пути возникновения ошибок (слишком длинные порты, некорректное экранирование) и отметь соответствующее поведение 4️⃣ Собери доказательства: анализ исходных запросов и ответов, поиск различий для выявления неожиданного поведения Если на двух этапах возникает расхождение в анализе семантического значения входных данных, проверка, примененная на одном этапе, может перестать действовать на другом, создавая тем самым несовместимый путь от «очищенных» входных данных к уязвимому поведению.