Kotiin / Ohjeet / Haavoittuvuuden hallinta. Älykäs skannaus Haavoittuvat ohjelmat

Haavoittuvuuden hallinta. Älykäs skannaus Haavoittuvat ohjelmat

Käynnistyksen yhteydessä älykäs skannaus Avast tarkistaa tietokoneesi seuraavan tyyppisten ongelmien varalta ja ehdottaa sitten ratkaisuja niihin.

  • Virukset: tiedostot, jotka sisältävät haitallinen koodi, mikä saattaa vaikuttaa tietokoneesi turvallisuuteen ja suorituskykyyn.
  • Haavoittuva ohjelmisto: Ohjelmat, jotka vaativat päivitystä ja joita hyökkääjät voivat käyttää päästäkseen järjestelmääsi.
  • Selainlaajennukset, joilla on huono maine: Selainlaajennukset, jotka asennetaan yleensä tietämättäsi ja jotka vaikuttavat järjestelmän suorituskykyyn.
  • Heikot salasanat: Salasanat, joilla päästään useampaan kuin yhteen verkkotiliin ja jotka voidaan helposti murtautua tai vaarantua.
  • Verkkouhat: Verkkosi haavoittuvuudet, jotka voivat sallia hyökkäykset verkkolaitteitasi ja reitittimiäsi vastaan.
  • Suorituskykyongelmat: esineet ( tarpeettomia tiedostoja ja sovellukset, asetuksiin liittyvät ongelmat), jotka voivat häiritä tietokoneen toimintaa.
  • Ristiriitaiset virustorjuntaohjelmat: virustorjuntaohjelmat, jotka on asennettu tietokoneellesi Avastin avulla. Saatavuus useita virustorjuntaohjelmat hidastaa tietokonettasi ja heikentää virussuojauksen tehokkuutta.

Huom. Tietyt Smart Scanin havaitsemat ongelmat saattavat vaatia erillisen lisenssin ratkaisemiseksi. Tarpeettomien ongelmatyyppien tunnistaminen voidaan poistaa käytöstä .

Havaittujen ongelmien ratkaiseminen

Vihreä valintamerkki skannausalueen vieressä osoittaa, että tällä alueella ei löytynyt ongelmia. Punainen risti tarkoittaa, että skannaus on tunnistanut yhden tai useamman asiaan liittyvän ongelman.

Katso tarkkoja tietoja havaituista ongelmista napsauttamalla Ratkaise kaikki. Smart Scan näyttää kunkin ongelman tiedot ja tarjoaa mahdollisuuden korjata se välittömästi napsauttamalla kohdetta Päättää tai tee se myöhemmin napsauttamalla Ohita tämä vaihe.

Huom. Virustorjuntalokit näkyvät tarkistushistoriassa, johon pääset valitsemalla Suojaus Antivirus.

Hallitse Smart Scan -asetuksia

Jos haluat muuttaa Smart Scan -asetuksia, valitse Asetukset Yleiset Smart Scan ja määritä, minkä seuraavista ongelmatyypeistä haluat Smart Scan -tarkistuksen.

  • Virukset
  • Vanhentunut ohjelmisto
  • Selaimen lisäosat
  • Verkkouhat
  • Yhteensopivuusongelmat
  • Suorituskykyongelmat
  • Heikot salasanat

Oletusarvoisesti kaikki ongelmatyypit ovat käytössä. Jos haluat lopettaa tietyn ongelman tarkistamisen Smart Scan -toiminnon aikana, napsauta liukusäädintä Mukana ongelman tyypin vieressä niin, että se muuttaa tilaksi Pois.

Napsauta Asetukset kirjoituksen vieressä Virustarkistus muuttaaksesi skannausasetuksia.

Joissakin tapauksissa haavoittuvuuksia syntyy eri alkuperää olevien kehitystyökalujen käytöstä, mikä lisää riskiä sabotaasityyppisten vikojen ilmaantumisesta ohjelmakoodiin.

Haavoittuvuuksia ilmenee, koska ohjelmistoon on lisätty kolmannen osapuolen komponentteja tai vapaasti jaettua koodia (avoin lähdekoodi). Jonkun toisen koodia käytetään usein "sellaisenaan" ilman perusteellista analysointia ja turvatestausta.

Ei pidä sulkea pois sisäpiiriohjelmoijien läsnäoloa tiimissä, jotka tarkoituksella ottavat käyttöön lisää dokumentoimattomia toimintoja tai elementtejä.

Ohjelman haavoittuvuuksien luokitus

Haavoittuvuudet syntyvät suunnittelu- tai koodausvaiheessa tapahtuvien virheiden seurauksena.

Esiintymisvaiheesta riippuen tämäntyyppinen uhka jaetaan suunnittelu-, toteutus- ja konfigurointihaavoittuvuuksiin.

  1. Suunnittelun aikana tehdyt virheet ovat vaikeimpia havaita ja poistaa. Näitä ovat epätarkkuudet algoritmeissa, kirjanmerkeissä, epäjohdonmukaisuudet eri moduulien välisissä käyttöliittymissä tai laitteiston kanssa käytettävissä olevissa vuorovaikutusprotokollissa sekä optimaalisten teknologioiden käyttöönotto. Niiden poistaminen on erittäin työläs prosessi, muun muassa siksi, että ne voivat ilmaantua epäselvissä tapauksissa - esimerkiksi silloin, kun suunniteltu liikennemäärä ylittyy tai kun liitetään suuri määrä lisälaitteita, mikä vaikeuttaa vaadittujen laitteiden toimittamista. turvallisuuden tasoa ja johtaa tapoihin ohittaa palomuuri.
  2. Toteutushaavoittuvuudet ilmenevät ohjelman kirjoitusvaiheessa tai tietoturvaalgoritmien toteuttamisessa. Tämä on laskentaprosessin virheellinen organisointi, syntaktisia ja loogisia virheitä. On olemassa vaara, että vika johtaa puskurin ylivuotoon tai muihin ongelmiin. Niiden havaitseminen vie paljon aikaa, ja niiden poistamiseen liittyy tiettyjen konekoodin osien korjaaminen.
  3. Laitteiston ja ohjelmiston asetusvirheet ovat melko yleisiä. Niiden yleisinä syinä ovat riittämättömän laadukas kehitystyö ja oikeaa toimintaa koskevien testien puute. lisätoimintoja. Myös liian yksinkertaiset ja muuttamattomina olevat salasanat voidaan sisällyttää tähän luokkaan. tilit oletuksena.

Tilastojen mukaan haavoittuvuuksia löytyy erityisen usein suosituista ja yleisistä tuotteista - pöytäkoneista ja mobiililaitteista. käyttöjärjestelmät, selaimet.

Haavoittuvien ohjelmien käytön riskit

Eniten haavoittuvuuksia sisältävät ohjelmat on asennettu lähes kaikkiin tietokoneisiin. Verkkorikollisilla on suora kiinnostus löytää tällaisia ​​puutteita ja kirjoittaa niille.

Koska haavoittuvuuden havaitsemisesta korjauksen (korjauksen) julkaisemiseen kuluu melko paljon aikaa, on olemassa lukuisia mahdollisuuksia tartuttaa tietokonejärjestelmiä ohjelmakoodin suojausaukkojen kautta. Tällöin käyttäjän tarvitsee vain avata esimerkiksi haitallinen PDF-tiedosto hyväksikäytöllä kerran, jonka jälkeen hyökkääjät pääsevät käsiksi tietoihin.

Jälkimmäisessä tapauksessa infektio tapahtuu seuraavan algoritmin mukaisesti:

  • Käyttäjä saa sähköposti phishing-sähköposti luotettavalta lähettäjältä.
  • Kirjeeseen on liitetty tiedosto, jossa on hyväksikäyttö.
  • Jos käyttäjä yrittää avata tiedoston, tietokone saa viruksen, troijalaisen (salauksen) tai muun haittaohjelman tartunnan.
  • Kyberrikolliset pääsevät järjestelmään luvattomasti.
  • Arvokasta dataa varastetaan.

Eri yritysten (Kaspersky Lab, Positive Technologies) tekemät tutkimukset osoittavat, että haavoittuvuuksia on lähes kaikissa sovelluksissa, myös virustorjuntaohjelmissa. Siksi on erittäin todennäköistä, että asennetaan ohjelmistotuote, joka sisältää eriasteisia kriittisiä vikoja.

Ohjelmiston aukkojen määrän minimoimiseksi on välttämätöntä käyttää SDL:ää (Security Development Lifecycle, Security Development Lifecycle). SDL-tekniikkaa käytetään vähentämään virheiden määrää sovelluksissa niiden luomisen ja tuen kaikissa vaiheissa. Tietoturvaasiantuntijat ja ohjelmoijat siis mallintavat ohjelmistoja suunnitellessaan kyberuhkia haavoittuvuuksien löytämiseksi. Ohjelmoinnin aikana prosessiin sisällytetään automaattiset työkalut, jotka ilmoittavat välittömästi mahdollisista virheistä. Kehittäjät pyrkivät rajoittamaan merkittävästi epäluotettavien käyttäjien saatavilla olevia toimintoja, mikä auttaa vähentämään hyökkäyspintaa.

Minimoidaksesi haavoittuvuuksien vaikutukset ja niiden aiheuttamat vahingot sinun on noudatettava joitain sääntöjä:

  • Asenna nopeasti kehittäjien julkaisemat korjaukset (korjaukset) sovelluksiin tai (mieluiten) ota käyttöön automaattinen tila päivitykset.
  • Jos mahdollista, älä asenna kyseenalaisia ​​ohjelmia, joiden laatu ja tekninen tuki herättää kysymyksiä.
  • Käytä erityisiä haavoittuvuusskannereita tai virustorjuntatuotteiden erikoistoimintoja, joiden avulla voit etsiä tietoturvavirheitä ja tarvittaessa päivittää ohjelmistoja.

Toinen tapa tarkastella tätä ongelmaa on se, että yritysten on reagoitava nopeasti, kun sovelluksessa on haavoittuvuus. Tämä edellyttää IT-osaston kykyä seurata lopullisesti asennetut sovellukset, komponentit ja korjaustiedostot automaatiolla ja vakiotyökaluilla. Teollisuus pyrkii standardisoimaan ohjelmistotunnisteita (19770-2), jotka ovat XML-tiedostoja, jotka on asennettu sovelluksen, komponentin ja/tai korjaustiedoston kanssa ja jotka tunnistavat asennetun ohjelmiston, ja jos kyseessä on komponentti tai korjaustiedosto, mikä sovellus ne ovat. osa. Tunnisteilla on julkaisijan auktoriteettitiedot, versiotiedot, tiedostoluettelo tiedostonimineen, tiedoston suojattu hajautusarvo ja koko, joiden avulla voidaan varmistaa, että asennettu sovellus on järjestelmässä ja että binaaritiedostoja ei ole kolmannen osapuolen muuttama. Nämä tunnisteet on allekirjoitettu digitaalinen allekirjoitus kustantaja.

Kun haavoittuvuus on tiedossa, IT-osastot voivat käyttää omaisuudenhallintaohjelmistoaan tunnistaakseen välittömästi järjestelmät, joissa on haavoittuvia ohjelmistoja, ja ryhtyä toimenpiteisiin järjestelmien päivittämiseksi. Tunnisteet voivat olla osa korjaustiedostoa tai päivitystä, jonka avulla voidaan varmistaa, että korjaustiedosto on asennettu. Tällä tavalla IT-osastot voivat käyttää resursseja, kuten NIST National Vulnerability Databasea, resurssienhallintatyökalujensa hallintaan, joten kun yritys on ilmoittanut haavoittuvuuden NVD:lle, IT voi välittömästi verrata uusia haavoittuvuuksia omaansa.

Ryhmä yrityksiä työskentelee IEEE/ISTOn voittoa tavoittelemattoman järjestön nimeltä TagVault.org (www.tagvault.org) kautta Yhdysvaltain hallituksen kanssa ISO 19770-2:n standarditoteutuksen parissa, joka mahdollistaa tämän tason automatisoinnin. Jossain vaiheessa nämä tätä toteutusta vastaavat tunnisteet ovat todennäköisesti pakollisia Yhdysvaltain hallitukselle myytäville ohjelmistoille jossain vaiheessa seuraavien parin vuoden aikana.

Joten loppujen lopuksi on hyvä käytäntö olla julkaisematta käyttämiäsi sovelluksia ja ohjelmistoversioita, mutta tämä voi olla vaikeaa, kuten aiemmin todettiin. Haluat varmistaa, että sinulla on tarkka ja ajan tasalla oleva ohjelmistoluettelo, että sitä verrataan säännöllisesti tunnettujen haavoittuvuuksien luetteloon, kuten NVD:n NVID:iin, ja että IT voi ryhtyä välittömästi toimiin uhan poistamiseksi uusimmalla havainnolla Tunkeukset, virustentorjunta ja muut ympäristön lukitustekniikat tekevät ympäristösi vaarantumisen ainakin erittäin vaikeaksi, ja jos/kun se tapahtuu, sitä ei havaita pitkään aikaan.

Tällä hetkellä on kehitetty suuri määrä työkaluja ohjelman haavoittuvuuksien etsimisen automatisoimiseksi. Tässä artikkelissa käsitellään joitain niistä.

Johdanto

Staattinen koodianalyysi on ohjelmistoanalyysi, joka suoritetaan ohjelmien lähdekoodille ja toteutetaan suorittamatta itse tutkittavaa ohjelmaa.

Ohjelmisto sisältää usein erilaisia ​​haavoittuvuuksia, jotka johtuvat ohjelmakoodin virheistä. Ohjelmakehityksen aikana tehdyt virheet johtavat joissain tilanteissa ohjelman epäonnistumiseen ja sen seurauksena ohjelman normaali toiminta häiriintyy: tämä usein johtaa muutoksiin ja tietojen vaurioitumiseen, ohjelman tai jopa järjestelmän pysähtymiseen. Suurin osa haavoittuvuuksista liittyy ulkopuolelta saatujen tietojen virheelliseen käsittelyyn tai sen riittämättömään tarkastamiseen.

Haavoittuvuuksien tunnistamiseen käytetään erilaisia ​​työkaluja, esimerkiksi ohjelman lähdekoodin staattisia analysaattoreita, joista on yleiskatsaus tässä artikkelissa.

Tietoturva-aukkojen luokitus

Kun ohjelman vaatimusta toimia oikein kaikilla mahdollisilla syötetiedoilla rikotaan, niin sanottujen tietoturva-aukkojen ilmaantuminen tulee mahdolliseksi. Tietoturvahaavoittuvuudet voivat tarkoittaa, että yhtä ohjelmaa voidaan käyttää koko järjestelmän tietoturvarajoitusten voittamiseksi.

Tietoturva-aukkojen luokittelu ohjelmistovirheiden mukaan:

  • Puskurin ylivuoto. Tämä haavoittuvuus johtuu siitä, että muistissa olevien rajojen ulkopuolella olevia taulukoita ei voida hallita ohjelman suorittamisen aikana. Kun liian suuri tietopaketti ylittää rajoitetun puskurin, ylimääräisten muistipaikkojen sisältö ylikirjoitetaan, jolloin ohjelma kaatuu ja poistuu. Prosessimuistissa olevan puskurin sijainnin perusteella puskurin ylivuoto erotetaan pinossa (pinon puskurin ylivuoto), keossa (keon puskurin ylivuoto) ja staattisella tietoalueella (bss puskurin ylivuoto).
  • Haavoittuva syötehaavoittuvuus. Spoiled syöttöhaavoittuvuuksia voi ilmetä, kun käyttäjän syöte välitetään ilman riittävää hallintaa jonkin ulkoisen kielen (yleensä Unix-komentotulkin tai SQL-kielen) tulkille. Tässä tapauksessa käyttäjä voi määrittää syötetiedot siten, että käynnistetty tulkki suorittaa komennon, joka on täysin erilainen kuin haavoittuvan ohjelman kirjoittajat ovat aikoneet.
  • Virheet muotoisia merkkijonoja(muotomerkkijonon haavoittuvuus). Tämän tyyppinen tietoturvahaavoittuvuus on "vioittuneen syötteen" haavoittuvuuden alaluokka. Se johtuu riittämättömästä parametrien hallinnasta käytettäessä C-standardin kirjaston muotoisia I/O-funktioita printf, fprintf, scanf jne. Nämä funktiot ottavat yhdeksi parametrikseen merkkijonon, joka määrittää myöhempien funktion argumenttien tulo- tai lähtömuodon. Jos käyttäjä voi määrittää muotoilun tyypin, tämä haavoittuvuus voi johtua merkkijonon muotoilutoimintojen epäonnistumisesta.
  • Synkronointivirheistä johtuvat haavoittuvuudet (kilpailuolosuhteet). Moniajoon liittyvät ongelmat johtavat tilanteisiin, joita kutsutaan "kilpailuolosuhteiksi": ohjelma, jota ei ole suunniteltu toimimaan moniajoympäristössä, saattaa uskoa, että esimerkiksi sen käyttämiä tiedostoja ei voi muuttaa toisella ohjelmalla. Tämän seurauksena hyökkääjä, joka korvaa näiden työtiedostojen sisällön ajoissa, voi pakottaa ohjelman suorittamaan tiettyjä toimintoja.

Tietysti lueteltujen lisäksi on muitakin tietoturva-aukkoja.

Olemassa olevien analysaattoreiden tarkistus

Seuraavia työkaluja käytetään ohjelmien tietoturva-aukkojen havaitsemiseen:

  • Dynaamiset debuggerit. Työkalut, joiden avulla voit korjata ohjelman virheenkorjauksen sen suorituksen aikana.
  • Staattiset analysaattorit (staattiset debuggerit). Työkalut, jotka käyttävät ohjelman staattisen analyysin aikana kertynyttä tietoa.

Staattiset analysaattorit osoittavat ohjelmassa ne kohdat, joissa virhe voi olla. Nämä epäilyttävät koodinpalat voivat sisältää virheen tai olla täysin vaarattomia.

Tämä artikkeli sisältää yleiskatsauksen useista olemassa olevista staattisista analysaattoreista. Tarkastellaanpa kutakin niistä lähemmin.