Hoe het Snort Intrusion Detection System op Linux te gebruiken

0
270
Shutterstock/RussieseO

Voer Snort uit op Linux en bescherm uw netwerk met realtime verkeersanalyse en detectie van bedreigingen. Beveiliging is alles, en Snort is van wereldklasse. Dit varken kan je spek misschien redden.

Wat is Snort?

Snort is een van de bekendste en meest gebruikte netwerkinbraakdetectiesystemen (NIDS). Het wordt wel een van de belangrijkste open-sourceprojecten aller tijden genoemd. Oorspronkelijk ontwikkeld door Sourcefire, wordt het onderhouden door Cisco's Talos Security Intelligence and Research Group sinds Cisco Sourcefire in 2013 heeft overgenomen.

Snort analyseert netwerkverkeer in realtime en signaleert verdachte activiteiten. Het zoekt met name naar alles wat kan wijzen op ongeautoriseerde toegangspogingen en andere aanvallen op het netwerk. Een uitgebreide set regels definieert wat telt als “verdacht” en wat Snort moet doen als een regel wordt geactiveerd.

Net zoals antivirus- en antimalwarepakketten afhankelijk zijn van up-to-date definities van viruskenmerken om u te kunnen identificeren en u te beschermen tegen de nieuwste bedreigingen, worden de regels van Snort regelmatig bijgewerkt en opnieuw uitgegeven, zodat Snort altijd beschikbaar is. optimaal effectief werken.

De Snort-regels

Er zijn drie sets regels:

    < li>Community-regels: dit zijn vrij beschikbare regelsets, gemaakt door de Snort-gebruikersgemeenschap.
  • Geregistreerde regels: deze regelsets worden geleverd door Talos. Ze zijn ook vrij verkrijgbaar, maar u moet zich registreren om ze te verkrijgen. Registratie is gratis en duurt slechts een moment. Je ontvangt een persoonlijke oinkcode die je moet opnemen in het downloadverzoek.
  • Abonnementsregels:Dit zijn dezelfde regels als de geregistreerde regels. Abonnees ontvangen de regels echter ongeveer een maand voordat ze worden vrijgegeven als gratis regelsets voor geregistreerde gebruikers. Op het moment van schrijven beginnen abonnementen van 12 maanden bij $ 29 voor persoonlijk gebruik en $ 399 voor zakelijk gebruik.

Snort installeren

Ooit was het installeren van Snort een langdurig handmatig proces. Het was niet moeilijk, maar er waren veel trappen en het was gemakkelijk om er een te missen. De grote Linux-distributies hebben dingen eenvoudiger gemaakt door Snort beschikbaar te maken via hun softwarebronnen.

Advertentie

De versies in de repositories lopen soms achter op de laatste versie die beschikbaar is op de Snort-website. Als je wilt, kun je downloaden en installeren vanaf de bron. Zolang je de nieuwste regels hebt, maakt het niet zoveel uit of je Snort niet de nieuwste en beste is, zolang hij maar niet oud is.

Om dit artikel te onderzoeken, hebben we Snort geïnstalleerd op Ubuntu 20.04, Fedora 32 en Manjaro 20.0.1.

Gebruik dit commando om Snort op Ubuntu te installeren:

sudo apt-get install snort < p>

Terwijl de installatie vordert, worden u een aantal vragen gesteld. U kunt de antwoorden hierop vinden door de opdracht ip addr te gebruiken voordat u de installatie start, of in een apart terminalvenster.

ip adr

Let op de naam van uw netwerkinterface. Op deze onderzoekscomputer is dit enp0s3.

Kijk ook naar uw IP-adres. Deze computer heeft het IP-adres 192.168.1.24. De extra “/24” is classless inter-domain routing (CIDR) notatie. Dit vertelt ons het netwerkadresbereik. Dit betekent dat dit netwerk een subnetmasker van 255.255.255.0 heeft, met drie voorloopsets van acht bits (en 3 x 8 = 24). U hoeft zich daar niet al te veel zorgen over te maken, noteer gewoon wat uw IP-adres ook is, inclusief de CIDR-notatie. U moet dit opgeven als antwoord op een van de vragen, waarbij het laatste octet van het IP-adres is gewijzigd in nul. In ons voorbeeld is dit 192.168.1.0/24.

Druk op “Tab” om de “OK” en druk op “Enter.”

Advertentie

Typ de naam van de netwerkinterfacenaam en druk op “Tab” om de “OK” en druk op “Enter.”

Typ het netwerkadresbereik in CIDR-indeling, druk op “Tab” om de “OK” en druk op “Enter.”

Om Snort op Fedora te installeren, moet je twee commando's gebruiken:

rpm -Uvh https://forensics.cert.org/cert-forensics-tools-release-32.rpm

sudo dnf install snort

Op Manjaro is het commando dat we nodig hebben niet het gebruikelijke pacman, het is pamac. En we hoeven sudo niet te gebruiken:

pamac install snort

Wanneer u wordt gevraagd of u Snort wilt bouwen vanuit de AUR (Arch User Repository), drukt u op “Y” en druk op “Enter.” We willen de buildbestanden niet bewerken, dus beantwoord die vraag door op “N” en druk op “Enter.” Druk op “Y” en druk op “Enter” wanneer u wordt gevraagd of de transactie moet worden toegepast.

U wordt om uw wachtwoord gevraagd.

De versies van Snort die werden geïnstalleerd waren:

p>

  • Ubuntu: 2.9.7.0
  • Fedora: 2.9.16.1
  • Manjaro : 2.9.16.1

U kunt uw versie controleren met:

snort –version

Snort configureren

< p>Er zijn een paar stappen die moeten worden voltooid voordat we Snort kunnen uitvoeren. We moeten de “snort.conf” bestand.

sudo gedit /etc/snort/snort.conf

Advertentie< br>

Zoek de regel met de tekst “ipvar HOME_NET any” en bewerk het om de “any” met het adresbereik van de CIDR-notatie van uw netwerk.

Opslaan uw wijzigingen en sluit het bestand.

De Snort-regels bijwerken

Om ervoor te zorgen dat uw exemplaar van Snort het maximale niveau van bescherming, werkt u de regels bij naar de meest recente versie. Dit zorgt ervoor dat Snort toegang heeft tot de nieuwste set aanvalsdefinities en beveiligingsacties.

Als u zich heeft geregistreerd en uw eigen oinkcode hebt verkregen, kunt u de volgende opdracht gebruiken om de regelset voor geregistreerde gebruikers te downloaden. Op de Snort-downloadpagina staan ​​de beschikbare regelsets, inclusief de communityregelset waarvoor u zich niet hoeft te registreren.

Download de regelset voor de versie van Snort die u hebt geïnstalleerd. We downloaden de 2.9.8.3-versie, die het dichtst in de buurt komt van de 2.9.7.0-versie van Snort die in de Ubuntu-repository stond.

wget https://www.snort.org/rules/snortrules-snapshot-2983.tar.gz?oinkcode=<je knorcode komt hier> -O snortrules-snapshot-2983.tar.gz

Zodra de download is compleet, gebruik deze opdracht om de regels uit te pakken en te installeren in de “/etc/snort/rules” directory.

sudo tar -xvzf snortrules-snapshot-2983.tar.gc -C /etc/snort/rules

Promiscue modus

Netwerkinterfacekaarten negeren meestal verkeer dat niet bestemd is voor hun IP-adres. We willen dat Snort verdacht netwerkverkeer detecteert dat is geadresseerd aan elk apparaat in het netwerk, niet alleen netwerkverkeer dat toevallig wordt verzonden naar de computer waarop Snort is geïnstalleerd.

Advertentie

Om de netwerkinterface van de Snort-computer naar al het netwerkverkeer te laten luisteren, moeten we deze in de promiscue modus zetten. De volgende opdracht zorgt ervoor dat netwerkinterface enp0s3 in promiscue modus werkt. Vervang enp0s3 door de naam van de  netwerkinterface die u op uw computer gebruikt.

sudo ip link set enp0s3 promisc on

Als je Snort op een virtuele machine draait, denk er dan ook aan om de instellingen in je hypervisor aan te passen voor de virtuele netwerkkaart die door je virtuele machine wordt gebruikt. In VirtualBox moet u bijvoorbeeld naar Instellingen > Netwerk > Geavanceerd en verander de “Promiscuous Mode” vervolgkeuzelijst naar “Alles toestaan.”

GERELATEERD: Hoe het ip-commando onder Linux te gebruiken

Snort uitvoeren

U kunt nu Snort starten. De opdrachtindeling is:

sudo snort -d -l /var/log/snort/-h 192.168.1.0/24 -A console -c /etc/snort/snort.conf

Vervang uw eigen netwerk-IP-bereik in plaats van 192.168.1.0/24.

De opdrachtregelopties die in deze opdracht worden gebruikt, zijn:

  • -d: Filtert de applicatielaagpakketten.
  • -l /var/log/snort/: Stelt de logmap in.
  • -h 192.168.1.0/24:Dit stelt niet het thuisnetwerk in, dat was ingesteld in de “snort.conf” het dossier. Met deze waarde ingesteld op dezelfde waarde als het thuisnetwerk, zijn de logboeken zo gestructureerd dat inhoud van verdachte externe computers wordt aangemeld in mappen die naar elke externe computer zijn genoemd.
  • -Een console: Stuurt waarschuwingen naar het consolevenster.
  • -c /etc/snort/snort.conf: Geeft aan welk Snort-configuratiebestand moet worden gebruikt.

Snort scrolt veel uitvoer in het terminalvenster en gaat vervolgens naar de analysemodus. Tenzij het een verdachte activiteit ziet, ziet u geen schermuitvoer meer.

Vanaf een andere computer begonnen we kwaadaardige activiteiten te genereren die direct gericht waren op onze testcomputer, waarop Snort draaide.

Snort identificeert het netwerkverkeer als potentieel kwaadaardig, stuurt waarschuwingen naar het consolevenster en schrijft vermeldingen in de logboeken.

Advertentie

Aanvallen geclassificeerd als "Informatielekken" aanvallen geven aan dat er een poging is gedaan om uw computer te ondervragen op informatie die een aanvaller kan helpen. Dit geeft waarschijnlijk aan dat iemand verkenningen op uw systeem uitvoert.

Aanvallen geclassificeerd als “Denial of Service” aanvallen duiden op een poging om uw computer te overspoelen met vals netwerkverkeer. De aanval probeert uw computer zodanig te overweldigen dat deze zijn diensten niet kan blijven leveren.

Om te controleren of de promiscue modus correct werkt en we het volledige netwerkadresbereik beschermen, zullen we wat kwaadaardig verkeer op een andere computer afvuren en kijken of Snort het detecteert.

< img src="http://www.cloudsavvyit.com/pagespeed_static/1.JiBnMqyl6S.gif" />

De activiteit is gedetecteerd en gerapporteerd, en we kunnen zien dat deze aanval was gericht tegen een andere computer met een IP-adres van 192.168.1.26. Snort houdt het volledige adresbereik van dit netwerk in de gaten.

Volgende stappen

Om waakzaam te blijven, heeft Snort up-to- datum regels. U kunt een klein script schrijven en de opdrachten erin plaatsen om de regels te downloaden en te installeren, en een cron-taak instellen om het proces te automatiseren door het script periodiek aan te roepen. Het pullpork-script is een kant-en-klaar script dat is ontworpen om precies dat te doen als je geen zin hebt om je eigen script te schrijven.

Snort heeft geen front-end of een grafische gebruikersinterface. Projecten van derden hebben er verschillende gemaakt en misschien wil je er een paar onderzoeken, zoals Snorby en Squil.