Upravljanje ranjivostima. Pametno skeniranje Kako popraviti ranjivi softver

💖 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. Pametno skeniranje 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.

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

Ranjivosti nastaju kao rezultat pogrešaka koje se javljaju tijekom faze dizajna ili kodiranja.

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 i ostavljen nepromijenjen Računi zadano.

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. U industriji postoji napor da se standardiziraju softverske oznake (19770-2), koje su XML datoteke instalirane s aplikacijom, komponentom i/ili zakrpom koje identificiraju instaliranu softver, au slučaju komponente ili zakrpe, dio koje su aplikacije. 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 Nacionalna baza podataka o ranjivostima NIST-a kao sredstvo za upravljanje svojim alatima za upravljanje, 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 osigurati da imate točan, ažuran inventar softvera, da se on 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 s najnovijom detekcijom Upadi, antivirusno skeniranje i druge tehnike zaključavanja okruženja u najmanju će ruku otežati kompromitiranje vašeg okruženja, a ako/kada se dogodi, neće biti otkriveno dugo vremena.

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 implementira 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ćenjima 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 je zahtjev ispravan rad program na svim mogućim ulaznim podacima je narušen, pojava tzv. sigurnosnih propusta postaje moguća. 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 memoriji procesa, prekoračenja međuspremnika razlikuju se na stogu (stack buffer overflow), hrpi (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.



reci prijateljima
Pročitajte također