Ranjivost u kontekstu računalne sigurnosti podrazumijeva slabost u računalnom sustavu koja omogućuje napadaču da smanji razinu informacijske sigurnosti, tj. da informaciju u sustavu ili sami sustav na neki način izloži opasnosti. Napadač to može učiniti ugrožavanjem nekoliko osnovnih sigurnosnih koncepta:
Sama ranjivost (da bi se mogla iskoristiti) mora sadržavati tri elementa:
Ranjivosti se nazivaju još i napadnim plohama (attack surface) jer omogućuju mjesto napada na sustav.
Pronalaženje poznate ranjivosti obavlja se na način da se izradi program koji sustavu šalje podatke koji uzrokuju određeno ponašanje sustava. Ukoliko se takvo ponašanje detektira znači da je sustav podložan dotičnoj ranjivosti. Pronalaženje takvih ranjivosti temelji se na automatiziranim provjerama. Masovno se izvršavaju atomizirani testovi tj. svaki test provjerava jednu ranjivost.
Postoje dvije varijante provjera ranjivosti:
OpenVAS je okruženje otvorenog koda (open-source) koje sadrži više alata za ispitivanje ranjivosti sustava izdano pod GPL licencom. Alat je nastao kao derivat (fork) starijeg alata za ispitivanje ranjivosti Nessus (u razvoju od 1998. g.), a koji je u međuvremenu postao komercijalni projekt (2005. g.). Posljednja inačica (4.0.0.) objavljena je 17.4.2011.
Alat se sastoji od klijentskog i poslužiteljskog dijela, tj. od sljedećih komponenti:
Poslužiteljske servise moguće je rabiti samo unutar Linux/BSD okruženja. Budući da je poslužiteljskim dijelom alata moguće upravljati iz web preglednika, upravljanje alatom može se obavljati sa bilo kojeg računala koje posjeduje isti, uključujući i lokalno računalo. Kao alternativa pregledniku, postoji također i zasebna upravljačka aplikacija za upravljanje poslužiteljskim servisima koja se može pokretati i iz Windows (XP, Vista, 7) platformi. Osim za SuSE distribuciju Linux operacijskog sustava na kojoj se OpenVAS može instalirati iz repozitorija, alat je nužno instalirati na način da se prevede iz izvornog koda u izvršne datoteke kako bi se konačno dobila aktualna inačica.
Prethodno svim drugim koracima nužno je postaviti sve navede
ne poslužiteljske komponente. Budući da svaka komponenta posjeduje svoje konfiguracijske specifičnosti, postoji shell skripta koja korisniku olakšava taj postupak. Skripta provjerava konfiguracijske postavke svih komponenti alata od kojih su važnije stvaranje početnog administratorskog korisnika te pokretanje svih potrebnih servisa. Pri pokretanju skripte, korisnik biva informiran o svim moguće lošim postavkama te za svaku takvu postavku informira korisnika o mogućem rješenju.
Slika 1. Konfiguracija poslužiteljskih komponenti
Ranjivosti programske podrške otkrivaju se svakodnevno što rezultira novim NVT skriptama koje ispituje takve ranjivosti. Postojeće skripte također mogu doživjeti poboljšanja, stoga je nužno povremeno (te pri prvom pokretanju) ažurirati NVT skripte kako bi ispitivanje ranjivosti bilo što točnije. Nakon instalacije i postavljanja poslužiteljskih servisa, u ljusci (shell) operacijskog sustava nužno je pokrenuti naredbu openvas-nvt-sync.
Nakon postavljanja i pokretanja svih servisa, sustav je spreman za pokretanje testova.
Kako bi bilo moguće ispitivati udaljena računala, potrebno je pokrenuti OpenVAS korisničko sučelje (unutar preglednika ili pomoću klijentske aplikacije) te prijaviti se na sustav. Ukoliko su poslužiteljske komponente na lokalnom računalu iz preglednika, može im se pristupiti na localhost adresi.
Prije pokretanja sigurnosnih testova, nužno je odabrati osnovne postavke tj. obaviti sljedeće korake:
Slika 2. Postavljanje NVT skripti
Osim osnovnih postavki, korisniku su pružene i ostale mogućnosti pomoću kojih može detaljno upravljati ponašanjem alata. Tako je moguće:
Testovi se, naravno, mogu pokretati i ručno.
Slika 3. Izvršavanje zadaća testiranja
Kada je testiranje gotovo, preostaje još samo pregled izvještaja. Ovisno o odabranim skriptama, generiraju se tri razine ranjivosti:
Za svaku od pojedinih ranjivosti generira se izvješće koje daje uvid u specifičnosti iste. U izvješću su navedeni detalji poput mjesta i opisa greške unutar sustava, utjecaja na sustav u slučaju iskorištavanja ranjivosti, reference na tehničke detalje greške i sl. Svako izvješće moguće je preuzeti u bilo kojem ranije definiranom formatu (CSV, PDF, LaTeX i sl.).
Slika 4. Izvješće ispitivanja
Moguće je da alat zbog nedostatnog dizajna NVT skripte prikaže ranjivosti koje uopće ne postoje. U takvom slučaju, korisnik sam mora odlučiti radi li se o stvarnoj ranjivosti ili je došlo do greške u ispitivanju ranjivosti.
Više možete saznati na službenim stranicama alata.
Nessus, kao prethodnik OpenVAS projekta, posjeduje gotovo jednake mogućnosti, no kako je projekt komercijalne prirode, besplatan je samo za kućnu upotrebu. Budući da je projekt komercijalan, bolje je dokumentiran te posjeduje veću količinu NVT skripti što korisniku daje veću fleksibilnost testiranja te precizniji uvid u stanje sustava.
Više informacija na službenim stranicama.
Metasploit projekt posjeduje većinu mogućnosti OpenVAS okruženja, međutim kako je Metasploit primarno razvojno okruženje za ranjivosti, namijenjen je primarno naprednim korisnicima koji ranjivosti razvijaju. Projekt također posjeduje napredne metode koje skrivaju tragove aktivnosti te metode skrivanja prisutnosti kako bi se zaobišla bilo kakva vrsta alata za sprječavanje upada na sustav.
Više informacija na službenim stranicama.
OpenVAS | Nessus | Metasploit
Posljednje sigurnosne preporuke