Network Protocols Explained (ESP)

Sostieni HackTricks

Multicast DNS (mDNS)

Il protocollo mDNS è progettato per la risoluzione degli indirizzi IP all'interno di reti locali di piccole dimensioni senza un server di nomi dedicato. Funziona mediante l'invio in multicast di una query all'interno del subnet, sollecitando l'host con il nome specificato a rispondere con il proprio indirizzo IP. Tutti i dispositivi nel subnet possono quindi aggiornare le proprie cache mDNS con queste informazioni.

Punti chiave da notare:

  • Rilascio del Nome di Dominio: Un host può rilasciare il proprio nome di dominio inviando un pacchetto con un TTL di zero.

  • Restrizione d'Uso: mDNS risolve tipicamente nomi che terminano in .local solamente. Conflitti con host non-mDNS in questo dominio richiedono aggiustamenti nella configurazione di rete.

  • Dettagli di Rete:

    • Indirizzi MAC multicast Ethernet: IPv4 - 01:00:5E:00:00:FB, IPv6 - 33:33:00:00:00:FB.

    • Indirizzi IP: IPv4 - 224.0.0.251, IPv6 - ff02::fb.

    • Opera sulla porta UDP 5353.

    • Le query mDNS sono limitate alla rete locale e non attraversano i router.

DNS-SD (Service Discovery)

DNS-SD è un protocollo per scoprire servizi in una rete interrogando specifici nomi di dominio (ad esempio, _printers._tcp.local). Una risposta include tutti i domini correlati, come ad esempio le stampanti disponibili in questo caso. Un elenco completo dei tipi di servizio può essere trovato qui.

SSDP (Simple Service Discovery Protocol)

SSDP facilita la scoperta di servizi di rete ed è principalmente utilizzato da UPnP. Si tratta di un protocollo basato su testo che utilizza UDP sulla porta 1900, con indirizzamento multicast. Per IPv4, l'indirizzo multicast designato è 239.255.255.250. La base di SSDP è HTTPU, un'estensione di HTTP per UDP.

Web Service for Devices (WSD)

I dispositivi connessi a una rete possono identificare i servizi disponibili, come le stampanti, attraverso il Web Service for Devices (WSD). Questo coinvolge la trasmissione in broadcast di pacchetti UDP. I dispositivi che cercano servizi inviano richieste, mentre i fornitori di servizi annunciano le loro offerte.

OAuth 2.0

OAuth 2.0 è un protocollo che facilita la condivisione sicura e selettiva delle informazioni degli utenti tra servizi. Ad esempio, consente ai servizi di accedere ai dati dell'utente da Google senza effettuare accessi multipli. Il processo coinvolge l'autenticazione dell'utente, l'autorizzazione da parte dell'utente e la generazione di token da parte di Google, consentendo l'accesso del servizio ai dati specificati dell'utente.

RADIUS

RADIUS (Remote Authentication Dial-In User Service) è un protocollo di accesso di rete utilizzato principalmente dagli ISP. Supporta l'autenticazione, l'autorizzazione e la contabilizzazione. Le credenziali dell'utente vengono verificate da un server RADIUS, includendo potenzialmente la verifica dell'indirizzo di rete per una maggiore sicurezza. Dopo l'autenticazione, gli utenti ricevono l'accesso alla rete e i dettagli della loro sessione vengono tracciati per scopi di fatturazione e statistici.

SMB e NetBIOS

SMB (Server Message Block)

SMB è un protocollo per la condivisione di file, stampanti e porte. Opera direttamente su TCP (porta 445) o tramite NetBIOS su TCP (porte 137, 138). Questa compatibilità duale migliora la connettività con vari dispositivi.

NetBIOS (Network Basic Input/Output System)

NetBIOS gestisce sessioni e connessioni di rete per la condivisione di risorse. Supporta nomi univoci per i dispositivi e nomi di gruppo per più dispositivi, consentendo messaggi mirati o di broadcast. La comunicazione può essere senza connessione (senza conferma) o orientata alla connessione (basata su sessione). Sebbene NetBIOS operi tradizionalmente su protocolli come IPC/IPX, è comunemente utilizzato su TCP/IP. NetBEUI, un protocollo associato, è noto per la sua velocità ma era anche piuttosto verboso a causa della trasmissione in broadcast.

LDAP (Lightweight Directory Access Protocol)

LDAP è un protocollo che consente la gestione e l'accesso delle informazioni di directory su TCP/IP. Supporta varie operazioni per interrogare e modificare le informazioni della directory. Principalmente, è utilizzato per accedere e mantenere servizi di informazioni di directory distribuite, consentendo l'interazione con database progettati per la comunicazione LDAP.

Active Directory (AD)

Active Directory è un database accessibile in rete che contiene oggetti come utenti, gruppi, privilegi e risorse, facilitando la gestione centralizzata delle entità di rete. AD organizza i suoi dati in una struttura gerarchica di domini, che possono comprendere server, gruppi e utenti. I sottodomini consentono una segmentazione ulteriore, ognuno potenzialmente mantenendo il proprio server e base utenti. Questa struttura centralizza la gestione degli utenti, concedendo o limitando l'accesso alle risorse di rete. Le query possono essere effettuate per recuperare informazioni specifiche, come i dettagli dei contatti, o per individuare risorse, come le stampanti, all'interno del dominio.

Sostieni HackTricks

Last updated