Sunteți pe pagina 1din 4

LUCRAREA 2

Urmarirea conexiunilor (Partea 1)




1.Urmarirea conexiunilor

1.1 Starile in care se poate gasi o conexiune.

Starile in care se poate gasi o conexiune pot fi:

-NEW: Starea pachet nou (NEW) ne spune c, pachetul este primul pachet pe care l
vedem dontr-o conexiune. Aceasta nseamn c, primul pachet pe care modulul conntrack
l vede ntr-o conexiune specific, se va potrivi acestei stri. De exemplu dac vedem un
pachet SYN, si acesta este primul pachet dintr-o conexiune pe care pe care o urmrim,
acest pachet se va potrivi acestei stri. Se poate ca pachetul s nu fie SYN i cu toate
acestea el se va potrivi starii NEW. Acest lucru poate duce la anumite probleme, dar este
foarte util atunci cnd dorim s restabilim o conexiune pierdut de la alte firewalluri, sau
atunci cnd o conexiune este deja expitat (time out), dar in realitate ea nu este nchis.

-ESTABLISHED: Starea ESTABLISHED ne spune c, exist trafic n ambele direcii si
ea se va potrivi continuu acelor pachete. Singura cerina pentru a se ajunge in starea
ESTABLISHED este ca un host care a trimis un pachet, s primeasc raspuns la acesta..
Mesajul de eroare ICMP poate fi considerat m starea ESTABLISHED, asta dac am
generat un pachet care la rndul lui genereaz un mesaj ICMP.

-RELATED: O conexiune este n starea RELATED cand este nrudit cu o alta
conexiune aflat in starea ESTABLISHED. Un exemplu de astfel de conexiune este
conexiunea de date de tip FTP(File Transfer Protocol), care se sonsider a fi nrudit cu
portul de control FTP. Aceast stare poate fi utilizat pentru a permite respuns la ICMP,
transfer FTP care s functioneye printr-un firewall.

-INVALID: Starea INVALID spune c, pachetul nu poate fi identificat, sau c el nu are
nici o stare. Acest lucru poate s apar din mai multe motive cum ar fi: sistemul nu mai
are memorie disponibil, sau un mesaj de eroare ICMP care nu provine de la nici o
conexiune cunoscut. n general este bine s blocam tot ceea ce se afl in aceast stare.

2 Mecanismul de stare a conexiunii

2.1. Intrarile conntrack

Urmrirea conexiunii este realizat cu ajutorul unui pachet disponibil n kernelul
linux, numit conntrack. Acesta poate fi ncarcat ca i modul, sau ca parte intern a
kernelului. Urmele de conexiune sunt inute n lanul PREROUTING, cu excepia
pachetelor generate local, care sunt inute n lanul de ieire (OUTPUT). Aceasta
nseamn c iptables va recalcula starile conexiunii n interiorul lanului PREROUTING.
Dac de exemplu trimitem pachetul iniial ntr-un stream, starea conexiunii va fi setat ca
fiind NEW n interiorul lanului OUTPUT, i cnd primim un pachet de raspuns la
pachetul pe care l-am trimis, starea conexiunii se schimba n ESTABLISHED n lanul
PREROUTING. Dac primul pachet nu are ca origine calculatorul pe care ne aflam,
starea va fi NEW n interiorul lanului PREROUTING. Astfel starea unei conexiuni se
schimb, iar calculele sunt facute n lanurile PREROUTING i OUTPUT ale tabelei nat.

Pentru a vedea intrarile conntrack se executa comanda cat /proc/net/ip_conntrack.
Aceasta va furniza o list a intrarilor din baza de date conntrack.Forma acestora este:


t cp 6 117 SYN_SENT sr c=192. 168. 1. 6 dst =192. 168. 1. 9 spor t =32775 \
dpor t =22 [ UNREPLI ED] sr c=192. 168. 1. 9 dst =192. 168. 1. 6 spor t =22 \
dpor t =32775 use=2

Modulul conntrack ine o astfel de intrare pentru a ti n ce stare se afl o conexiune la
un moment dat.
n exemplul de mai sus, pe primul loc avem protocolul, care n cazul nostru este tcp.
Apoi este aceeai valoare dar n cod zecimal. Urmatoarea valoare specific timpul de
via al acestei intrri. n cazul nostru 117 secunde din momentul actual, valoare care
urmeaz s fie decrementat pan in momentul cnd se recepioneaz mai mult trafic.
Aceast valoare este apoi resetat la valoarea iniiala a unei stari, specifica unui anumit
moment de timp.
Urmeaz apoi starea actual a conexiunii pe care aceast intrare o are n momentul de
fa. Valoarea SYN_SENT ne spune ca ne uitam la o conexiune care a vazut un singur
pachet TCP SYN ntr-o singur direcie. Urmeaz adresa IP surs iar apoi cea destinaie,
portul surs apoi portul destinaie. Cuvnt cheie UNREPLIED(fara raspuns), ne spune
c nu avem trafic n sens invers pentru aceast conexiune. n urmatorii parametri se
poate citi ceea ce asteptam s primim ca rspuns. Se specific adresa IP surs i cea
destinaie (care sunt inversate faa de cele anterioare deoarece pachetul este directat spre
noi de aceast dat) iar apoi urmeaz porturile sursa si destinaie, care la fel sunt
inversate.
Cnd o conexiune vede trafic n ambele direcii, intrarea conntrack va sterge
flagul UNREPLIED, apoi l va reseta i l va nlocui cu flagul de asigurare a conexiunii
(ASSURED). Flagul ASSURED specific faptul c, aceast conexiune este asigurat, i
ea nu va fi eliminat, dac se va atinge numarul maxim de conexiuni urmarite. Numrul
maxim de conexiuni urmrite depinde de o variabil care poate fi setat cu ajutorul
funciilor ip-sysctl folosit n kernelurile mai recente. Aceasta variabil poate fi setat in
fisierul ip_conntrack_max care se gaseste n directorul /proc/sys/net/ipv4.

2.2 Conexiuni TCP

n acest capitol i n urmatoarele, vom analiza n detaliu strile n care se
poate gasi un pachet i ce nseamn aceste stari pentru cele trei protocoale de baz i
anume TCP, UDP, ICMP.
O conexiune TCP este initiat tot timpul prin 3 numii i pai de handshake, care
stabilesc i negociaz conexiunea prin care se vor transmite date. ntreaga sesiune este
inceput cu un pachet SYN, apoi un pachet SYN/ACK i n cele din urm un pachet de
confirmare de pachet(ACK), care aprob intreaga conexiune. n acest punct conexiunea
este stabilit i gata s transmit date. ntrebarea care se pune este, cum se reuseste sa se
urmareasc aceast conexiune?
Cand se vede un pachet (pachetul SYN), se consider c, avem o conexiune NEW.
Cand avem i un pachet de raspuns (SYN/ACK), se consider, c avem conexiunea n
starea stabilit (ESTABLISHED). Cu aceast observaie, rezult c putem implementa un
firewall n care s permitem pachetelor NEW i ESTABLISHED, s paraseasc reeaua
local, si s permitem doar pachetelor ESTABLISHED s intre n reteaua noastr.




Figura 3.1

Dup cum se vede, lucrurile funcineaz destul de simplu din punctul de vedere al
utilizatorului. Cu toate acestea privind lucurile din punctul de vedere al kernelului,
problema este puin mai dificil. S privim un exemplu. Prima stare este cea raportata de
existenta primului pachet SYN ntr-o conexiune.

t cp 6 117 SYN_SENT sr c=192. 168. 1. 5 dst =192. 168. 1. 35 spor t =1031 \
dpor t =23 [ UNREPLI ED] sr c=192. 168. 1. 35 dst =192. 168. 1. 5 spor t =23 \
dpor t =1031 use=1

Dup cum se vede, din cele de mai sus, avem o stare precizat, n care un pachet
SYN a fost trimis (flagul SYN_SENT este setat), la care nca nu avem un raspuns (flagul
UNREPLIED este setat). Urmatoarea stare intern, va fi atins, atunci cnd vedem un alt
pachet venind din direcie opus.

t cp 6 57 SYN_RECV sr c=192. 168. 1. 5 dst =192. 168. 1. 35 spor t =1031 \
dpor t =23 sr c=192. 168. 1. 35 dst =192. 168. 1. 5 spor t =23 dpor t =1031 \
use=1

Acum am primit ca raspuns un pachet SYN/ACK corespondent pachetului anterior trimis.
Atata timp ct acest pachet a fost recepionat, starea se schimb n SYN_RECV. Acest
nou flag ne spune ca pachetul SYN original a fost livrat corect, i c pachetul returnat
SYN/ACK a trecut prin firewall. Ultimul pas va fi atins cand va apare cel de-al treilea
ACK.

t cp 6 431999 ESTABLI SHED sr c=192. 168. 1. 5 dst =192. 168. 1. 35 \
spor t =1031 dpor t =23 sr c=192. 168. 1. 35 dst =192. 168. 1. 5 \
spor t =23 dpor t =1031 use=1

Dupa primirea celui de-al treilea ACK, conexiunea intr n starea ESTABLISHED
(conexiune stabilita). Dupa inca cateva pachete, conform mecanismului de funcionare
iptables, conexiunea va fi considerat asigurat (ASSURED)

nchiderea conexiunii TCP urmeaz pasii prezentai n figur, i ia urmtoarele stri:



Figura 3.2

Dup cum se vede, conexiunea nu este niciodat nchis, pan cand nu se trimite
ultimul ACK. De notat este faptul c n figura de mai sus este prezentat cazul nchiderii
conexiunii n circumstane normale. O conexiune poate de asemenea s fie nchis cnd
se trimite un RST (reset), dac cnexiunea este refuzat de exemplu. n acest ultim caz,
conexiunea este nchisa dup un timp predeterminat.
Cnd o conexiune TCP a fost nchis, conexiunea intr n starea de asteptare
(TIME_WAIT) care este n mod normal setat la dou minute. Aceast stare este utilizat
astfel nct, toate pachetele care din anumite motive nu au fost primite, s mai poat
ajunge la destinaie chiar dac conexiunea a fost nchis. Este ca i cum am avea un
buffer temporar astfel nct pachetele care au fost intrziate ntr-un router care este
congestionat s mai poat trece n firewall, sau n celalalt capt al conexiunii.
Dac conexiunea este resetat de pachetul de reset (RST), starea este schimbata in
CLOSE.Conexiunea va continua s mai existe timp de zece secunde, dup care este
nchis definitiv. Pachetele RST, nu primesc ACK n nici un sens, iar conexiunea este
efectiv rupt.

Intrebari Lucrarea 2:

1) Cand este o conexiune in starea RELATED? Dati un exemplu.
2) Unde sunt tinute urmele conexiunii?
3) Ce particularitati intalneste o conexiune inchisa printr-un pachet de reset?

S-ar putea să vă placă și

  • Ch7.3-Protocoale de Dirijare Interioare RIP-IGRP
    Ch7.3-Protocoale de Dirijare Interioare RIP-IGRP
    Document5 pagini
    Ch7.3-Protocoale de Dirijare Interioare RIP-IGRP
    Alexandru Ploscaru
    Încă nu există evaluări
  • OTDR - PocketGuide (Romanian E0401)
    OTDR - PocketGuide (Romanian E0401)
    Document96 pagini
    OTDR - PocketGuide (Romanian E0401)
    Daniela Domnici
    Încă nu există evaluări
  • Generalităţi Despre Sistemul de Operare Windows: Bazele Informaticii Economice
    Generalităţi Despre Sistemul de Operare Windows: Bazele Informaticii Economice
    Document108 pagini
    Generalităţi Despre Sistemul de Operare Windows: Bazele Informaticii Economice
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Cap 8
    Cap 8
    Document0 pagini
    Cap 8
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Lab-Fr 4
    Lab-Fr 4
    Document7 pagini
    Lab-Fr 4
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Cap 10
    Cap 10
    Document49 pagini
    Cap 10
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Lab-Fr 3
    Lab-Fr 3
    Document6 pagini
    Lab-Fr 3
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Telnet FTP
    Telnet FTP
    Document5 pagini
    Telnet FTP
    qweasda
    Încă nu există evaluări
  • Lab-Fr 1
    Lab-Fr 1
    Document6 pagini
    Lab-Fr 1
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Intranet
    Intranet
    Document19 pagini
    Intranet
    Tertelie Vasile Ion
    Încă nu există evaluări
  • SQL 8
    SQL 8
    Document4 pagini
    SQL 8
    dubceacvlad
    Încă nu există evaluări
  • Cap 8
    Cap 8
    Document0 pagini
    Cap 8
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Crearea Unei Baze de Date Prin Comenzi SQL
    Crearea Unei Baze de Date Prin Comenzi SQL
    Document33 pagini
    Crearea Unei Baze de Date Prin Comenzi SQL
    cornel0913
    Încă nu există evaluări
  • SQL 9
    SQL 9
    Document54 pagini
    SQL 9
    dubceacvlad
    Încă nu există evaluări
  • Cap 10
    Cap 10
    Document49 pagini
    Cap 10
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Cap 8
    Cap 8
    Document0 pagini
    Cap 8
    Tertelie Vasile Ion
    Încă nu există evaluări
  • SQL 9
    SQL 9
    Document54 pagini
    SQL 9
    dubceacvlad
    Încă nu există evaluări
  • SQL 8
    SQL 8
    Document4 pagini
    SQL 8
    dubceacvlad
    Încă nu există evaluări
  • Bucuresti
    Bucuresti
    Document17 pagini
    Bucuresti
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Studii of Indirect
    Studii of Indirect
    Document13 pagini
    Studii of Indirect
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Cap7 Baze de Date TIC 2010
    Cap7 Baze de Date TIC 2010
    Document105 pagini
    Cap7 Baze de Date TIC 2010
    Liviu Avram
    Încă nu există evaluări
  • Retele de Calculatoare
    Retele de Calculatoare
    Document62 pagini
    Retele de Calculatoare
    Kinga Iakab
    100% (1)
  • Test Mensa
    Test Mensa
    Document1 pagină
    Test Mensa
    Tertelie Vasile Ion
    Încă nu există evaluări
  • BRC 161 Impar
    BRC 161 Impar
    Document0 pagini
    BRC 161 Impar
    Tertelie Vasile Ion
    Încă nu există evaluări
  • Emil Garleanu
    Emil Garleanu
    Document23 pagini
    Emil Garleanu
    Tertelie Vasile Ion
    Încă nu există evaluări