Mīkstie punkti rūdītajā programmatūrā

Pēdējo desmit gadu laikā Microsoft, kas ir daudzu tiešsaistes uzbrucēju izvēles mērķis, ir nostiprinājusi savu operētājsistēmu, ieviešot tehnoloģijas, kas izstrādātas, lai uzbrucējiem būtu grūtāk atrast un izmantot ievainojamības. Apple un daudzi citi programmatūras ražotāji ir sekojuši šim piemēram, ieviešot līdzīgus papildu drošības pasākumus savās operētājsistēmās.





Tomēr pagājušajā nedēļā Pwn2Own konkursa laikā plkst CanSecWest , drošības konferencē Vankūverā, Kanādā, drošības pētnieki pierādīja, ka programmatūras ražotājiem ir jādara vairāk, lai aizsargātu savas programmas. Izmantojot iepriekš nezināmas ievainojamības, pētnieki varēja kompromitēt Apple Safari, Microsoft Internet Explorer 8 un Mozilla Firefox tīmekļa pārlūkprogrammas, apejot jaunākās drošības tehnoloģijas, kas ir ieviestas apakšā esošajā operētājsistēmā.

Šīs lietas padara to grūtu — tās patiešām dara, saka Čārlzs Millers, uzņēmuma galvenais analītiķis Neatkarīgi drošības vērtētāji un pētnieks, kurš apiet Apple Safari pārlūkprogrammas un operētājsistēmas Mac OS X Snow Leopard drošību. Taču, lai kā arī būtu, apņēmīgs uzbrucējs var atrast ceļu iekšā.

Konkursa Pwn2Own rezultāti uzsver patiesību drošības jomā: aizstāvjiem visu laiku ir jābūt taisnībai, bet uzbrucējiem ir jābūt taisnībai tikai vienu reizi. Ekspluatācijas ir patiešām radošas; tāpēc viņi ir viltīgi, sacīja Ārons Portnojs, drošības pētījumu grupas vadītājs Lūzuma punkts , apsardzes firma, kas sponsorē konkursu Pwn2Own.



Sākot ar savu Trustworthy Computing Initiative 2002. gadā, Microsoft sāka ieviest virkni drošības tehnoloģiju operētājsistēmā Windows. Pirmkārt, uzņēmums aizsargāja steku — loģisko atmiņas vietu, ko programmas izmanto datu īslaicīgai glabāšanai. Tehnoloģija, ko sauc par /GS karogu (pēc programmatūras slēdža, kas tika izmantots uzņēmuma kompilatorā), neļāva uzbrucējiem ievietot savu kodu stekā. Bet 2003. gadā Deivids Ličfīlds, neatkarīgs pētnieks, demonstrēja veidu, kā apiet aizsardzību. Korporācija Microsoft reaģēja, ieviešot vēl divas tehnoloģijas: SafeSEH, lai novērstu uzbrukumu, izmantojot strukturētus izņēmumu apstrādātājus (SEH), un adreses telpas izkārtojuma randomizāciju (ASLR), lai nākotnē būtu grūtāk izmantot līdzīgas ievainojamības. Tomēr pētnieki ir atraduši veidus, kā apiet abus šos aizsardzības veidus.

Pavisam nesen Microsoft iepazīstināja ar citu tehnoloģiju, datu izpildes aizsardzību (DEP), kas novērš uzbrukumus, kas pārraksta atmiņu ar kodu un pēc tam mēģina izpildīt šo kodu. Taču šā gada sākumā neatkarīgs pētnieks Dions Blazakis demonstrēja uzbrukumu, kas pazīstams kā JIT izsmidzināšana, kas izmanto ievainojamības citās programmās, jo īpaši Adobe Flash un Sun's Java, lai apietu šīs aizsardzības.

Portnojs saka, ka šīs izmantošanas metodes šobrīd ir ļoti aktuāla prece. Ja jums ir veids, kā apiet (operētājsistēmas) drošību, jūs esat soli pāri lielākajai daļai cilvēku šeit.



Arī Apple nav bijis imūna. Uzņēmums ir turpinājis izlaist vairāk drošības tehnoloģiju savā operētājsistēmā, un Snow Leopard ietver gan ASLR, gan DEP, norāda Millers.

Microsoft atzīst, ka programmatūras kļūdas vienmēr pastāvēs, un norāda, ka mērķis ir padarīt šādu ievainojamību izmantošanu mazāk kaitīgu. Mūsdienās citi pasākumi, tostarp papildu aizsardzība pret steku, ASLR un DEP, apgrūtina ievainojamību atrašanu un izmantošanu.

Ja šīs metodes nebūtu pieejamas, jūs redzētu daudz vairāk varoņdarbu nekā tas, ko mēs redzam tagad, saka HD Mūrs, uzņēmuma galvenais drošības speciālists. Rapid7 un direktors Metasploit projekts , kurā ir apkopotas ekspluatācijas metodes drošības pētniekiem ērti lietojamā sistēmā.



Papildu aizsardzības pētījumi turpinās, un viens no vadošajiem kandidātiem ir smilškaste — paņēmiens, kurā neuzticams kods tiek palaists aizsargātajās atmiņas un apstrādes vietas zonās, un tas nedrīkst ietekmēt citas datora vai ierīces daļas. Java programmēšanas valoda un izpildlaika vide padarīja smilškastes populāras, taču tikai nesen programmas sāka izmantot smilškastes plašāk. Pārlūkprogrammu ražotāji meklē iespēju palaist savu kodu smilškastē, un Google Chrome, kas izturēja Pwn2Own konkursu bez uzlauzšanas, palaiž kodu smilškastē.

Mūrs saka, ka smilšu kastēm ir savi ierobežojumi. Viņš saka, ka smilšu kastes patiešām labi aizsargā pret ievainojamību lietojumprogrammā, kas kļūst par operētājsistēmas izmantošanu, taču tās ir noderīgas tikai tad, ja dati, kurus mēģināt aizsargāt, nav pieejami. Daudzos gadījumos programmai var būt nepieciešama piekļuve sensitīviem vai sistēmas datiem, un tad smilškaste vairs nepalīdz, viņš saka.

Galu galā programmatūras ražotāji ir padarījuši savas programmas grūtāk izmantojamas, saka Millers. Viņš saka, ka viņš atklāja gandrīz 20 ievainojamības populārajā programmatūrā, piemēram, Adobe, Apple un Microsoft izveidotajās programmās, taču jaunākā sistēmā var tikt izmantota tikai nedaudza. Tas ir kompromiss, Millers atzīst. Katru reizi, kad pievienojat kādu no šiem (aizsardzības līdzekļiem), tas palēnina sistēmas darbību vai apgrūtina attīstību. Mērķis ir padarīt programmatūru grūti izmantojamu, un viņi to ir izdarījuši.



paslēpties