You are on page 1of 8

Materijali: SIS Labosi (dio II) by GT

7. Mrena sigurnost:
SQLmap
-open source alat za penetracijska testiranja
-otkriva i iskoritava SQL injection nedostatke kako bi doao do baze podataka posluitelja

IPtables
Iptables je korisniki program koji se koristi za konfiguraciju pravila filtriranja paketa u Linux
2.4.x i 2.6.x jezgri (eng. kernel). S korisnike strane iptables je osnovni firewall program
veine Linux distribucija te u njima dolazi kao dio osnovne instalacije.
-tablice
-Linux jezgra
-vatrozid
-lanci i pravila
-filtriranje paketa
-pokretanje u user root nainu
Postoje 4 osnovne tablice u iptables konfiguraciji: filter, nat, mangle i raw.
U filter tablici postoje tri osnovna lanca:
-INPUT- (definira pravila za ulazne pakete) paket e biti lokalno isporuen
-OUTPUT- (definira pravila za izlazne pakete) u lanac e ui paketi poslani od strane samog
ureaja
-FORWARD- (definira pravila za pakete koje posluitelj proslijeuje) bit e isporueni svi
paketi koji su usmjereni i nisu za lokalnu isporuku
Na svakom lancu definira se osnovna politika (pravila) rukovanja paketima:
-ACCEPT (bezuvjetno prihvaanje paketa) svi se paketi prihvaaju
-DROP- bezuvjetno odbacivanje paketa
-LOG- stvara zapise o paketu u log datotekama (kasnije taj paket moe biti odbaen ili
prihvaen ovisno o pravilima)

Filtriranje paketa- shema:


_____
Incoming

Outgoing

-->[Routing ]--->|FORWARD|------->
[Decision]

\_____/

____

___
/

/
\

|OUTPUT|

|INPUT|

\____/

\___/

|
----> Local Process ----

Pregled osnovnih funkcija alata:


Lanac:
INPUT

Promet koji posluitelj prima

FORWARD

Promet koji posluitelj usmjerava

OUTPUT

Promet koji posluitelj alje

Naredba:
iptables -L

Ispisuje sadraj iptables-a

iptables -A CHAIN [PRAVILO]

Dodaje pravilo u lanac

iptables -D CHAIN N

Brie pravilo rednog broja N iz lanca (N=1,2,3,4 itd.)

iptables -F

Brisanje svih pravila u svim lancima

iptables -F CHAIN

Brisanje svih pravila u lancu

iptables-save

Spremanje konfiguracije vatrozida u datoteku

iptables-restore

Postavljanje konfiguracije vatrozida iz datoteke

Mete:
ACCEPT

Prihvati promet i zavri prolaz kroz lanac

REJECT

Sprijei promet i zavri prolaz kroz lanac

DROP

Odbaci promet bez javljanja greke i zavri prolaz

LOG

Zabiljei okidanje pravila i nastavi prolaz

Parametri:
-p PROTO

Odabir protokola (PROTO= TCP, UDP, ICMP, all)

-p PROTO -h

Ispii mogua pravila za podudaranje za zadani protokol

-d DESTINATION

Odabir odredita (IP, CIDR ili HOST)

-s SOURCE

Odabir izvora (IP, CIDR ili HOST)

-j TARGET

Skakanje na neku metu (krajnji parametar)

Podudaranja:
--dport PORT

Po ciljnom portu/ protokolu (PORT=22, 23,..., www, SMTP, POP3)

--sport PORT

Po izvornom portu / protokolu (PORT=22, 23,..., www, SMTP, POP3)

-m mac --mac-source MAC

Podudaranje po MAC adresi

-m multiport

Podudaranje po vie portova (--ports --sports)

--------------------------------------------------------------------------------------------------------------------------Primjer pravila: Opis:


iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -j REJECT

Odbijanje svog ulaznog prometa osim naih uspostavljenih


veza

iptables -A OUTPUT -p tcp --dport www -j REJECT

Blokiranje izlaznog www prometa

iptables -A OUTPUT -p tcp --dport smtp -j REJECT

Blokiranje izlaznog SMTP prometa

iptables -A OUTPUT -p tcp -d 64.58.76.0/24 --dport www -j REJECT

Blokiranje www prometa


sa CIDR maskom

iptables -A OUTPUT -d www.net.hr --dport www -j REJECT

Blokiranje

www

prometa

prema host-u
iptables -A INPUT -i lo -j ACCEPT

Prihvaanje prometa s lokalnog raunala

iptables -A INPUT -i lo -j ACCEPT


iptables -A INPUT -m mac --mac-source 11:22:33:44:55:66 -j ACCEPT
iptables -A INPUT -j REJECT

Prihvaanje prometa samo od raunala s odreenom MAC


adresom

iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

Odbacivanje ping-a (ICMP)

iptables -A INPUT -i lo -j ACCEPT


iptables -A INPUT -m multiport -p tcp --dport www,ssh,smtp j ACCEPT
iptables -A INPUT -j LOG
iptables -A INPUT -j REJECT

Primanje www, SSH i SMTP prometa po TCP protokolu prema


naem posluitelju, sve ostale pokuaje biljeimo (LOG) te
zabranjujemo

iptables -A INPUT -s 209.85.137.0/24 -j REJECT

Blokiranje prometa prema naem


posluitelju pomou CIDR maske

8. Testiranje sustava sigurnosti:


OWASP Broken Web Applications
-aplikacije koja sadri poznate ranjivosti sustava
-slui za uenje o sigurnosti sustava
-pokree se kao virtual machine na kojem korisnik moe simulirati napad
-podruja:
-Sigurnost web aplikacija
-Testiranje automatiziranih alata
-Promatranje web napada
-Testiranje WAF i slinih tehnika itd.
-napadi:
Brute force
Brute force napad ili napad uzastopnim pokuavanjem je jednostavna, ali uspjena tehnika
rjeavanja problema koja se sastoji od sustavnog pronalaenja svih moguih kandidata za
rjeenje i isprobavanja svakog od njih. Brute force napad je jednostavan za implementaciju i
esto se koristi za probijanje zaporki ili raznih enkripcija, a osim to je jednostavan, on uvijek
i pronalazi rjeenje, ako ono postoji. Meutim, vrijeme i resursi potrebni za rjeavanje
problema ovom metodom rastu proporcionalno s brojem moguih kandidata za rjeenje. Za

ovakve napade se koriste skripte koje provjeravaju sve mogue kombinacije unutar
zadanih granica ili koriste podatke iz tzv. rijenika.
Kako bi se to sprijeilo, treba onemoguiti pristup uslugama u vrijeme kada to nije
potrebno. Lozinke i korisnika imena moraju sadravati mala i velika slova, brojeve i
specijalne znakove.
4

Command execution
Svrha ovog napada je upad i izvravanje naredbi u ranjivoj aplikaciji. Udaljeno pozivanje

naredbi (Remote Code Execution) je jedna od moguih ranjivosti web stranica, a


zlonamjerni

korisnik

moe

izvriti

programske

naredbe

pod

privilegijama

administratora. To se odvija bez znanja autora web stranice koja je napadnuta.


Napada na ovaj nain moe upravljati raunalom na eljen nain.
Na novijim operacijskim sustavima postoji sustav koji sprjeava izvravanje naredbi
koje se ne nalaze u memorijskom prostoru aplikacija. Time se moe sprijeiti opisani
napad.
File Inclusion
Remote File Inclusion (RFI) je oblik ranjivosti web aplikacije kojom je omoguen napad s
udaljenog raunala. On prua napadaima mogunost da pokreu svoj vlastiti maliciozni kod
na ranjivom web serveru. Napadai maliciozni kd predstave kao legitimnu skriptu koja bi se
trebala nalaziti na ranjivom web serveru.
Kako bi se sprijeio sigurnosni propust ovog tipa, potrebno je provjeriti sadre li uneeni
parametri (input) pogrene znakove (poput zagrada i sl.) ili referencu na datoteku koja se
nalazi na nekoj udaljenoj lokaciji.
Upload
Omoguavanje korisnicima da postave svoje datoteke na web server, otvorilo je vrata
zlonamjernim korisnicima da u toj funkcionalnosti pronau nain za kompromitaciju web
servera. Do znaajnih problema uzrokovanih ovim sigurnosnim propustom dolazi zbog
manjka ispravnih naina ispitivanja sadraja koji se postavlja na web server (upload).

Postoji nekoliko naina kojima se poveava stupanj sigurnosti:


-ispitivanje tipa datoteke koji se postavlja na web server
-postavljanje nasuminih naziva datoteka i direktorija
-skeniranje datoteka antivirusnim programima
-sigurnost direktorija web aplikacije
-zapisivanje aktivnosti korisnika itd.
SQL injection

SQL injection je metoda koja omoguuje napadau web stranice pristup bazi podataka
iz koje napadnuta web stranica uzima podatke. Do ovog tipa ranjivosti dolazi ukoliko
5

napadnuta web stranica ne provjerava podatke koje je dobila od napradaa, ve na


temelju neprovjerenih podataka pokree SQL upite koji mogu natetiti strukturi i
podacima baze podataka. Napadai obino provjeravaju je li web stranica ranjiva
metodom SQL injection tako da gledaju poruku o greci u SQL upitu koju im sustav
vrati. Napada e na temelju ispravnog upita dodavati novi SQL upit preko kojeg e
probijati sigurnost podataka napadnute baze podataka. Postavljanjem zabrane
prikazivanja teksta greke, problem se ne rjeava u potpunosti.
Postoji nekoliko naina zatite web aplikacije od ove vrste napada:
-koritenje pohranjenih procedura
-postavljanje ogranienja korisnika nad bazom podataka
-odreivanje tipa, duljine, formata i raspona vrijednosti ulaznih podataka itd.
XSS

XSS (Cross-Site Request Forgery) napadom korisnik eli nesvjesno izvriti odreene
radnje na web aplikacijama. Ovim napadom se iskoritava korisnikov cookie zapis, a
da korisnik toga nije svjestan. Izvodi se posredovanjem klijentskog programa. Napadi
se mogu izvesti:
-pomou zlonamjerno oblikovanih HTML objekata,
-pomou skriptnog koda umetnutog u HTML (JavaScript, PHP)
-zlouporabom automatskog generiranja zahtjeva u pregledniku (XMLHttpRequest).
Da bi smanjio rizik XSS napada korisnik moe onemoguiti izvoenje skriptnih jezika
u web pregledniku. Moe se koristiti kodiranje generiranih stranica i filtriranje
posebnih znakova.

Nmap
-alat za skeniranje, analizu i debug mree
-Filtriranje paketa (Ipv4/6), mrenih adresa i portova, translacija adresa (NAT)
-skeniranje portova (TCP, UDP)
-detekcija OS-a, otkrivanje verzije OS-a, ping itd.
-Linux, Mac, Windows platforme
-dostupna GUI i verzija koja se pokree iz komandne linije

Pregled osnovnih funkcija alata:


Tip skeniranja:
-sP

(Ping scan) provjeravamo da li je posluitelj online

-sS

(Syn Scan) skeniranje s poluotvorenim TCP rukovanjem (Syn, SynAck)

-sT

(Connect Scan) skeniranje punim TCP rukovanjem (Syn, SynAck, Ack)

Opcije:
-p X

Skeniranje porta X, npr: -p22)

-pX-Y

Skeniranje portova od X do Y, npr. -p1-65535)

--top-ports X

Skeniraj samo X najpopularnijih portova, npr. --top-ports 10)

--version-all

Testiranje svih moguih metoda identifikacije i pravljenja otiska servisa)

--osscan-guess

Pokuaj agresivnijeg detektiranja tip OS-a

-TX

Brzina skeniranja X (-T0 Sporo, -T3 Normalno, -T5 Agresivno, X=0,1..., 5)

-A

Aktivacija detekcije verzije, OS-a, skripte za testiranje i traceroute

-PN

Ne provjerava dali je raunalo aktivno

Mete:
scanme.nmap.org

Po hostnameu

192.168.1.1/24

Po CIDR maski

192.168.1.1-254

U rasponu (1-254)

-iL DAT

Preko datoteke DAT

--------------------------------------------------------------------------------------------------------------------------Primjer skeniranja:
nmap -sP 192.168.1.1-254

Provjerava koja su raunala aktivna u rasponu 192.168.1.1 do


192.168.1.254

nmap -sS 192.168.1.1

Skenira najpopularnije otvorene portove na raunalu


192.168.1.1

nmap -sS -p1-65535 192.168.1.1

Skenira sve otvorene portove na raunalu 192.168.1.1

nmap -sS -p1-65535 -A --version-all O --fuzzy -v -v 192.168.1.1

Detaljno skeniranje raunala


192.168.1.1

nmap -sS -p22 -T0 -v -v 192.168.1.1-254

Sporo skeniranje samo raunala koja imaju otvoreni


port 22 (SSH) u rasponu od 192.168.1.1 do
192.168.1.254

You might also like