Störtskön video

För en halv livstid sen så bloggade jag om cvss. Sen dess så har CVSS förtydligats i olika FAQ’s m.m. och Oracle’s tolkning av CVSS är helt rätt.

  • Man bedömer enskilda säkerhetshål
  • Webbsäkerhetshål kan nästan aldrig få höga poäng, speciellt inte om de är reflekterade.
  • Man bedömer inte effekten / risken av en sårbarhet i dess sammanhang, utan bedömer den kliniskt och dumt. (till skillnad från t.ex. Microsoft eller Apache som försöker bedöma risken för att det blir en allvarligt en attack)

CVSS har definitivt sitt värde när det gäller att prioritera bland vad man tar i först, men jag brukar alltid försöka förklara ”låg ranking betyder inte att det är ofarligt”. Speciellt inte om det finns flera sårbarheter, som kan kombineras i en kompositattack som utnyttjar flera sårbarheter.

Hypotetiskt sätt kan en serie av lågt rankade sårbarheter sättas samman i en jätteallvarlig attack. Ekvationen 1 + 1 = 2 gäller inte. 1 + 1 kanske fortfarande är 1, eller så kan 1 + 1 bli 10. Det avgörande är de bildar en kedja där A ger B, B ger C, och C ger D.

POET videon känns som en så störtskön illustration av hur helt olika sårbarheter utnyttjas i en attack. Ingen av sårbarheterna i sig är en CVSS:10, men effekten är komplett och fullständig nermontering av ASP.NET + Windows serversäkerhet.

Vad ser vi här?

  • POET utnyttjar kryptering sårbar mot Padding Oracle attacker mot ASP.NET.
  • Med hjälp av CBC-R kan man skapa en krypterad referens till ~/web.config som innehåller kryptonycklarna. Sårbarhet nummer 2 i ASP.NET är att MAC inte kontrolleras i diverse sammanhang, t.ex. inte i ScriptResource.axd.
  • Med hjälp av kryptonycklarna kan man skapa .DOTNETNUKE (en ASP.NET Form Authentication kaka) för att bli administratör i en CMS applikation, DotNet Nuke.
  • DotNet Nuke har en inbyggd ”by design” sårbarhet, man kan ladda upp extensions. Generellt sett en dålig idé! Därmed är det trivialt att med dessa rättigheter göra Remote Code Execution som network service (eller Privilege Escalation från applikationsanvändare till systemanvändaren, beroende på hur man väljer att se på saken)
  • Slutligen kör man Token Kidnapping’s Revenge för att eskalera från network service till system.

Kablam! Flera sårbarheter kombineras mycket vackert i en komplett attack.

Ingen av sårbarheterna är i sig en katastrof, problemet är bara att säkerheten monteras ner, lager efter lager. Denfense in Depth är som en lök med flera lager (eller som en stad med flera stadsmurar runt sig). Slår man flera hål i samma lager spelar det ingen roll. Slår man däremot först sönder det yttersta lagret, för att sen slå sig vidare in i nästa lager, djupare och djupare tills man nått fram till det man vill uppnå, så har man krossat DiD.

Frågan är hur mycket förvarning Microsofts MSRC hade innan det här blev publikt känt.  Har fått känslan av att flera personer har inrapporterade säkerhetshål som MSRC inte hinner med på många månader eller så är det bara mig och min inrapporterade sårbarhet de inte hinner med?

(Uppdaterad och förtydligat bloginlägget 2010-10-01)

Annonser

Kommentera

Fyll i dina uppgifter nedan eller klicka på en ikon för att logga in:

WordPress.com Logo

Du kommenterar med ditt WordPress.com-konto. Logga ut / Ändra )

Twitter-bild

Du kommenterar med ditt Twitter-konto. Logga ut / Ändra )

Facebook-foto

Du kommenterar med ditt Facebook-konto. Logga ut / Ändra )

Google+ photo

Du kommenterar med ditt Google+-konto. Logga ut / Ändra )

Ansluter till %s