ivanrobo Posted April 7, 2021 Report Posted April 7, 2021 Salut, am de facut un script care sa imi intercepteze trafficul in portul 80 si din el sa mi extraga diferite informatii (run a script(in your preferred language) that intercepts traffic going to endpoints that run on port 80). In prima faza am folosit functia sniff() din modulul scapy (folosesc python), aceasta are un parametru filter=' ' care are la baza bft syntax. Din ce am citit, parametrul port in bft returneaza true daca portul destinatar sau portul sursa este cel pus de mine. Eu nu cred ca asta e ceea ce imi cere problema, am folosit si tcpdump normal, am citit ca si tcp dump tot BFT are la baza. Am analizat pachetele si am si pachete care de exemplu pleca de pe ip ul meu dintr-un port diferit de 80 si ajung la dest in port 80. Pueteti sa mi explicati, va rog, cum functioneaza de fapt si cum ar trebui sa fac sau daca am inteles bine problema? Multumesc! Quote
Nytro Posted April 7, 2021 Report Posted April 7, 2021 Salut, nu stiu daca am inteles unde ai probleme, mi se pare ca esti pe drumul cel bun. Quote
ivanrobo Posted April 7, 2021 Author Report Posted April 7, 2021 Eu ma gandeam ca poate mi se cer doar pachetele care pleaca de pe ip ul meu (port 80) si pachetele care vin la mine tot in port(80), dar eu nu am captat niciun astfel de pachet. Quote
Nytro Posted April 7, 2021 Report Posted April 7, 2021 Cel mai probabil trebuie sa prinzi pachetele care cu (SRC IP: al tau si DST PORT 80) + (DST IP: al tau si SRC PORT 80), adica request-urile si response-urile. Cred ca e deajuns daca cauti pachetele pe portul 80 (si src si dst). Intra in browser si scrie http://blabla.com - sa pui acel http inainte, ca sa fortezi traficul pe http. Si ar trebui sa apara, doar sa te asiguri ca sniffing-ul se face pe interfata corecta (eth0 sau ce o fi). 1 Quote
ivanrobo Posted April 7, 2021 Author Report Posted April 7, 2021 Mersi mult, sunt mai lamurit acum. Quote
aelius Posted April 7, 2021 Report Posted April 7, 2021 - Pachetele primite o sa fie tot timpul cu destinatia dst_ip:80 (80 aici e dst port) - Pachetele trimise o sa fie tot timpul cu sursa web_server:80 (80 aici e src port) Portul sursa de la client e random, in functie de ce socketi are disponibili si ce OS este. (vizitatorul) Deci pentru a vedea cu tcpdump traficul: tcpdump -n dst port 80 # ce vine catre mine (server) tcpdump -n src port 80 # ce pleaca de la mine Mic exemplu: # Aici este ce am primit (e un POST): Flags [P.], seq 0:621, ack 1, win 270, options [nop,nop,TS val 3171944523 ecr 4086509518], length 621: HTTP: POST /site/administrator/index.php HTTP/1.1 # Aici e ce am trimis: Flags [P.], seq 1127627912:1127628432, ack 1415032493, win 61600, options [nop,nop,TS val 4086524784 ecr 3172003532], length 520: HTTP: HTTP/1.1 503 Service Temporarily Unavailable Pentru a utiliza in mod specific o interfata, aceasta se specifica cu parametru "-i" Exemplu: tcpdump -pni eth0 src port 80 Poti sa specifici flaguri, protocoale, porturi sursa, porturi destinatie si sa faci si diverse filtre complexe. Mai sunt pe aici cateva exemple: Tcpdump – quick commands 1 1 1 Quote
ivanrobo Posted April 8, 2021 Author Report Posted April 8, 2021 Am inteles acum, nu m am gandit ca socketul clientului poate fi random, eram putin in ceata. Mersi mult pentru raspunsuri, ma ajuta sa mi termin challenge-ul pentru Internship. Quote