In het LAN, Sniffer is een zeer grote bedreiging. Kwaadwillende gebruikers kunnen zien een aantal geheime documenten en te nemen en enkele van de persoonlijke levenssfeer. Sniffer is een dergelijke bedreiging voor de veiligheid, maar het kan makkelijk omhoog en omlaag het internet gratis downloaden en installeren op de pc. Echter, tot dusver, is er geen goede manier om te ontdekken wie de pc naar de Sniffer software te installeren. Dit document behandelt het gebruik van ARP-pakketten op te sporen die het bedrijf en de school LAN Sniffen de kwaadwillende gebruiker.
Netwerkkaart promiscuous mode: Open de achterdeur om informatie te stelen Sniffer
Ethernet LAN wordt vaak gevormd. Ethernet wordt gebruikt in de IPv4-protocol, de gegevens worden doorgegeven in de heldere, tenzij het gebruik van encryptie software. Wanneer gebruikers informatie naar het netwerk, hij hoopte maar dat de andere kant van de netgebruikers kan ontvangen. Helaas, de Ethernet-systeem om onbevoegde gebruikers afluisteren van de informatie.
We weten dat in Ethernet, de informatie zal worden verstuurd naar alle nodes in het netwerk, zullen sommige knooppunten deze informatie ontvangen, en sommige van de node zal alleen maar gooi de informatie. Informatie ontvangen of weggegooid door de netwerkkaart te controleren. NIC krijgt geen alle pakketten verstuurd naar de LAN, zelfs als het aangesloten op de Ethernet; het tegendeel, zal het filter specifieke pakketten. In dit document zullen we noemen dit filter hardware filter voor de netwerkkaart. Sniffer zal worden opgericht voor een specifiek patroon-kaart, dus card kunnen ontvangen alle binnenkomende pakketten, en niet of zij niet het adres van bestemming aangegeven door deze pakketten. Dit model is genoemd promiscuous mode netwerkkaart.
Sniffer ontvangt alle pakketten, in plaats van het verzenden van illegale pakketten. Dus het niet interfereert met de normale werking van het netwerk, is het moeilijk op te sporen deze schadelijke gedrag. Zelfs zo, de netwerkkaart promiscuous mode is duidelijk verschillend van het normale patroon. Een pakket moet zijn gefilterd in deze modus zal worden toegestaan om de kernel te bereiken. Is het niet reageren op afhankelijk van het systeem kernel.
Degenen die streven naar de fatale zwakte van Sniffer te stelen
We testen de methode met een hybride model real-world voorbeelden te evenaren. Veronderstel dat de kamer is in een vergadering. Een luisterend oor, die op zich met zijn conferentieruimte muur. Toen hij werd afgeluisterd, zal hij je adem inhouden, rustig luisteren naar de conferentiezaal van de dialoog. Maar als iemand schreeuwde naar de vergadering in zijn naam, "MR. **?" Afluisteraars zou soms antwoord "JA!" Deze analogie lijkt absurd, maar wel degelijk gebruikt voor het testen van het netwerk snuffelen op het internet. Omdat SINFFER ontvangt alle pakketten, met inbegrip van degenen die niet hebben gestuurd, dus het zou kunnen netwerkkaart die had moeten worden gefilterd om verkeerd te reageren op het pakket. Daarom hebben we gemengde modus testen op de volgende basis: om alle knooppunten op het netwerk van ARP verzoek pakket te verzenden, controleer dan de ARP response packet is er niet.
Om uit te leggen dit principe, in de eerste plaats hebben we geleerd van de netwerkkaart promiscuous mode, en het verschil tussen de normale modus te starten. Alle kamers hebben een 6-byte Ethernet-hardware-adres. Fabrikanten van deze adressen toe te wijzen, en elk adres is uniek. Theoretisch, geen twee dezelfde netwerkkaart hardware-adres. Ethernet is gebaseerd op de uitwisseling van informatie op basis van het hardware-adres. Maar de kaart om verschillende soorten datapakketten ontvangen, kunt u verschillende mechanismen filtering. Zijn een verscheidenheid van mechanismen voor het filteren op de kaart als volgt:
Unicast (unicast)
Ontvang alle bestemmingsadres en de netwerkkaart als de hardware-adres van het pakket.
Radio (Broadcast)
Ontvang alle broadcast-pakketten. Broadcastpakket bestemmingsadres wordt FFFFFFFFFFFF. Dit model is om te kunnen degenen die willen alle knooppunten in het netwerk te bereiken pakketjes te ontvangen.
Multicast (Multicast)
Ontvang alle pre-geregistreerde groep van goede-specifieke pakketten. Alleen degenen die een pre-geregistreerde groepen worden ontvangen van kaarten.
Alle multicast (Alle Multicast)
Ontvang alle multicast. Dit model en de bijbehorende protocollen bovenste, zal deze modus krijgt alle multicast-bit ingesteld op 1 zakje.
Hybride (Promiscuous)
Ontvang alle pakketten, ongeacht de bestemming adres is.
De figuur aangegeven in de normale modus en mixed mode, de hardware filter wijze van exploitatie. Doorgaans zal de kaart die de hardware filter unicast-, broadcast en multicast een model. Kaart alleen naar het bestemmingsadres en de hardware-adres krijgen, omdat het broadcast adres (FF: FF: FF: FF: FF: FF) en multicast-adres 1 (01:00:5 E: 0:00:01).
ARP testkits om promiscuous mode node te identificeren
Zoals eerder vermeld, de kaart ingesteld op promiscuous mode op de normale modus en packet filtering is anders. Wanneer de kaart is ingesteld op mixed mode, anders is het pakket zal worden toegestaan om het filter kernel te bereiken. Met behulp van dit mechanisme hebben we een nieuw mechanisme voor de promiscuous mode node sporen vast te stellen: Als het adres van bestemming is niet de aanleg van een broadcast-adres van de ARP-pakket, stuur het naar het netwerk elk knooppunt, het knooppunt indien gevonden om enkele reactie krijgt, dan hebben deze knooppunten werken in promiscuous mode.
Wij hebben gewoon kijken naar een normale ARP verzoek en reactie werkwijze. In de eerste plaats om een resolutie ARP verzoek packet 192.168.1.10 produceren. Het is gericht, is het broadcast-adres, op alle knooppunten in het netwerk ontvangen. In theorie, alleen het IP-adres van de node zal worden consequente aanpak.
Echter, als de ARP-pakket bestemmingsadres is ingesteld op non-broadcast adres? Bijvoorbeeld, als het bestemmingsadres ingesteld op 00-00-00-00-00-01? Wanneer de kaart wordt in de normale modus, het pakket zal worden beschouwd als "AAN OTHERHOST "pakket, zal de netwerkkaart hardware filter worden afgewezen. Echter, als de netwerkkaart in promiscuous mode, dan is de kaart niet uit te voeren filtering operaties. Dus pack zal worden toegestaan om de kernel te bereiken. De kernel zal denken dat ARP verzoek pakket aankomt, want het bevat hetzelfde IP-adres met de PC, dus het zal reageren op het verzoek pakket. Het is echter merkwaardig dat de kernel pakket in feite niet een reactie (zie hieronder) te maken. Dit verrassende resultaat toont het bestaan van andere kernel filtering mechanisme, want in feite de kernel pakket worden gefilterd. We noemen dit filtersoftware filtering.
Bovendien is de detectie van de mixed mode filteren uit de vergelijking van hardware en software filters om het onderscheid te bereiken. Hardware filtering wordt meestal afgeschermd illegale pakketten. Als een pakketje via de hardware-filter, is het vaak gefilterd door de software. We zien de opbouw van de hardware-filter is afgewezen op hetzelfde moment filteren door middel van het softwarepakket. Door het versturen van een dergelijk pakket, zal de normale modus van NIC niet reageren, en promiscuous mode netwerk kaart zal reageren.
Sniffer gekraakte software diefstal door filtratie
Software filters ingesteld op basis van de kernel van het besturingssysteem, dus om de software te begrijpen filter moeten begrijpen hoe de kernel van het besturingssysteem werken. Linux open source, dus je kunt de software toegang tot filtering mechanisme. Maar niet-Microsoft-Windows-broncode open, de software filtering kan alleen maar gissen uit het experiment tot redenering.
1) Linux
Ethernet-module in Linux, volgens het adres van de verschillende pakketten kunnen worden onderverdeeld in de volgende categorieën:
BROADCAST pakketten:
FF: FF: FF: FF: FF: FF
Multicast-pakketten:
Naast de pakketten worden uitgezonden, de groep werd aangegeven de locatie van een pakket.
TO_US pakketten:
Alle hardware-adres van de bestemming het adres en de netwerkkaart als een pakket.
OTHERHOST pakketten:
Alle bestemmingsadres en netwerkkaart hardware adres ander pakket.
Hier nemen we aan dat Groepslogo positie 1 pakket is multicast-pakketten. Overeenkomstige IP multicast-PAKKET Ethernet-netwerk-adres is 01-00-5E-**-**-**, dus multicast-pakketten groep identiteit moet niet alleen plaats om te differentiëren. Maar in feite is deze veronderstelling juist is, omdat de 01-00-5E-**-**-** is gebaseerd op het IP-netwerk, terwijl de kaart de hardware-adres kan worden gebruikt in andere bovenste laag protocol.
Ten tweede kijken we naar de ARP-module LINUX. ARP-module zal verwerpen alle OTHERHOST pakketten. Terzelfder tijd zal zij worden uitgezonden, multicast-en TO_US pakketten reageren. Dat betekent dat onder de hardware en software filtering filter reactie. We zijn zes verschillende typen van het adres van pakketten gegeven naar de kaart gezonden, de hardware en software filters filters is hoe dat te doen.
GR BIT NORMAL MODE promiscuous mode
HW SW FILTER FILTER RES HW SW FILTER FILTER RES
TO_US OFF PASS PASS PASS PASS Y Y
OTHERHOST REJECT - N PASS REJECT N
BROADCAST doorgeven PASS PASS PASS Y Y
MULTICAST
(In de lijst) PASS PASS Y-PASS PASS Y
MULTICAST
(Niet in de lijst) te verwerpen - N PASS PASS Y
REJECT GROUP - N PASS PASS Y
TO_US pakketten:
Als de netwerkkaart in een normale modus worden alle pakketten TO_US gefilterd door middel van hardware, maar ook via software filters, zal de ARP-module te reageren op een dergelijk pakket, ongeacht of de netwerkkaart in promiscuous mode.
OTHERHOST pakketten:
Wanneer de kaart is in de normale modus, zal weigeren om OTHERHOST pakketten. Zelfs wanneer de netwerkkaart in promiscuous mode, zal de software dit type filter verwerpen van de verpakking. Daarom zal niet reageren op ARP-verzoeken.
Broadcastpakket:
In de normale modus, BROADCAST pakketjes gefilterd door middel van hardware en software filtering. Daarom, ongeacht welke functie van de netwerkkaart in het pakket zal moeten reageren.
Multicast-pakketten:
In de normale modus, niet in de groep pre-geregistreerde lijst met adressen van de pakketten zal worden afgewezen. Echter, wanneer de kaart wordt in promiscuous mode, die dit soort van pakket worden gefilterd door de hardware, maar ook omdat de filtersoftware zou niet weigeren dit soort van pakket, zodat een response zullen genereren. In dit geval, de kaart zal worden in verschillende modellen leiden tot verschillende resultaten.
GROUP BIT pakketten:
BROADCAST MULTICAST pakket of niet, maar de locatie van een groep identiteit. In de normale modus, zal een dergelijk pakket af te wijzen, terwijl in promiscuous mode, zal dit pakket worden doorgegeven. En omdat dit pakket zal worden beschouwd als een multicast-packet filtering software, dus dit pakket via de software-filter. Groepslogo positie 1 pakket kan worden gebruikt om promiscuous mode op te sporen.
2) WINDOWS
WINDOWS niet-open source besturingssysteem, kunnen we niet zien de broncode van de software-filter te analyseren. Integendeel, kunnen we alleen benaderen via experimenten om haar software-filter te testen. De volgende zeven soorten adressen zijn Windows te gebruiken:
FF-FF-FF-FF-FF-FF broadcast adres:
Alle contacten krijgt dit soort pakket, en reageren. Normaal ARP verzoek pakketjes gemaakt met behulp van dit adres.
FF-FF-FF-FF-FF-FE FAKE broadcast adres:
Dit is de laatste van een nep-broadcast-adres locatie 0. Filteren software wordt gebruikt om te detecteren of om alle bits van het adres te controleren, dan zal het reageren op dit pakket.
FF-FF-00-00-00-00 FAKE BROADCAST 16 bits:
Dit is slechts de eerste 16 posities een nep-broadcast adres. Het kan worden beschouwd als een broadcast adres, maar ook in filtering mechanisme pas controleert de eerste 16-bit zal worden om te reageren op omstandigheden.
FF-00-00-00-00-00 FAKE BROADCAST 16 bits:
Dit is alleen de eerste 8 posities een nep-broadcast adres. Het kan worden beschouwd als een broadcast adres, maar ook in filtering mechanisme pas controleert de eerste 8-bit geval zal reageren.
01-00-00-00-00-00 GROUP bits adres:
Deel 1 van het adres locatie identificatie, gebruikt om te controleren of de multicast-adres zal worden overwogen.
01-00-5E-00-00-00 MULTICAST adres 0
Multicast adres 0 wordt meestal niet gebruikt. Dus zetten we dit soort adres dat is geregistreerd als de groep is niet in de lijst van adressen. Hardware filter zal verwerpen deze pakketten. Echter, zal de software filter multicast dit pakket aangezien voor een pakket, omdat het niet controleer alle bits. Dus, wanneer de netwerkkaart in promiscuous mode, het systeem kernel zal reageren op dit pakket.
01-00-5E-00-00-01 MULTICAST adres 1
Multicast adres 1 een LAN subnet van alle hosts. Woorden voor namen, hardware filter standaard staat dit type verpakking. Maar het bestaan van een dergelijke mogelijkheid: Als de kaart geen ondersteuning biedt voor multicast-modus, zal het niet reageren op dit pakket. Daarom kan dit pakket worden gebruikt om te detecteren of de host multicast-adressen ondersteunt.
Conclusie: Verschillende systemen maken gebruik van verschillende maatregelen
HW ADDR Windows 9x/ME WINDOWS 2K/NT4 LINUX2.2/2.4
NORMAAL PROMIS NORMAAL NORMAAL PROMIS PROMIS
FF: FF: FF: FF: FF: FF HE HE HE HE HE HE
FF: FF: FF: FF: FF: FE - RES - RES - RES
FF: FF: 00:00:00:00 - RES - RES - RES
FF: 00:00:00:00:00 - RES - - - RES
01:00:00:00:00:00 - - - - - RES
01:00:5 E: 00:00:00 - - - - - RES
01:00:5 E: 00:00:01 RES RES RES RES RES RES
Op de experimentele resultaten van 7 adres vermeld in de tabel hierboven.
Deze resultaten worden ondersteund in Windows 95,98, ME, 2000 en verkregen op grond van LINUX. Zoals we hierboven genoemd, de kaart is in de normale modus, worden alle kernel-systeem op het broadcast adres en multicast-adres 1 om te reageren.
Echter, wanneer de netwerkkaart in promiscuous mode, afhankelijk van uw besturingssysteem, het resultaat anders zal zijn. WINDOWS 95,98 en ME zal FAKE BROADCAST 31,16 en 8bits reageren. Daarom kunnen we overwegen Windows 9x-software filter tot controleren alleen de eerste 8 bits om te bepalen of het broadcast adres.
In de Windows 2000, zal het FAKE BROADCAST 31 en 16bits reageren. Dus we kunnen zeggen dat de software filter WINDOWS 2000 tot net vóór de test tot de vraag of 16-bits broadcast adres te bepalen.
In Linux zal het pakket adres deze zeven reageren. Met andere woorden, wanneer de netwerkkaart in promiscuous mode, LINUX zal reageren op deze zeven pakketten.
De volgende resultaten laten zien dat we kunnen bepalen of de ARP-pakket om het knooppunt in promiscuous mode, ongeacht het besturingssysteem is Windows of Linux. Ja, kan deze een eenvoudige methode om het LAN op te sporen. De volgende test is een proces:
1) We proberen om de belasting op IP-protocol of de machine is in promiscuous mode detectie. We bouwen een ARP-pakket:
Ethernet-adres van bestemming FF: FF: FF: FF: FF: FE
Ethernet-adres van de verzender NIC's Device adres
Protocol type (ARP = 0806) 0806
Hardware-adresruimte (Ethernet = 01) 0001
Protocol-adres ruimte (IPv4 = 0800) 0800
Byte lengte van hardware-adres 06
Byte lengte van 04 IP-adres
Opcode (ARP verzoek = 01, ARP antwoord = 02) 0001
Hardware-adres van de afzender van dit pakket
Protocol-adres van de afzender van dit pakket IP-adres
Hardware-adres van de doelstelling van dit pakket 00:00:00:00:00:00
Protocol-adres van de doelstelling van dit pakket (adres wilt worden gecontroleerd)
2) Wij bouwen complete dit pakket, sturen we het naar de LAN
3) Onder normale omstandigheden, zal dit pakket worden afgewezen door de hardware filter. Echter, als de machine is in promiscuous mode, zal het reageren op dit pakket. Als we een antwoord ontvangen, dan is de machine in promiscuous mode.
Voor het testen van het hybride model, kunnen we gebruik maken van de genoemde technologieën in 7 van alle machines op het LAN achter elkaar uitgevoerd. Als sommige machines niet kan ontvangen van de ARP-pakket, zal het niet gebruiken van deze methode.