Kako popraviti ranjivi softver. Identificiranje ranjivog softvera na klijentskim računalima. Praćenje ranjivosti softvera

💖 Sviđa li vam se? Podijelite vezu sa svojim prijateljima

Na početku pametno skeniranje Avast će provjeriti vaše računalo za sljedeće vrste problema i zatim predložiti rješenja za njih.

  • Virusi: datoteke koje sadrže zlonamjerni kod, što može utjecati na sigurnost i performanse vašeg računala.
  • Ranjiv softver: Programi koji zahtijevaju ažuriranje i koje napadači mogu koristiti za pristup vašem sustavu.
  • Proširenja preglednika s lošom reputacijom: Ekstenzije preglednika koje se obično instaliraju bez vašeg znanja i utječu na rad sustava.
  • Slabe lozinke: Lozinke koje se koriste za pristup više od jednog računa na mreži i mogu se lako hakirati ili kompromitirati.
  • Mrežne prijetnje : ranjivosti u vašoj mreži koje bi mogle dopustiti napade na vašu mrežni uređaji i ruter.
  • Problemi s izvedbom: objekti ( nepotrebne datoteke i aplikacije, problemi povezani s postavkama) koji mogu ometati rad računala.
  • Antivirusi u sukobu: antivirusni programi instalirani na vašem računalu s Avastom. Dostupnost nekoliko antivirusni programi usporava vaše računalo i smanjuje učinkovitost antivirusne zaštite.

Bilješka. Određeni problemi koje otkrije Smart Scan mogu zahtijevati zasebnu licencu za rješavanje. Otkrivanje nepotrebnih vrsta problema može se onemogućiti u .

Rješavanje otkrivenih problema

Zelena kvačica pored područja skeniranja označava da s tim područjem nisu pronađeni problemi. Crveni križić znači da je skeniranje identificiralo jedan ili više povezanih problema.

Za prikaz određenih pojedinosti o otkrivenim problemima kliknite Riješite sve. Smart Scan prikazuje pojedinosti o svakom problemu i nudi opciju da ga odmah popravite klikom na stavku Odlučiti, ili to učinite kasnije klikom Preskoći ovaj korak.

Bilješka. Dnevnici antivirusnog skeniranja mogu se vidjeti u povijesti skeniranja, kojoj se može pristupiti odabirom Antivirusna zaštita.

Upravljanje postavkama Smart Scan

Za promjenu postavki Smart Scan, odaberite Postavke Općenito Smart Scan i odredite koji od sljedećih tipova problema želite pametno skenirati.

  • Virusi
  • Zastarjeli softver
  • Dodaci preglednika
  • Mrežne prijetnje
  • Problemi s kompatibilnošću
  • Problemi s izvedbom
  • Slabe lozinke

Prema zadanim postavkama omogućene su sve vrste problema. Da biste zaustavili provjeru određenog problema prilikom pokretanja Smart Scan, kliknite klizač Uključeno pored tipa problema tako da mijenja stanje u Ugašen.

Klik postavke pored natpisa Skeniranje virusa za promjenu postavki skeniranja.

Trenutno je razvijen veliki broj alata za automatizaciju traženja ranjivosti programa. Ovaj će članak raspravljati o nekima od njih.

Uvod

Statička analiza koda je analiza softvera koja se provodi na izvornom kodu programa i provodi se bez stvarnog izvršavanja programa koji se proučava.

Softver često sadrži različite ranjivosti zbog pogrešaka u programskom kodu. Pogreške nastale tijekom razvoja programa u nekim situacijama dovode do kvara programa, a posljedično i do poremećaja normalnog rada programa: to često rezultira promjenama i oštećenjem podataka, zaustavljanjem programa ili čak sustava. Većina ranjivosti povezana je s netočnom obradom podataka primljenih izvana ili nedovoljno strogom provjerom istih.

Za prepoznavanje ranjivosti koriste se različiti alati, na primjer, statički analizatori izvornog koda programa, čiji je pregled dan u ovom članku.

Klasifikacija sigurnosnih ranjivosti

Kada se prekrši zahtjev da program ispravno radi na svim mogućim ulaznim podacima, moguća je pojava tzv. sigurnosnih propusta. Sigurnosne ranjivosti mogu značiti da se jedan program može koristiti za prevladavanje sigurnosnih ograničenja cijelog sustava.

Klasifikacija sigurnosnih propusta ovisno o softverske greške:

  • Prelijevanje međuspremnika. Ova se ranjivost javlja zbog nedostatka kontrole nad nizom koji je izvan granica memorije tijekom izvođenja programa. Kada paket podataka koji je prevelik prelije međuspremnik ograničene veličine, sadržaj nepotrebnih memorijskih lokacija biva prebrisan, uzrokujući pad programa i gašenje. Na temelju lokacije međuspremnika u procesnoj memoriji, prekoračenja međuspremnika razlikuju se na stogu (stack buffer overflow), gomili (heap buffer overflow) i području statičkih podataka (bss buffer overflow).
  • Oštećena ulazna ranjivost. Ranjivost pokvarenog unosa može se pojaviti kada se korisnički unos proslijedi tumaču nekog vanjskog jezika (obično Unix shell ili SQL) bez dovoljne kontrole. U tom slučaju korisnik može specificirati ulazne podatke na takav način da će pokrenuti tumač izvršiti potpuno drugačiju naredbu od one koju su zamislili autori ranjivog programa.
  • Ranjivost niza formata. Ovaj tip Sigurnosne ranjivosti podklasa su ranjivosti "intained input". Javlja se zbog nedovoljne kontrole parametara pri korištenju I/O funkcija formata printf, fprintf, scanf itd. C standardne biblioteke. Ove funkcije kao jedan od svojih parametara uzimaju znakovni niz koji specificira ulazni ili izlazni format sljedećih argumenata funkcije. Ako korisnik može odrediti vrstu oblikovanja, ova ranjivost može biti posljedica neuspješne upotrebe funkcija za oblikovanje niza.
  • Ranjivosti kao rezultat grešaka u sinkronizaciji (uvjeti utrke). Problemi povezani s multitaskingom dovode do situacija koje se nazivaju "uvjeti utrke": program koji nije dizajniran za rad u multitasking okruženju može vjerovati da, na primjer, datoteke koje koristi ne može promijeniti drugi program. Kao rezultat toga, napadač koji na vrijeme zamijeni sadržaj ovih radnih datoteka može prisiliti program da izvede određene radnje.

Naravno, osim navedenih, postoje i druge klase sigurnosnih ranjivosti.

Pregled postojećih analizatora

Za otkrivanje sigurnosnih propusta u programima koriste se sljedeći alati:

  • Dinamički debuggeri. Alati koji vam omogućuju otklanjanje pogrešaka programa tijekom njegovog izvođenja.
  • Statički analizatori (statički debuggeri). Alati koji koriste informacije prikupljene tijekom statičke analize programa.

Statički analizatori ukazuju na ona mjesta u programu gdje se može nalaziti greška. Ovi sumnjivi dijelovi koda mogu sadržavati pogrešku ili biti potpuno bezopasni.

Ovaj članak daje pregled nekoliko postojećih statičkih analizatora. Pogledajmo pobliže svaki od njih.

U nekim slučajevima, ranjivosti nastaju zbog korištenja razvojnih alata različitog podrijetla, što povećava rizik od pojave nedostataka sabotažnog tipa u programskom kodu.

Ranjivosti se pojavljuju zbog dodavanja komponenti trećih strana ili slobodno distribuiranog koda (open source) softveru. Tuđi se kod često koristi "kakav jest" bez temeljite analize i sigurnosnog testiranja.

Ne treba isključiti prisutnost insajderskih programera u timu koji namjerno uvode dodatne nedokumentirane funkcije ili elemente u proizvod koji se stvara.

Klasifikacija ranjivosti programa

Ranjive točke proizlaze iz pogrešaka na koje se naišlo tijekom faze dizajna ili pisanja. programski kod.

Ovisno o stupnju nastanka, ova vrsta prijetnje dijeli se na projektne, implementacijske i konfiguracijske ranjivosti.

  1. Greške nastale tijekom projektiranja najteže je otkriti i otkloniti. To su netočnosti u algoritmima, knjižnim oznakama, nedosljednosti u sučelju između različitih modula ili u protokolima za interakciju s hardverom te uvođenje suboptimalnih tehnologija. Njihovo uklanjanje je vrlo naporan proces, uključujući i zato što se mogu pojaviti u neočitim slučajevima - na primjer, kada je predviđeni volumen prometa prekoračen ili kada je priključena velika količina dodatne opreme, što komplicira pružanje potrebne razinu sigurnosti i dovodi do pojave načina zaobilaženja vatrozida.
  2. Ranjivosti implementacije pojavljuju se u fazi pisanja programa ili implementacije sigurnosnih algoritama u njega. Riječ je o neispravnoj organizaciji računalnog procesa, sintaktičkim i logičkim nedostacima. Postoji rizik da će greška dovesti do prekoračenja međuspremnika ili drugih problema. Njihovo otkrivanje oduzima puno vremena, a njihovo uklanjanje uključuje ispravljanje određenih dijelova strojnog koda.
  3. Pogreške u konfiguraciji hardvera i softvera vrlo su česte. Njihovi uobičajeni razlozi su nedovoljno kvalitetan razvoj i nedostatak testova za ispravan rad dodatne funkcije. Ova kategorija također može uključivati jednostavne lozinke a zadani računi ostali nepromijenjeni.

Prema statistikama, ranjivosti se posebno često nalaze u popularnim i uobičajenim proizvodima - stolnim i mobilnim uređajima. operativni sustavi, preglednici.

Rizici korištenja ranjivih programa

Programi koji sadrže najveći broj ranjivosti instalirani su na gotovo svim računalima. Od strane kibernetičkih kriminalaca postoji izravan interes za pronalaženje takvih nedostataka i pisanje za njih.

Budući da od trenutka otkrivanja ranjivosti do objave popravka (zakrpe) prođe dosta vremena, postoji priličan broj prilika za zarazu računalni sustavi kroz rupe u sigurnosti programskog koda. U tom slučaju korisnik treba samo jednom otvoriti, primjerice, zlonamjernu PDF datoteku s exploitom, nakon čega će napadači dobiti pristup podacima.

U potonjem slučaju infekcija se odvija prema sljedećem algoritmu:

  • Korisnik prima e-pošta phishing email od vjerodostojnog pošiljatelja.
  • Pismu je priložena datoteka s eksploatacijom.
  • Ako korisnik pokuša otvoriti datoteku, računalo se zarazi virusom, trojancem (kriptorom) ili drugim zlonamjernim programom.
  • Cyberkriminalci dobivaju neovlašteni pristup sustavu.
  • Kradu se vrijedni podaci.

Provedeno istraživanje razne tvrtke(Kaspersky Lab, Positive Technologies) pokazuju da ranjivosti postoje u gotovo svakoj aplikaciji, uključujući antiviruse. Stoga je vjerojatnost instaliranja softverskog proizvoda koji sadrži nedostatke različitih stupnjeva kritičnosti vrlo visoka.

Kako bi se smanjio broj praznina u softveru, potrebno je koristiti SDL (Security Development Lifecycle, siguran životni ciklus razvoj). SDL tehnologija koristi se za smanjenje broja grešaka u aplikacijama u svim fazama njihove izrade i podrške. Stoga, prilikom dizajniranja softvera, stručnjaci za informacijsku sigurnost i programeri modeliraju cyber prijetnje kako bi pronašli ranjivosti. Tijekom programiranja, automatski alati su uključeni u proces kako bi odmah prijavili potencijalne nedostatke. Razvojni programeri nastoje značajno ograničiti funkcionalnost dostupnu nepouzdanim korisnicima, što pomaže smanjiti površinu napada.

Kako biste smanjili utjecaj ranjivosti i štetu koju one uzrokuju, morate slijediti neka pravila:

  • Odmah instalirajte popravke (zakrpe) koje je objavio programer za aplikacije ili (po mogućnosti) omogućite automatski način rada nadopune.
  • Ako je moguće, nemojte instalirati sumnjive programe čija kvaliteta i tehnička podrška izazivaju pitanja.
  • Koristite posebne skenere ranjivosti ili specijalizirane funkcije antivirusnih proizvoda koji vam omogućuju traženje sigurnosnih pogrešaka i, ako je potrebno, ažuriranje softvera.

Drugi način gledanja na ovaj problem jest da tvrtke moraju brzo reagirati kada aplikacija ima ranjivost. To zahtijeva da IT odjel može definitivno pratiti instalirane aplikacije, komponente i zakrpe pomoću automatizacije i standardnih alata. Postoje napori industrije da se standardiziraju softverske oznake (19770-2), koje su XML datoteke instalirane s aplikacijom, komponentom i/ili zakrpom koje identificiraju instalirani softver, au slučaju komponente ili zakrpe, koja je to aplikacija dio. Oznake sadrže informacije o ovlaštenju izdavača, informacije o verziji, popis datoteka s nazivom datoteke, sigurni hash datoteke i veličinu, koji se mogu koristiti za potvrdu da je instalirana aplikacija na sustavu i da binarne datoteke nisu izmijenila treća strana. Ove oznake su potpisane digitalni potpis izdavač.

Kada je ranjivost poznata, IT odjeli mogu upotrijebiti svoj softver za upravljanje imovinom da odmah identificiraju sustave s ranjivim softverom i mogu poduzeti korake za ažuriranje sustava. Oznake mogu biti dio zakrpe ili ažuriranja koje se može koristiti za provjeru je li zakrpa instalirana. Na ovaj način, IT odjeli mogu koristiti resurse kao što je NIST National Vulnerability Database kao sredstvo za upravljanje svojim alatima za upravljanje imovinom, tako da nakon što tvrtka pošalje ranjivost NVD-u, IT može odmah usporediti nove ranjivosti s njihovima.

Postoji grupa tvrtki koje rade preko IEEE/ISTO neprofitne organizacije pod nazivom TagVault.org (www.tagvault.org) s vladom SAD-a na standardnoj implementaciji ISO 19770-2 koja će omogućiti ovu razinu automatizacije. U nekom trenutku, te oznake koje odgovaraju ovoj implementaciji vjerojatno će biti obavezne za softver koji se prodaje američkoj vladi u nekom trenutku u sljedećih nekoliko godina.

Dakle, na kraju dana, dobra je praksa ne objavljivati ​​o tome koje aplikacije i određene verzije softvera koristite, ali to može biti teško, kao što je ranije rečeno. Želite biti sigurni da imate točan, ažuran inventar softvera, da se redovito uspoređuje s popisom poznatih ranjivosti kao što je NVID iz NVD-a, i da IT može odmah poduzeti radnje za otklanjanje prijetnje. Ovo je uz s najnovijom detekcijom Upadi, antivirusno skeniranje i druge tehnike zaključavanja okruženja će u najmanju ruku otežati kompromitaciju vašeg okruženja, a ako/kada se to dogodi, neće biti otkriveno dugo vremena.

Upravljanje ranjivostima je identifikacija, procjena, klasifikacija i odabir rješenja za rješavanje ranjivosti. Temelj upravljanja ranjivostima su repozitoriji informacija o ranjivostima, od kojih je jedna sustav upravljanja ranjivostima “Forward Monitoring”.

Naše rješenje prati pojavu informacija o ranjivostima operativnih sustava (Windows, Linux/Unix-based), uredskog i aplikacijskog softvera, hardverskog softvera i alata za informacijsku sigurnost.

Izvori podataka

Baza podataka Perspective Monitoring Software Vulnerability Management System automatski se ažurira iz sljedećih izvora:

  • Banka podataka o prijetnjama informacijskoj sigurnosti (BDU BI) FSTEC Rusije.
  • Nacionalna baza podataka o ranjivosti (NVD) NIST.
  • crveni šešir Bugzilla.
  • Debian Security Bug Tracker.
  • Popis za slanje CentOS-a.

Također koristimo automatiziranu metodu za ažuriranje naše baze podataka o ranjivostima. Razvili smo web indeksiranje i parser nestrukturiranih podataka koji svaki dan analizira više od stotinu različitih stranih i ruskih izvora u nizu ključne riječi- grupe na društvenim mrežama, blogovi, mikroblogovi, mediji posvećeni informacijska tehnologija te osiguravanje informacijske sigurnosti. Ako ovi alati pronađu nešto što odgovara kriterijima pretraživanja, analitičar ručno provjerava informacije i unosi ih u bazu podataka ranjivosti.

Praćenje ranjivosti softvera

Koristeći Vulnerability Management System, programeri mogu pratiti prisutnost i status otkrivenih ranjivosti u komponentama treće strane svog softvera.

Na primjer, u modelu tvrtke Secure Software Developer Life Cycle (SSDLC). Hewlett Packard Središnje mjesto zauzima korporativna kontrola knjižnica trećih strana.

Naš sustav prati prisutnost ranjivosti u paralelnim verzijama/izgradnjama istog softverskog proizvoda.

Djeluje ovako:

1. Programer nam daje popis biblioteka i komponenti trećih strana koje se koriste u proizvodu.

2. Svakodnevno provjeravamo:

b. jesu li se pojavile metode za uklanjanje prethodno otkrivenih ranjivosti.

3. Obavještavamo programera ako se status ili bodovanje ranjivosti promijenilo, u skladu s navedenim uzorom. To znači da različite grupe programeri jedne tvrtke će primati upozorenja i vidjeti status ranjivosti samo za proizvod na kojem rade.

Učestalost upozorenja sustava upravljanja ranjivostima može se konfigurirati, ali ako se otkrije ranjivost s CVSS ocjenom većom od 7,5, programeri će primiti trenutno upozorenje.

Integracija s ViPNet TIAS

Softverski i hardverski sustav ViPNet Threat Intelligence Analytics System automatski otkriva računalne napade i identificira incidente na temelju događaja primljenih iz različitih izvora sigurnost informacija. Glavni izvor događaja za ViPNet TIAS je ViPNet IDS, koji analizira dolazni i odlazni mrežni promet pomoću baze pravila odlučivanja o AM pravilima koju je razvila tvrtka Perspective Monitoring. Neki su potpisi napisani za otkrivanje iskorištavanja ranjivosti.

Ako ViPNet TIAS otkrije informacijsko-sigurnosni incident u kojem je iskorištena ranjivost, tada se sve informacije vezane uz ranjivost, uključujući metode za uklanjanje ili kompenzaciju negativnog utjecaja, automatski unose u karticu incidenta iz sustava upravljanja.

Sustav za upravljanje incidentima također pomaže u istrazi incidenata informacijske sigurnosti, pružajući analitičarima informacije o pokazateljima kompromitacije i potencijalnim čvorovima informacijske infrastrukture pogođenim incidentom.

Praćenje prisutnosti ranjivosti u informacijskim sustavima

Drugi scenarij za korištenje sustava za upravljanje ranjivostima je skeniranje na zahtjev.

Kupac samostalno generira, koristeći ugrađene alate ili skriptu koju smo razvili, popis onoga što je instalirano na čvoru (radna stanica, poslužitelj, DBMS, softverski paket za informacijsku sigurnost, mrežni hardver) sustavnog i aplikativnog softvera i komponenti, prenosi ovaj popis u kontrolni sustav i prima izvješće o otkrivenim ranjivostima i periodične obavijesti o njihovom statusu.

Razlike između sustava i uobičajenih skenera ranjivosti:

  • Ne zahtijeva instalaciju agenata za nadzor na čvorovima.
  • Ne stvara opterećenje na mreži, budući da sama arhitektura rješenja ne nudi agente za skeniranje i poslužitelje.
  • Ne opterećuje opremu jer se stvara popis komponenti naredbe sustava ili laganu skriptu otvorenog koda.
  • Otklanja mogućnost curenja informacija. "Prospektivno praćenje" ne može pouzdano saznati ništa o fizičkoj i logičkoj lokaciji ili funkcionalnoj namjeni čvora u informacijskom sustavu. Jedina informacija koja napušta kupčev kontrolirani perimetar je txt datoteka s popisom softverskih komponenti. Kupac sam provjerava sadržaj ove datoteke i učitava je u kontrolni sustav.
  • Da bi sustav funkcionirao ne trebamo Računi na kontroliranim čvorovima. Podatke u svoje ime prikuplja administrator stranice.
  • Sigurna razmjena informacija putem ViPNet VPN-a, IPsec-a ili https-a.

Povezivanje s uslugom upravljanja ranjivostima Perspective Monitoring pomaže korisniku da ispuni zahtjev ANZ.1 „Identifikacija i analiza ranjivosti informacijski sistem i brzo uklanjanje novootkrivenih ranjivosti" FSTEC-a Rusije naredbe br. 17 i 21. Naša tvrtka ima licencu FSTEC-a Rusije za aktivnosti na tehnička zaštita povjerljive informacije.

Cijena

Minimalni trošak - 25 000 rubalja godišnje za 50 čvorova povezanih na sustav ako postoji važeći ugovor za povezivanje na



reci prijateljima