
Архив Top 10 Web Hacking Techniques — все номинанты с 2006 года, сохранённые
Полный архив Top 10 Web Hacking Techniques — все номинированные техники (не только победители) за каждый год начиная с 2006, плюс PDF-снимки оригинальных анонсирующих постов, чтобы записи пережили своих хостингов.
Ищите по всем техникам, фильтруйте по годам и открывайте любой сохранённый документ, не покидая браузер.
Обзор по годам · Где что находится · Структура файлов · Три эпохи · PDF-архив · Face the Judge · Поддержка · Участие
Каждый год начиная с 2006 сообщество веб-безопасности номинировало самые инновационные исследования в области веб-хакинга, голосовало и определяло Top 10. Список был основан Jeremiah Grossman и сегодня продолжается James Kettle в PortSwigger.
Однако ежегодные анонсирующие посты имеют свойство исчезать — блог WhiteHat Security (дом списков 2011–2015) уже исчез. Этот репозиторий хранит всё в одном долговечном, доступном для поиска месте:
[!IMPORTANT] Годовые списки полны: всё, что было официально номинировано, включено. Тем не менее раунды номинаций иногда пропускали заметные исследования. Если вы знаете о работе, которая должна была быть в списке за какой-то год, откройте issue или PR — всё, что квалифицируется как номинант на технику веб-хакинга за тот год, будет рассмотрено и, если подходит, добавлено в соответствующий год. Поздние дополнения по аудиту визуально отделены от оригинальных номинаций, требуют полной приватной оценки по текущим критериям достоинства judging skill и фиксируют Added / Not added в
ai-evaluation/.
[!TIP] Многие старые ссылки умерли. Вставьте любой мёртвый URL в Wayback Machine — большинство сохранено там, а PDF-архив сохраняет сами страницы с объявлениями.
webhacklist/
├── 2006.md … 2025.md ← the lists — every nominated technique, one file per year
├── <year>-ai.md ← AI-collected candidates for a year with no vote yet — machine-assembled, unreviewed, kept deliberately separate from the curated lists above
├── ai-evaluation/<year>/ ← candidate links, Added / Not added, and decision history
├── original-listings/ ← PDF snapshots of the original announcement posts
│ ├── <year>-nominees.pdf ← the full nominee list for that year
│ ├── <year>-top10.pdf ← the post naming the winning ten
│ └── README.md ← per-year index, notes, and archive rationale
├── website/ ← production progressive archive website
│ ├── archive-years.json ← publishing registry
│ └── data/ ← generated small catalogue + one JSON shard per collection
├── tools/ ← the capture pipeline that builds the PDF archive
│ ├── capture_pdf.py ← headless-Chrome capture driver + verifier
│ ├── sources.json ← manifest: what to capture, from where, with assertions
│ └── capture-report.json ← provenance log of the last run
└── assets/ ← logo and artwork
Каждый <year>.md начинается с раздела ## Top 10, в котором перечислены десять техник,
действительно победивших в голосовании того года, в порядке занятых мест, каждая с указанием своего ранга:
## Top 10
- [Blind SSTI](https://github.com/vladko312/Research_Successful_Errors) **#1**
- [ORM Leaking More Than You Joined For](https://www.elttam.com/blog/leaking-more-than-you-joined-for/) **#2**
Каждый год файл использует ту же структуру: один пункт - на технику, без
завершающих обратных слешей и без пустых строк внутри списков.
Всё остальное, номинированное в том году, следует под ## Other nominations, без
ранжирования и в исходном порядке. Так вы можете прочитать десять, которые выделились,
не теряя длинный хвост — где часто и скрывается по-настоящему новаторская работа.
[!NOTE] Ранги взяты из анонсирующих постов, но текст записи остаётся таким, каким он был в списке номинантов. Заголовок победителя в посте с результатами иногда короче или сформулирован иначе, чем его номинация, поэтому эти два текста не всегда читаются одинаково.
В течение четырёх лет организаторы не допускали некоторые исследования к конкурсу, чтобы
избежать конфликта интересов. Вместо того чтобы дать им исчезнуть, эти записи находятся
в начале ## Other nominations, каждая помечена этапом, с которого она была исключена —
этапы различались, поэтому и формулировки тоже — под примечанием, объясняющим, что
произошло:
| Год | Исключено | Почему |
|---|---|---|
| 2016/17 | Cracking the Lens; XSS without HTML | Исследования PortSwigger были исключены заранее; к моменту, когда систему самоотвода заменили этим правилом, было слишком поздно возвращать их обратно, поэтому они даже не попали в список номинантов |
| 2019 | HTTP Desync Attacks | Победило в голосовании сообщества, но James Kettle отказался ставить собственное исследование на первое место |
| 2024 | Gotta cache 'em all; Splitting the email atom; Listen to the whispers | Все три дошли до финальной пятнадцатки и затем были исключены из голосования жюри |
| 2025 | HTTP/1.1 must die | Дошло до финальной пятнадцатки, исключено из топ-10 жюри |
Во все остальные годы организаторы заявляют, что их собственные исследования участвовали на общих основаниях — в 2020 году Portable Data ExFiltration от PortSwigger заняло 2-е место, а в 2021 году HTTP/2: The Sequel is Always Worse заняло 2-е место — так что в тех годах ничего не пропущено.