2010-04-13:

[HISPASEC Research] Windows Kernel Vulnerabilities... x5 :)

windows:security:bughunt:buffer overflow:easy
O pierwszym z bugów znalezionych przez nasz team (w składzie j00ru i ja ;>) informowałem już w lutym. Dzisiaj Microsoft opublikował info o kolejnych 5 (a w zasadzie 6ściu, ponieważ dwa z nich, które dla nas wyglądały jako oddzielne błędy, udało się załatwić jedną zmianą, więc zostały ogłoszone pod jednym numerkiem) :)

Chciałbym na początku zaznaczyć, że poniższy research był realizowany w ramach naszej współpracy z Hispasec VirusTotal :)

Błędy o których piszę, opisane przez Microsoft w MS010-21, to:
* (CVE-2010-0234) Windows Kernel Null Pointer Vulnerability
A denial of service vulnerability exists in the Windows kernel due to the insufficient validation of registry keys passed to a Windows kernel system call. An attacker could exploit the vulnerability by running a specially crafted application, causing the system to become unresponsive and automatically restart.

* (CVE-2010-0235) Windows Kernel Symbolic Link Value Vulnerability
A denial of service vulnerability exists in the Windows kernel due to the manner in which the kernel processes the values of symbolic links. An attacker could exploit the vulnerability by running a specially crafted application causing the system to become unresponsive and automatically restart.

* (CVE-2010-0236) Windows Kernel Memory Allocation Vulnerability
An elevation of privilege vulnerability exists in the Windows kernel due to the manner in which memory is allocated when extracting a symbolic link from a registry key. An attacker who successfully exploited this vulnerability could run arbitrary code in kernel mode. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights.

* (CVE-2010-0237) Windows Kernel Symbolic Link Creation Vulnerability
An elevation of privilege vulnerability exists when the Windows kernel does not properly restrict symbolic link creation between untrusted and trusted registry hives. An attacker who successfully exploited this vulnerability could run arbitrary code in kernel mode. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights.

* (CVE-2010-0238) Windows Kernel Registry Key Vulnerability
A denial of service vulnerability exists in the way that the Windows kernel validates registry keys. An attacker could exploit the vulnerability by running a specially crafted application causing the system to become unresponsive and automatically restart.

Informacje techniczne na temat powyższych błędów (oraz tego sprzed dwóch miesięcy) zostaną upublicznione na dwóch konferencjach:

1. 22 kwietnia 2010 na konferencji Hack In The Box w Dubaju
2. oraz 25 lub 26 maja 2010 w Polsce, na konferencji CONFidence w Krakowie

W Dubaju prezentację poprowadzę niestety sam, natomiast na CONFidence pojawimy się obaj z j00ru, który, co należy koniecznie zaznaczyć, odwalił sporą część roboty, łącznie z exploitacją proof-of-concept jednego z powyższych bugów, który był niesamowicie złośliwy ;)

Prezentacja (i być może nagranie) z którejś z powyższych konferencji zostanie opublikowane po drugiej z nich :)

Póki co napiszę, że jednym z tych błędów był klasyczny buffer overflow, ale w dość ciekawym miejscu, a inny dotyczył braku walidacji ownera klucza w linkach symbolicznych w rejestrze, i że naszym zdaniem, były to bardzo ciekawe technicznie błędy, mimo iż niespecjalnie krytyczne (Microsoft przydzielił im status "Important", a nie "Critical"). Więcej po konferencjach ;)

Pozdrawiam i zapraszam na HITB Dubai albo do Krakowa na moim zdaniem najlepszą polską konferencje poświęconą security - CONFidence!

UPDATE: Trochę info o jednym z bugów można znaleźć na blogu Microsoft Security & Research (post by Nick Finco z MSRC Engineering)

UPDATE 2: j00ru wrzucił bliźniaczego posta na swojego bloga

Comments:

2010-04-13 19:10:58 = Arv
{
respekt
}
2010-04-13 19:13:29 = Somebody
{
Gratulacje Gyn :)
Dostajecie od Micosoftu jakieś wymierne wyrazy wdzięczności za udostępnianie tych bugów?
}
2010-04-13 19:38:52 = Jurgi
{
Jak już dostaniesz robotę w Redmont, to nie zapomnij o swoich wiernych czytelnikach… ;)
}
2010-04-13 20:35:29 = Gynvael Coldwind
{
@Arv
Thx ^^

@Somebody
Gritzy na stronie ;)
Microsoft ma politykę niepłacenia za błędy.

@Jurgi
;DDDD
}
2010-04-13 21:38:03 = CoLinS
{
Gratuluję :) To już wyższa szkoła jazdy.
}
2010-04-14 09:47:23 = Gynvael Coldwind
{
@CoLinS
Thx ;)
}
2010-04-14 20:38:44 = Kele
{
Zacytuje Nicka Frinco: "Nice work, guys". :)

PS. Kiedy nowy RECraft? ;>
}
2010-04-15 08:23:22 = Gynvael Coldwind
{
@Kele
Thx ;)
No idea, ale na pewno będzie, w najgorszym wypadku raczej dopiero z nowym sajtem ;)
}

Add a comment:

Nick:
URL (optional):
Math captcha: 3 ∗ 2 + 7 =