## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-HACKSPEAK-CVE-2026-62735
# CVE-2026-62735
## Информация
* Эта уязвимость была первоначально обнаружена Siyeon Wi. Я воспроизвёл уязвимость независимо в образовательных целях и для изучения.
* Уязвимость также была продемонстрирована на Pwn2Own Berlin 2026. Ссылки:
* Статус TrendAI Zero Day Initiative
* Блог TrendAI Zero Day Initiative
* Детали обновления Microsoft: CVE-2026-62735
* PoC демонстрирует крах из-за уязвимости `Integer Overflow`. С помощью этой уязвимости мы имеем примитив `Heap Overflow` -> `SYSTEM shell`.
## Краткое описание
* Уязвимость: `Integer Overflow`
* Компонент: `http.sys`
* Функция запуска: `UlpCreateInternalResponseOld`
* Версия Windows: Windows 11 25H2 26200.8875
## Детали
* Уязвимость целочисленного переполнения возникает при вычислении общего количества байтов заголовков. В результате `http.sys` выделяет память на основе `TotalHeaderBytes`, хотя заголовки требуют гораздо большего буфера. Это создаёт основу для переполнения выделения из nonpaged-пула в `UlGenerateMultipleKnownHeadersOld`:
root@kitploit:~
__int64 __fastcall UlpCreateInternalResponseOld(
sv_UL_REQUEST *Request,
unsigned __int16 EntityChunkCount,
unsigned int FixedHeaderCount,
unsigned int FixedHeaderBytes,
unsigned int MultipleHeaderCount,
unsigned int MultipleHeaderBytes,
unsigned __int16 KnownHeaderCount,
unsigned int TrailerCount,
unsigned int TrailerBytes,
char FastForwardRequested,
char CacheEligible,
char ResponseInfoPresent,
char AutomaticChunkingRequired,
char AdditionalHeaderRequired,
sv_UL_INTERNAL_RESPONSE **InternalResponseOut)
{
int VariableHeaderBytes; // r9d
int H3ExtraHeaderBytes; // r10d
unsigned int MultipleHeaderBytesLocal; // ecx
unsigned int TotalHeaderBytes; // [rsp+E8h] [rbp+60h]
...
// 0xffffff32 + 0x2e + 0 + 0xa0 = 0x4e
TotalHeaderBytes = MultipleHeaderBytesLocal + FixedHeaderBytes + H3ExtraHeaderBytes + VariableHeaderBytes;
...
}
## Журнал краха
* Bugcheck:
root@kitploit:~
*** Fatal System Error: 0x00000050
(0xFFFFCD86AE712000,0x0000000000000002,0xFFFFF807489C4362,0x0000000000000002)
Driver at fault:
*** HTTP.sys - Address FFFFF807489C4362 base at FFFFF80748860000, DateStamp 2bfcaa4c
.
Break instruction exception - code 80000003 (first chance)
A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.
A fatal system error has occurred.
For analysis of this file, run !analyze -v
nt!DbgBreakPointWithStatus:
fffff807`b26fa0d0 cc int 3
* Трассировка стека:
root@kitploit:~
0: kd> k
# Child-SP RetAddr Call Site
00 ffffe205`092ddf78 fffff807`b27afcf2 nt!DbgBreakPointWithStatus
01 ffffe205`092ddf80 fffff807`b27af21e nt!KiBugCheckDebugBreak+0x12
02 ffffe205`092ddfe0 fffff807`b26f9357 nt!KeBugCheck2+0xb2e
03 ffffe205`092de770 fffff807`b24fd030 nt!KeBugCheckEx+0x107
04 ffffe205`092de7b0 fffff807`b2443c56 nt!MiSystemFault+0x850
05 ffffe205`092de8a0 fffff807`b28badcb nt!MmAccessFault+0x646
06 ffffe205`092dea10 fffff807`489c4362 nt!KiPageFault+0x38b
07 ffffe205`092deba8 fffff807`489a6611 HTTP!memcpy+0x122
08 ffffe205`092debb0 fffff807`4897c165 HTTP!UlGenerateMultipleKnownHeadersOld+0xbdd
09 ffffe205`092ded90 fffff807`48976db0 HTTP!UlpPrepareHttpResponseOld+0x2c9
0a ffffe205`092dee70 fffff807`489361a4 HTTP!UlCaptureHttpResponseOld+0x92c
0b ffffe205`092defc0 fffff807`488f7c92 HTTP!UlSendHttpResponseIoctlOld+0x1160
0c ffffe205`092df600 fffff807`488c4db5 HTTP!UlSendHttpResponseIoctl+0x12
0d ffffe205`092df630 fffff807`b245cabb HTTP!UxDeviceControl+0xb5
0e ffffe205`092df670 fffff807`b245ca33 nt!IopfCallDriver+0x5b
0f ffffe205`092df6b0 fffff807`b2ac0e75 nt!IofCallDriver+0x13
10 ffffe205`092df6e0 fffff807`b2abfcbc nt!IopSynchronousServiceTail+0x1c5
11 ffffe205`092df790 fffff807`b2abf30e nt!IopXxxControlFile+0x99c
12 ffffe205`092dfa00 fffff807`b28bf255 nt!NtDeviceIoControlFile+0x5e
13 ffffe205`092dfa70 00007ffa`d37c0144 nt!KiSystemServiceCopyEnd+0x25
14 00000014`0d9af2d8 00007ffa`d08a3953 ntdll!NtDeviceIoControlFile+0x14
15 00000014`0d9af2e0 00007ffa`d1f93335 KERNELBASE!DeviceIoControl+0x73
16 00000014`0d9af350 00007ff7`00cb1cb4 KERNEL32!DeviceIoControlImplementation+0x75
17 00000014`0d9af3a0 00000000`00001f7f poc!main+0x924
18 00000014`0d9af3a8 00000000`00000007 0x1f7f
19 00000014`0d9af3b0 00000014`0d9af4a0 0x7
1a 00000014`0d9af3b8 00000000`00000000 0x00000014`0d9af4a0
* * *
# Пояснения к зеркалу распространения (中文)
Данный репозиторий является зеркалом распространения PoC для уязвимости **CVE-2026-62735 (Windows HTTP.sys целочисленное переполнение → переполнение nonpaged-пула → SYSTEM)** (технические пояснения см. в оригинальном README выше). Содержимое получено из публичного PoC вышестоящего репозитория и предназначено только для архивирования и распространения. PoC предназначен исключительно для исследований безопасности, проверки уязвимостей и авторизованного тестирования. Не используйте его против неавторизованных целей.
## Краткое описание уязвимости / Vulnerability Summary
* **CVE-2026-62735** / Microsoft Windows HTTP.sys Elevation of Privilege
* **Обнаружение/демонстрация** : Siyeon Wi (Pwn2Own Berlin 2026); данный PoC независимо воспроизведён **nhh9905**
* **Тип** : целочисленное переполнение (переполнение при вычислении общего количества байтов заголовков) → переполнение кучи nonpaged-пула → **повышение привилегий до SYSTEM (LPE)**
* **CVSS 3.1** : MSRC **7.8** (Important) / ZDI **8.8** (AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H)
* **Функции запуска** : `UlpCreateInternalResponseOld` / `UlGenerateMultipleKnownHeadersOld` (http.sys, старый путь кода)
* **Целевая версия** : Windows 11 25H2 26200.8875 (публичное воспроизведение); исправленная версия Windows 11 25H2 **26200.9168**
* **Способ запуска** : локальный процесс с низкими привилегиями создаёт собственный HTTP-клиент и сервер, формирует большое количество многозначных HTTP-заголовков ответа и передаёт их через IOCTL `0x12403F` (`UlSendHttpResponseIoctl`) в http.sys
* **Предварительные условия** : атакующему необходимо сначала иметь возможность выполнять код с низкими привилегиями на целевой системе (PR:L)
Основной принцип: `TotalHeaderBytes = MultipleHeaderBytesLocal + FixedHeaderBytes + H3ExtraHeaderBytes + VariableHeaderBytes` — когда количество байтов многозначных заголовков ответа доводится до значения, близкого к 2³², это 32-битное суммирование переполняется до очень малого значения (`0xffffff32 + 0x2e + 0 + 0xa0 = 0x4e`), и `ExAllocatePool3` выделяет на основе этого буфер ядра, значительно меньший реально необходимого. Затем `memcpy` в `UlGenerateMultipleKnownHeadersOld` записывает за пределы этого блока nonpaged-пула.
## Структура каталога / Layout
root@kitploit:~
poc/ poc.cpp + head.hpp —— полная эксплуатация: DQE heap spray через именованные каналы → переполнение пула с контролем 0x30 байт заголовка → произвольное чтение/запись → копирование SYSTEM token → SYSTEM shell
crash/ poc.cpp + head.hpp —— только запуск краха (проверка наличия уязвимости, вызывает bugcheck 0x50)
## Требования и использование / Requirements & Usage
* Целевая система: Windows 11 25H2 (около 26200.8875) без установленного патча; требуется возможность локального выполнения
* Сборка: для poc.cpp требуется Visual Studio (Windows) + Windows SDK, компиляция с зависимостями HTTPAPI / WinHTTP
* `crash/` и `poc/` — независимые исполняемые файлы; после успешного запуска `poc.exe` открывается SYSTEM shell
## Отказ от ответственности / Disclaimer
Данный PoC предназначен исключительно для обучения, исследований безопасности и авторизованного тестирования. Запускать его можно только на собственных системах или системах с явно полученным разрешением. Эксплуатация повышает привилегии до SYSTEM через переполнение пула ядра и может вызвать синий экран (0x50). Тестируйте в виртуальной машине, которую можно уничтожить.
## Авторство и лицензия / Attribution & License
* Обнаружитель уязвимости: **Siyeon Wi** (Pwn2Own Berlin 2026, официальная благодарность ZDI).
* Автор данного PoC: **nhh9905** (независимое воспроизведение на основе официального бюллетеня, включая полную цепочку эксплуатации до SYSTEM).
* Репозиторий распространяется под лицензией **MIT License** (см. `LICENSE`).
## Ссылки / References
* Репозиторий PoC вышестоящего автора: https://github.com/nhh9905/CVE-2026-62735
* Writeup исследователя (HackMD): https://hackmd.io/@nhh/Hy6Oem7_Me
* MSRC: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-62735
* ZDI: https://www.zerodayinitiative.com/advisories/ZDI-26-536/