Scanner de porturi
Verificați ce porturi TCP ale unei gazde publice acceptă conexiuni și citiți ce înseamnă fiecare port deschis pe acea gazdă și ce aveți de făcut în privința lui.
Instrumente înrudite
- Ping și tracerouteDați ping unei gazde publice pentru pierderi și latență sau urmăriți ruta către ea salt cu salt.
- Informații IPAflați rețeaua, ASN-ul, DNS-ul invers, alocarea din registru și contactul pentru abuz ale unei adrese IP sau afișați-o pe a dumneavoastră.
- Verificator TLSInspectați certificatul TLS al unui site, expirarea, emitentul și protocolul negociat, cu un calendar de reînnoire pe care îl puteți descărca și un raport complet.
- Verificare liste negreVerificați dacă o adresă IP sau serverul de e-mail al unui domeniu este listat pe listele negre DNS.
Despre acest instrument
Scannerul de porturi deschide o conexiune TCP reală de la serverul XGM către fiecare port pe care îl listați - cel mult 200 pe verificare, cu un timp de expirare de 1,5 secunde per port - și clasifică fiecare port ca deschis (strângerea de mână s-a încheiat), închis (gazda l-a refuzat activ) sau filtrat (niciun răspuns). Pe primele 40 de porturi deschise citește apoi ce anunță serviciul: salutul pe care SSH, SMTP, FTP, POP3, IMAP și MySQL îl trimit din proprie inițiativă sau linia de stare și antetul Server returnate la o singură cerere HEAD / pe porturile HTTP și HTTPS. Fiecare port deschis primește apoi o explicație, nu o linie într-un tabel: dacă este de așteptat pe o gazdă ca aceasta (80 și 443 pe un server web sunt citite ca normale și sunt lăsate în pace), ce înseamnă expunerea într-o singură frază și ce este de făcut - legați-l la 127.0.0.1, puneți-l în spatele unui VPN sau al unei liste de adrese permise, ori nimic. Bazele de date (3306, 5432, 6379, 9200, 11211, 27017), porturile de administrare (22, 3389, 5900, 623), API-urile de containere și de cluster (2375, 6443, 10250) și interfețele de administrare sunt numite fiecare după ceea ce sunt, un nume ghicit după numărul portului este scris ca o presupunere, iar o versiune este repetată doar atunci când bannerul a transmis-o efectiv. Nu se autentifică, nu trimite credențiale, nu face fuzzing, nu exploatează și nu testează vulnerabilități - o versiune dintr-un banner este un îndemn de a verifica avizele producătorului, niciodată o afirmație că versiunea ar fi afectată de ceva - și vorbește doar TCP, așa că serviciile UDP precum DNS, NTP și SNMP îi sunt invizibile.
XGM deschide, de pe serverul său, câte o conexiune TCP către fiecare port pe care îl listați (timeout de 1,5 s, până la 200 porturi). Pe porturile deschise citește salutul pe care serverele SSH, SMTP, FTP, POP3, IMAP și MySQL îl trimit din proprie inițiativă și trimite o singură cerere HEAD / către porturile HTTP și HTTPS, pentru a citi linia de stare și antetul Server. Nu se autentifică, nu trimite alte date și nu caută vulnerabilități. Numele serviciului provine din acel banner; altfel este o presupunere pornită de la numărul portului, iar o presupunere este scrisă ca atare. Fiecare port deschis este apoi explicat, nu doar listat: dacă este de așteptat pe o gazdă ca aceasta, ce înseamnă expunerea și ce se poate face - lucruri stabilite din port, din banner și din DNS-ul invers de mai jos, și din nimic altceva. O versiune este reluată doar când bannerul a conținut una; scanarea nu testează dacă acea versiune are probleme cunoscute. Antetul numește adresa scanată: înregistrarea ei PTR vine din DNS-ul public, iar ASN-ul și proprietarul rețelei de la ipwho.is, care vede astfel adresa pe care ați scanat-o.
Cum se folosește
- Deschideți instrumentul Scanner de porturi.
- Introduceți domeniul public, numele de gazdă sau adresa IP pe care doriți să le verificați.
- Rulați verificarea; XGM interoghează de pe serverul său și listează constatările.
- Copiați rezultatul doar după ce ați verificat că arată corect.
- Folosiți instrumentele XGM înrudite dacă aveți nevoie de o imagine de diagnostic mai largă.
Întrebări frecvente
Care este diferența dintre un port închis și unul filtrat?
Închis înseamnă că gazda a răspuns încercării de conectare cu un refuz (un TCP RST), deci adresa este accesibilă și nimic nu ascultă pe acel port. Filtrat înseamnă că niciun răspuns nu a sosit în 1,5 secunde, ceea ce înseamnă de obicei că un firewall aruncă pachetele în tăcere, în loc să le respingă. O gazdă ocupată sau îndepărtată poate de asemenea să depășească timpul de așteptare, așa că rulați din nou un singur port suspect înainte de a concluziona că este blocat de firewall.
Va apărea această scanare în jurnalele țintei?
Da. Acestea sunt conexiuni TCP complete, nu sonde SYN discrete, așa că fiecare port deschis vede un handshake finalizat de la adresa serverului XGM, iar porturile HTTP și HTTPS înregistrează în plus o cerere HEAD / cu User-Agent-ul XGM-PortScanner. Sistemele de detectare a intruziunilor și instrumentele de tip fail2ban pot trata asta ca pe o scanare. Verificați doar gazdele de care sunteți responsabil și așteptați-vă să vedeți ulterior serverul XGM în propriile jurnale.
De ce un serviciu spune „guess from the port number”?
Când un port nu trimite nimic recognoscibil, numele vine dintr-un tabel de căutare construit din cele mai frecvent deschise 100 de porturi TCP din nmap, plus baze de date și API-uri de administrare uzuale - așa că 3306 este etichetat MySQL pentru că de obicei acolo ascultă acest serviciu, nu pentru că ceva ar fi dovedit-o. O etichetă fără acea notă a fost citită din bannerul pe care serviciul l-a returnat efectiv. Porturile din afara tabelului sunt afișate ca „unknown service”.
Portul 22 este deschis, iar rezultatul spune că este în regulă. SSH nu este un risc?
SSH pe un server public este un lucru obișnuit: așa este administrat serverul, așa că rezultatul numește expunerea în loc să dea o alarmă. Ce spune totuși este că portul vede încontinuu încercări automate de autentificare, deci ar trebui să folosească autentificare cu cheie, cu parola și autentificarea ca root dezactivate, și să fie restricționat la un VPN sau la o listă de adrese permise acolo unde acest lucru este practic. Porturile care merită o avertizare sunt cele de care un vizitator nu are niciodată nevoie: baze de date, desktop la distanță, controlere de management, API-uri de containere și interfețe de administrare.
Un port apare deschis aici, dar închis de pe propria mea mașină. Care are dreptate?
Ambele. Verificarea rulează de pe serverul XGM, așa că vede gazda dumneavoastră prin oricare reguli de firewall, blocări geografice și liste de permisiuni care se aplică acelei adrese, în timp ce mașina dumneavoastră poate fi într-o rețea permisă sau, din interior, poate ajunge la un serviciu legat doar de o interfață privată. Rezultatul răspunde la o singură întrebare: ce acceptă conexiuni de la o adresă oarecare de pe internet.
Câte porturi pot verifica deodată și de ce unele porturi deschise nu au avut banner?
O singură verificare acceptă cel mult 200 de porturi; listele mai lungi de 20 intră sub o limită de rată mai strictă, așa că presetări precum Top 100 pot fi rulate mai rar decât câteva porturi. Bannerele sunt citite doar pentru primele 40 de porturi deschise, ca verificarea să rămână scurtă - dacă au fost deschise mai multe, rezultatul o spune și puteți scana restul într-o a doua rulare.
Citiți ghidul complet Scanner de porturi (în engleză)