Kitas būdas pažvelgti į šią problemą yra tai, kad įmonės turi greitai reaguoti, kai programa turi pažeidžiamumą. Tam reikia, kad IT skyrius galėtų galutinai sekti įdiegtos programos, komponentai ir pataisos naudojant automatizavimo įrankius ir standartinius įrankius. Pramonė deda pastangas standartizuoti programinės įrangos žymas (19770-2), kurios yra XML failai, įdiegti kartu su programa, komponentu ir (arba) pataisu, kurie identifikuoja įdiegtą programinę įrangą, o komponento ar pataisos atveju – tai, kuri programa jie yra. dalis. Žymose yra leidėjo autoriteto informacija, versijos informacija, failų sąrašas su failo pavadinimu, saugi failo maiša ir dydis, kurį galima naudoti norint patvirtinti, kad įdiegta programa yra sistemoje ir ar dvejetainiai failai nebuvo modifikuoti trečias vakarėlis. Šios etiketės yra pasirašytos Elektroninis parašas leidėjas.

Kai yra žinomas pažeidžiamumas, IT skyriai gali naudoti savo turto valdymo programinę įrangą, kad iš karto identifikuotų sistemas su pažeidžiama programine įranga ir gali imtis veiksmų sistemoms atnaujinti. Žymos gali būti pataisos arba naujinimo dalis, kurią galima naudoti norint patikrinti, ar pataisa įdiegta. Tokiu būdu IT skyriai gali naudoti išteklius, pvz., NIST nacionalinę pažeidžiamumo duomenų bazę, kaip priemonę valdyti savo turto valdymo įrankius, kad įmonei pateikus pažeidžiamumą NVD, IT galėtų iš karto palyginti naujus pažeidžiamumus su savo.

Yra įmonių grupė, kuri per IEEE/ISTO ne pelno organizaciją, pavadintą TagVault.org (www.tagvault.org) bendradarbiauja su JAV vyriausybe, įgyvendindama standartinį ISO 19770-2 standartą, kuris įgalins tokį automatizavimo lygį. Tam tikru momentu šios žymos, atitinkančios šį įgyvendinimą, greičiausiai bus reikalingos programinė įranga, parduotas JAV vyriausybei per ateinančius porą metų.

Taigi galiausiai būtų gera praktika neskelbti, kokias programas ir konkrečias programinės įrangos versijas naudojate, tačiau tai gali būti sudėtinga, kaip minėta anksčiau. Norite įsitikinti, kad turite tikslią, atnaujintą programinės įrangos inventorių, kad ji reguliariai lyginama su žinomų pažeidžiamumų, pvz., NVD NVID, sąrašu ir kad IT skyrius galėtų nedelsiant imtis veiksmų grėsmei pašalinti. kartu su naujausiu atradimu Įsilaužimai, antivirusinis nuskaitymas ir kiti terpės blokavimo metodai bent jau labai apsunkins jūsų aplinkos pažeidimą, o jei tai padarys, tai nebus aptikta ilgą laiką. .

Šiuo metu sukurta daugybė įrankių, leidžiančių automatizuoti programinės įrangos spragų paiešką. Šiame straipsnyje bus aptariami kai kurie iš jų.

Įvadas

Statinė kodo analizė – tai programinės įrangos analizė, kuri atliekama naudojant programų pirminį kodą ir įgyvendinama faktiškai nevykdant tiriamos programos.

Programinėje įrangoje dažnai yra įvairių pažeidžiamumų dėl programos kodo klaidų. Klaidos, padarytos kuriant programas, kai kuriose situacijose sukelia programos strigimą, todėl sutrinka normalus programos veikimas: tokiu atveju dažnai keičiami ir sugadinami duomenys, programa ar net sistema sustoja. . Dauguma pažeidžiamumų yra susiję su neteisingu iš išorės gautų duomenų apdorojimu arba nepakankamai griežtu jų patikrinimu.

Pažeidžiamumui nustatyti naudojami įvairūs įrankiai, pavyzdžiui, statiniai analizatoriai pirminis kodasŠiame straipsnyje apžvelgtos programos.

Saugumo spragų klasifikacija

Pažeidus reikalavimą, kad programa tinkamai veiktų su visais įmanomais įvesties duomenimis, gali atsirasti vadinamųjų saugumo spragų (saugumo pažeidžiamumo). Dėl saugumo spragų gali būti naudojama viena programa, siekiant įveikti visos sistemos saugumo apribojimus.

Saugos spragų klasifikavimas pagal programinės įrangos klaidas:

  • Buferio perpildymas. Šis pažeidžiamumas atsiranda dėl to, kad programos vykdymo metu nekontroliuojama atmintyje esantis masyvas už ribų. Kai per didelis duomenų paketas perpildo ribotą buferį, pašalinių atminties langelių turinys perrašomas, o programa sugenda ir sugenda. Pagal buferio vietą proceso atmintyje buferio perpildymai išskiriami skete (stack buffer overflow), krūva (krūvos buferio perpildymas) ir statinių duomenų srityje (bss buferio perpildymas).
  • Pažeidžiamumas „sugadintas įvestis“ (sugadintas įvesties pažeidžiamumas). Sugadintas įvesties pažeidžiamumas gali atsirasti, kai vartotojo įvestis perduodama be pakankamo valdymo tam tikros išorinės kalbos (dažniausiai Unix apvalkalo arba SQL kalbos) vertėjui. Tokiu atveju vartotojas gali nurodyti įvesties duomenis taip, kad paleistas interpretatorius vykdytų visiškai kitokią komandą, nei numatė pažeidžiamos programos autoriai.
  • Klaidos formato eilutes(formato eilutės pažeidžiamumas). Šis tipas Saugos pažeidžiamumas yra „sugadintos įvesties“ pažeidžiamumo poklasis. Jis atsiranda dėl nepakankamo parametrų valdymo naudojant C standartinės bibliotekos formato I/O funkcijas printf, fprintf, scanf ir kt. Šios funkcijos yra vienas iš parametrų simbolių eilutę A, kuris nurodo vėlesnių funkcijos argumentų įvesties arba išvesties formatą. Jei vartotojas gali pats nustatyti formatavimo tipą, šis pažeidžiamumas gali atsirasti dėl eilutės formatavimo funkcijų gedimo.
  • Pažeidžiamumas dėl sinchronizavimo klaidų (lenktynių sąlygų). Problemos, susijusios su kelių užduočių atlikimu, sukelia situacijas, vadinamas „lenktynių sąlygomis“: programa, kuri nėra sukurta veikti daugiafunkcinėje aplinkoje, gali manyti, kad, pavyzdžiui, failų, kuriuos ji naudoja paleisdama, negali pakeisti kita programa. Dėl to užpuolikas, kuris laiku pakeičia šių darbinių failų turinį, gali priversti programą atlikti tam tikrus veiksmus.

Žinoma, be išvardintų, yra ir kitų klasių saugumo spragų.

Esamų analizatorių apžvalga

Šie įrankiai naudojami programų saugumo spragoms aptikti:

  • Dinaminiai derintuvai. Įrankiai, leidžiantys derinti programą, kai ji veikia.
  • Statiniai analizatoriai (statiniai derintuvai). Įrankiai, naudojantys informaciją, sukauptą atliekant statinę programos analizę.

Statiniai analizatoriai nurodo tas programos vietas, kuriose gali būti rasta klaida. Šiuose įtartinuose kodo fragmentuose gali būti klaida arba jie gali būti visiškai nekenksmingi.

Šiame straipsnyje pateikiama kelių esamų statinių analizatorių apžvalga. Pažvelkime į kiekvieną iš jų atidžiau.

Kai kuriais atvejais pažeidžiamumų atsiranda dėl įvairios kilmės kūrimo įrankių, kurie padidina sabotažo tipo programos kodo defektų riziką.

Pažeidžiamumų atsiranda dėl trečiųjų šalių komponentų arba laisvai platinamo kodo (atvirojo kodo) pridėjimo prie programinės įrangos. Kitų žmonių kodas dažnai naudojamas „toks, koks yra“ be nuodugnios analizės ir saugumo testų.

Nereikėtų atmesti, kad komandoje yra saviškių programuotojų, kurie į kuriamą produktą sąmoningai įveda papildomų nedokumentuotų funkcijų ar elementų.

Programinės įrangos pažeidžiamumų klasifikavimas

Pažeidžiamumas atsiranda dėl klaidų, įvykusių projektavimo ar rašymo etape programos kodas.

Priklausomai nuo atsiradimo stadijos, šio tipo grėsmės skirstomos į projektavimo, įgyvendinimo ir konfigūracijos spragas.

  1. Sunkiausia aptikti ir ištaisyti projektavimo klaidas. Tai yra algoritmų netikslumai, žymės, sąsajos nenuoseklumai skirtingi moduliai arba sąveikos su technine įranga protokoluose neoptimalių technologijų diegimas. Jų pašalinimas yra labai daug laiko reikalaujantis procesas dar ir dėl to, kad gali atsirasti neakivaizdžiais atvejais – pavyzdžiui, viršijus srautą arba prijungus didelį kiekį papildomos įrangos, o tai apsunkina reikiamo lygio užtikrinimą. saugumo ir veda prie būdų, kaip apeiti užkardą, atsiradimą.
  2. Diegimo pažeidžiamumai atsiranda rašant programą arba įvedant į ją saugos algoritmus. Tai neteisingas skaičiavimo proceso organizavimas, sintaksiniai ir loginiai defektai. Tačiau yra rizika, kad dėl trūkumo gali perpildyti buferį arba atsirasti kitų problemų. Jų atradimas užtrunka ilgai, o pašalinimas apima tam tikrų mašinos kodo skyrių taisymą.
  3. Aparatinės ir programinės įrangos konfigūracijos klaidos yra labai dažnos. Dažniausios jų priežastys – nepakankamas kokybės tobulinimas ir testų, skirtų teisingam darbui, trūkumas. papildomos funkcijos. Taip pat į šią kategoriją įtrauktos paprasti slaptažodžiai o numatytosios paskyros liko nepakeistos.

Remiantis statistika, pažeidžiamumų dažniausiai randama populiariuose ir plačiai paplitusiuose produktuose – staliniuose ir mobiliuosiuose. Operacinės sistemos, naršyklės.

Rizika naudojant pažeidžiamas programas

Programos, kuriose jie randa didžiausias skaičius pažeidžiamumų įdiegta beveik visuose kompiuteriuose. Iš kibernetinių nusikaltėlių pusės yra tiesioginis interesas surasti tokius trūkumus ir parašyti jiems.

Kadangi nuo pažeidžiamumo aptikimo iki pataisos (pataisos) paskelbimo praeina gana daug laiko, yra nemažai galimybių užsikrėsti kompiuterių sistemos pro saugumo spragas kode. Tokiu atveju vartotojui tereikia vieną kartą atidaryti, pavyzdžiui, kenkėjišką PDF failą su išnaudojimu, po kurio užpuolikai gaus prieigą prie duomenų.

Pastaruoju atveju infekcija vyksta pagal šį algoritmą:

  • Vartotojas gauna paštu sukčiavimo el. laiškas iš patikimo siuntėjo.
  • Failas su išnaudojimu pridedamas prie laiško.
  • Jei vartotojas bando atidaryti failą, kompiuteris yra užkrėstas virusu, Trojos arkliu (šifratoriumi) ar kita kenkėjiška programa.
  • Kibernetiniai nusikaltėliai gauna neteisėtą prieigą prie sistemos.
  • Vogiami vertingi duomenys.

Įvairių įmonių (Kaspersky Lab, Positive Technologies) atlikti tyrimai rodo, kad spragų yra beveik visose programose, įskaitant antivirusines. Todėl nustatymo tikimybė programinė įranga, turintis įvairaus kritiškumo trūkumų, yra labai didelis.

Norint sumažinti programinės įrangos spragų skaičių, būtina naudoti SDL (Security Development Lifecycle, saugus gyvenimo ciklas plėtra). SDL technologija naudojama siekiant sumažinti programų klaidų skaičių visuose jų kūrimo ir palaikymo etapuose. Taigi, kurdami programinę įrangą, informacijos saugumo specialistai ir programuotojai modeliuoja kibernetines grėsmes, siekdami rasti pažeidžiamumą. Programavimo metu procesas apima automatinėmis priemonėmis, nedelsdami pranešdami apie galimus trūkumus. Kūrėjai siekia gerokai apriboti nepatvirtintų vartotojų pasiekiamas funkcijas, o tai padeda sumažinti atakos paviršių.

Norėdami sumažinti pažeidžiamumų poveikį ir jų daromą žalą, turite laikytis kelių taisyklių:

  • Greitai įdiekite kūrėjų išleistas programų pataisas (pataisas) arba (geriausia) įgalinkite automatinis režimas atnaujinimus.
  • Jei įmanoma, nediekite abejotinų programų, kurių kokybė ir Techninė pagalba kelti klausimus.
  • Naudokite specialius pažeidžiamumo skaitytuvus arba specializuotas antivirusinių produktų funkcijas, kurios leidžia ieškoti saugumo klaidų ir prireikus atnaujinti programinę įrangą.

Paleidžiant protingas nuskaitymas„Avast“ patikrins, ar jūsų kompiuteryje nėra šių problemų, ir pasiūlys jas išspręsti.

  • Virusai: failai, kuriuose yra kenkėjiškas kodas, kuris gali turėti įtakos jūsų kompiuterio saugumui ir našumui.
  • Pažeidžiama programinė įranga: programos, kurias reikia atnaujinti ir kurias užpuolikai gali naudoti norėdami pasiekti jūsų sistemą.
  • Prastos reputacijos naršyklės plėtiniai: naršyklės plėtiniai, kurie paprastai įdiegiami be jūsų žinios ir turi įtakos sistemos veikimui.
  • Silpni slaptažodžiai: slaptažodžiai, naudojami norint pasiekti daugiau nei vieną internetinę paskyrą ir gali būti lengvai įsilaužti arba pažeisti.
  • Tinklo grėsmės: jūsų tinklo pažeidžiamumas, dėl kurio gali būti užpultas jūsų tinklo įrenginiai ir maršrutizatorius.
  • Veiklos problemos: objektai ( šiukšlių failai ir programas, su nustatymais susijusias problemas), dėl kurių jūsų kompiuteris gali neveikti.
  • Prieštaringi antivirusai: antivirusinė programinė įranga, įdiegta kompiuteryje su Avast. Daugkartinis antivirusines programas sulėtina kompiuterio darbą ir sumažina antivirusinės apsaugos efektyvumą.

Pastaba. Tam tikroms „Smart Scan“ aptiktoms problemoms išspręsti gali prireikti atskiros licencijos. Nereikalingų problemų tipų aptikimą galima išjungti .

Rastos problemos

Žalia varnelė šalia nuskaitymo srities rodo, kad su ja susijusių problemų nerasta. Raudonas kryžius reiškia, kad nuskaitymas nustatė vieną ar daugiau susijusių problemų.

Norėdami peržiūrėti konkrečią informaciją apie rastas problemas, spustelėkite viską išspręsti. Išmanusis nuskaitymas rodo išsamią kiekvienos problemos informaciją ir siūlo galimybę nedelsiant ją išspręsti spustelėjus elementą Nuspręskite, arba padarykite tai vėliau spustelėdami Praleiskite šį žingsnį.

Pastaba. Antivirusinių nuskaitymo žurnalus galima pamatyti nuskaitymo istorijoje , kurį galima pasiekti pasirinkus Apsauga Antivirusinė.

„Smart Scan“ nustatymų tvarkymas

Norėdami pakeisti Smart Scan nustatymus, pasirinkite Nustatymai Bendrieji Smart Scan ir nurodykite, kuriai iš išvardytų problemų tipų norite paleisti Smart Scan.

  • Virusai
  • Pasenusi programinė įranga
  • Naršyklės priedai
  • Tinklo grėsmės
  • Suderinamumo problemos
  • Veiklos problemos
  • Silpni slaptažodžiai

Pagal numatytuosius nustatymus visų tipų problemos įgalintos. Norėdami sustabdyti konkrečios problemos tikrinimą, kai atliekate išmanųjį nuskaitymą, spustelėkite slankiklį Įskaitantšalia problemos tipo, kad ji pakeistų būseną į Išjungė.

Spustelėkite Nustatymaišalia užrašo Virusų nuskaitymas norėdami pakeisti nuskaitymo nustatymus.

Pažeidžiamumo valdymas – tai sprendimo pažeidžiamumui pašalinti nustatymas, įvertinimas, klasifikavimas ir parinkimas. Pažeidžiamumo valdymas pagrįstas pažeidžiamumo informacijos saugyklomis, iš kurių viena yra išplėstinė stebėjimo pažeidžiamumo valdymo sistema.

Mūsų sprendimas kontroliuoja informacijos apie pažeidžiamumus atsiradimą operacinėse sistemose (Windows, Linux/Unix), biuro ir taikomosios programinės įrangos, techninės įrangos, informacijos saugos įrankių.

Duomenų šaltinis

Perspektyvaus stebėjimo programinės įrangos pažeidžiamumo valdymo sistemos duomenų bazė automatiškai pildoma iš šių šaltinių:

  • Rusijos FSTEC informacijos saugumo grėsmių duomenų bankas (BDU BI).
  • Nacionalinė pažeidžiamumo duomenų bazė (NVD) NIST.
  • Red Hat Bugzilla.
  • Debian Security Bug Tracker.
  • CentOS adresų sąrašas.

Taip pat naudojame automatizuotą metodą pažeidžiamumų duomenų bazei papildyti. Sukūrėme žiniatinklio tikrinimo programą ir nestruktūrizuotą duomenų analizatorių, kuris kiekvieną dieną analizuoja daugiau nei šimtą skirtingų užsienio ir Rusijos šaltinių. raktinius žodžius- grupės socialiniuose tinkluose, tinklaraščiai, mikroblogai, žiniasklaidos priemonės, skirtos Informacinės technologijos ir informacijos saugumas. Jei šie įrankiai randa ką nors, kas atitinka paieškos kriterijus, analitikas rankiniu būdu patikrina informaciją ir įveda ją į pažeidžiamumo duomenų bazę.

Programinės įrangos pažeidžiamumo kontrolė

Naudodami pažeidžiamumo valdymo sistemą kūrėjai gali kontroliuoti aptiktų pažeidžiamumų buvimą ir būseną savo programinės įrangos trečiosios šalies komponentuose.

Pavyzdžiui, įmonės saugios programinės įrangos kūrėjo gyvavimo ciklo (SSDLC) modelyje Hewlett Packard Trečiųjų šalių bibliotekų įmonės kontrolė yra viena iš pagrindinių vietų.

Mūsų sistema stebi, ar nėra pažeidžiamumų lygiagrečiose to paties programinės įrangos versijose / versijose.

Tai veikia taip:

1. Kūrėjas atsiunčia mums gaminyje naudojamų trečiųjų šalių bibliotekų ir komponentų sąrašą.

2. Kasdien tikriname:

b. ar yra būdų pašalinti anksčiau atrastas spragas.

3. Pranešame kūrėjui, jei pasikeitė pažeidžiamumo būsena arba įvertinimas pagal nurodytą vaidmenį. Tai reiškia, kad skirtingos tos pačios įmonės kūrimo komandos bus tik informuotos ir matys gaminio, prie kurio dirba, pažeidžiamumo būseną.

Pažeidžiamumo valdymo sistemos įspėjimų dažnis yra savavališkai konfigūruojamas, tačiau aptikus pažeidžiamumą, kurio CVSS balas didesnis nei 7,5, kūrėjai iškart gaus įspėjimą.

Integracija su ViPNet TIAS

ViPNet Threat Intelligence Analytics sistemos programinės ir techninės įrangos kompleksas automatiškai aptinka kompiuterines atakas ir nustato incidentus pagal įvykius iš įvairių šaltinių informacijos saugumas. Pagrindinis „ViPNet TIAS“ įvykių šaltinis yra „ViPNet IDS“, kuris analizuoja įeinantį ir išeinantį tinklo srautą naudodamas „Perspective Monitoring“ sukurtų sprendimų taisyklių AM taisyklių pagrindus. Kai kurie parašai yra parašyti siekiant nustatyti pažeidžiamumų išnaudojimą.

Jei ViPNet TIAS aptinka informacijos saugumo incidentą, kurio metu buvo išnaudotas pažeidžiamumas, visa su pažeidžiamumu susijusi informacija, įskaitant neigiamo poveikio pašalinimo ar kompensavimo būdus, automatiškai įvedama į incidento kortelę iš SMS.

Incidentų valdymo sistema taip pat padeda tirti informacijos saugumo incidentus, suteikdama analitikams informaciją apie kompromitavimo rodiklius ir galimus incidento paveiktus informacinės infrastruktūros mazgus.

Stebėti, ar informacinėse sistemose nėra spragų

Kitas pažeidžiamumo valdymo sistemos naudojimo scenarijus yra nuskaitymas pagal pareikalavimą.

Klientas, naudodamas įmontuotus įrankius arba mūsų sukurtą scenarijų, savarankiškai sugeneruoja mazge (darbo stotyje, serveryje, DBVS, SZI SZI, tinklo įrangoje) įdiegtos sistemos ir taikomosios programinės įrangos bei komponentų sąrašą, perduoda šį sąrašą į SMS ir gauna ataskaita apie aptiktas pažeidžiamumas ir periodiniai pranešimai apie jų būseną.

Skirtumai tarp sistemos ir įprastų pažeidžiamumo skaitytuvų:

  • Nereikia įdiegti stebėjimo agentų pagrindiniuose kompiuteriuose.
  • Tai neapkrauna tinklo, nes pati sprendimo architektūra nenumato agentų ir nuskaitymo serverių.
  • Nesukuria įrangos apkrovos, nes sukuriamas komponentų sąrašas sistemos komandos arba lengvas atvirojo kodo scenarijus.
  • Pašalina informacijos nutekėjimo galimybę. „Būsimas stebėjimas“ negali patikimai sužinoti nieko apie fizinę ir loginę mazgo vietą arba funkcinę paskirtį informacinėje sistemoje. Vienintelė informacija, kuri palieka kontroliuojamą kliento perimetrą, yra txt failas su sąrašu programinės įrangos komponentai. Šio failo turinį patikrina ir į SMS įkelia pats klientas.
  • Kad sistema veiktų, mums nereikia Sąskaitos valdomuose mazguose. Informaciją savo vardu renka mazgo administratorius.
  • Saugus keitimas informacija apie ViPNet VPN, IPsec arba https.

Prisijungimas prie pažeidžiamumo valdymo paslaugos „Perspektyvus stebėjimas“ padeda klientui įvykdyti ANZ.1 „Pažeidžiamumų identifikavimas, analizė“ reikalavimą. informacinė sistema ir greitas naujai nustatytų pažeidžiamumų pašalinimas “Rusijos FSTEC įsakymai Nr. 17 ir 21. Mūsų įmonė yra Rusijos FSTEC licencijos turėtoja techninė apsauga Konfidenciali informacija.

Kaina

Minimali kaina yra 25 000 rublių per metus už 50 mazgų, prijungtų prie sistemos su galiojančia prisijungimo prie sutarties.