Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

В előző cikk bemutattuk, hogyan futtatható a Suricata stabil verziója Ubuntu 18.04 LTS-en. Az IDS beállítása egyetlen csomóponton és a szabad szabálykészletek engedélyezése meglehetősen egyszerű. Ma kitaláljuk, hogyan védhetjük meg a vállalati hálózatot a leggyakoribb támadástípusokkal a virtuális szerverre telepített Suricata használatával. Ehhez szükségünk van egy VDS-re Linuxon két számítási maggal. A RAM mennyisége a terheléstől függ: valakinek elég 2 GB, komolyabb feladatokhoz pedig 4 vagy akár 6 is kellhet.A virtuális gép előnye a kísérletezés lehetősége: minimális konfigurációval lehet kezdeni és növelni szükség szerint erőforrásokat.

Snort vagy Suricata. 3. rész: Az irodai hálózat védelmefotó: Reuters

Hálózatok összekapcsolása

A tesztekhez először el kell távolítani az IDS-t egy virtuális gépről. Ha még soha nem foglalkozott ilyen megoldásokkal, ne rohanjon a fizikai hardver megrendelésével és a hálózati architektúra megváltoztatásával. A számítási igények meghatározásához a legjobb, ha biztonságosan és költséghatékonyan futtatja a rendszert. Fontos megérteni, hogy az összes vállalati forgalmat egyetlen külső csomóponton kell átadni: egy helyi hálózat (vagy több hálózat) csatlakoztatásához egy telepített IDS Suricata-val rendelkező VDS-hez, használhatja SoftEther - Könnyen konfigurálható, többplatformos VPN-kiszolgáló, amely erős titkosítást biztosít. Előfordulhat, hogy az irodai internetkapcsolatnak nincs valódi IP-címe, ezért jobb, ha VPS-en állítja be. Az Ubuntu repository-ban nincsenek kész csomagok, a szoftvert vagy innen kell letölteni. projekt helyszíne, vagy a szolgáltatás külső tárolójából Launchpad (ha megbízol benne):

sudo add-apt-repository ppa:paskal-07/softethervpn
sudo apt-get update

Az elérhető csomagok listáját a következő paranccsal tekintheti meg:

apt-cache search softether

Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

A beállításához szükségünk lesz softether-vpnserver (a tesztkonfigurációban lévő szerver VDS-en fut), valamint softether-vpncmd - parancssori segédprogramok.

sudo apt-get install softether-vpnserver softether-vpncmd

Egy speciális parancssori segédprogram használható a kiszolgáló konfigurálásához:

sudo vpncmd

Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

A beállításról nem fogunk részletesen beszélni: az eljárás meglehetősen egyszerű, számos publikációban jól le van írva, és nem kapcsolódik közvetlenül a cikk témájához. Röviden: a vpncmd elindítása után ki kell választania az 1-es elemet, hogy a szerverfelügyeleti konzolra lépjen. Ehhez meg kell adnia a localhost nevet, és a hub nevének megadása helyett meg kell nyomnia az entert. Az adminisztrátori jelszót a konzolban a serverpasswordset paranccsal állítjuk be, a DEFAULT virtuális hub törlődik (hubdelete parancs) és egy új jön létre Suricata_VPN néven, és ennek jelszava is be van állítva (hubcreate parancs). Ezután az új hub felügyeleti konzoljára kell lépnie a hub Suricata_VPN paranccsal, hogy létrehozzon egy csoportot és egy felhasználót a groupcreate és usercreate parancsokkal. A felhasználói jelszó beállítása userpasswordset segítségével történik.

A SoftEther két forgalomátviteli módot támogat: SecureNAT és Local Bridge. Az első egy szabadalmaztatott technológia egy virtuális magánhálózat felépítésére saját NAT-tal és DHCP-vel. A SecureNAT nem igényel TUN/TAP-ot vagy Netfiltert vagy egyéb tűzfalbeállításokat. Az útválasztás nem érinti a rendszer magját, és minden folyamat virtualizált, és bármely VPS/VDS-en működik, függetlenül a használt hipervizortól. Ez megnövekedett CPU-terhelést és lassabb sebességet eredményez a Local Bridge módhoz képest, amely a SoftEther virtuális hubot egy fizikai hálózati adapterhez vagy TAP-eszközhöz köti.

A konfiguráció ebben az esetben bonyolultabbá válik, mivel az útválasztás kernel szinten történik a Netfilter segítségével. A VDS-ünk Hyper-V-re épül, így az utolsó lépésben létrehozunk egy helyi hidat és aktiváljuk a TAP eszközt a bridgecreate Suricate_VPN -device:suricate_vpn -tap:yes paranccsal. A hub felügyeleti konzolból való kilépés után egy új hálózati interfészt fogunk látni a rendszerben, amelyhez még nincs hozzárendelve IP:

ifconfig

Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

Ezután engedélyeznie kell a csomagok útválasztását az interfészek között (ip forward), ha az inaktív:

sudo nano /etc/sysctl.conf

Törölje a következő sor megjegyzését:

net.ipv4.ip_forward = 1

Mentse el a fájl módosításait, lépjen ki a szerkesztőből, és alkalmazza őket a következő paranccsal:

sudo sysctl -p

Ezután meg kell határoznunk egy alhálózatot a virtuális hálózat számára fiktív IP-címekkel (például 10.0.10.0/24), és hozzá kell rendelnünk egy címet az interfészhez:

sudo ifconfig tap_suricata_vp 10.0.10.1/24

Ezután meg kell írni a Netfilter szabályokat.

1. Ha szükséges, engedélyezze a bejövő csomagokat a figyelő portokon (a SoftEther saját protokollja HTTPS-t és 443-as portot használ)

sudo iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 992 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 1194 -j ACCEPT
sudo iptables -A INPUT -p udp -m udp --dport 1194 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 5555 -j ACCEPT

2. Állítsa be a NAT-ot a 10.0.10.0/24 alhálózatról a fő szerver IP-címére

sudo iptables -t nat -A POSTROUTING -s 10.0.10.0/24 -j SNAT --to-source 45.132.17.140

3. Engedélyezze a csomagok átadását a 10.0.10.0/24 alhálózatról

sudo iptables -A FORWARD -s 10.0.10.0/24 -j ACCEPT

4. Engedélyezze a csomagok átadását a már létrehozott kapcsolatokhoz

sudo iptables -A FORWARD -p all -m state --state ESTABLISHED,RELATED -j ACCEPT

A folyamat automatizálását a rendszer inicializálási szkriptekkel történő újraindításakor az olvasókra hagyjuk házi feladatként.

Ha automatikusan IP-címet szeretne adni az ügyfeleknek, akkor a helyi hídhoz is telepítenie kell valamilyen DHCP szolgáltatást. Ezzel befejeződik a kiszolgáló beállítása, és mehet a kliensekhez. A SoftEther számos protokollt támogat, amelyek használata a LAN-berendezés képességeitől függ.

netstat -ap |grep vpnserver

Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

Mivel a tesztrouterünk Ubuntu alatt is fut, telepítsük rá a softether-vpnclient és softether-vpncmd csomagokat egy külső tárolóból a saját protokoll használatához. A klienst futtatnia kell:

sudo vpnclient start

A beállításhoz használja a vpncmd segédprogramot, és válassza ki a localhost gépet, amelyen a vpnclient fut. Minden parancs a konzolban történik: létre kell hoznia egy virtuális felületet (NicCreate) és egy fiókot (AccountCreate).

Bizonyos esetekben meg kell adnia a hitelesítési módszert az AccountAnonymousSet, AccountPasswordSet, AccountCertSet és AccountSecureCertSet parancsokkal. Mivel nem DHCP-t használunk, a virtuális adapter címét manuálisan állítjuk be.

Ezenkívül engedélyeznünk kell az ip forwardot (net.ipv4.ip_forward=1 opció az /etc/sysctl.conf fájlban), és be kell állítani a statikus útvonalakat. Ha szükséges, a Suricata VDS-en beállíthatja a porttovábbítást a helyi hálózatra telepített szolgáltatások használatához. Ezen a ponton a hálózati összevonás befejezettnek tekinthető.

A javasolt konfigurációnk így fog kinézni:

Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

A Suricata beállítása

В előző cikk az IDS két működési módjáról beszéltünk: az NFQUEUE sorban (NFQ mód) és a nulla másolaton (AF_PACKET mód) keresztül. A másodikhoz két interfész szükséges, de gyorsabb - ezt fogjuk használni. A paraméter alapértelmezés szerint az /etc/default/suricata fájlban van beállítva. Szerkesztenünk kell a /etc/suricata/suricata.yaml fájl vars szakaszát is, beállítva a virtuális alhálózatot home-ként.

Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

Az IDS újraindításához használja a következő parancsot:

systemctl restart suricata

A megoldás készen áll, most lehet, hogy tesztelnie kell, hogy ellenáll-e a rosszindulatú műveletekkel szemben.

Támadások szimulálása

Egy külső IDS szolgáltatás harci használatának több forgatókönyve is lehet:

DDoS támadások elleni védelem (elsődleges cél)

A vállalati hálózaton belül nehéz megvalósítani egy ilyen lehetőséget, mivel az elemzéshez szükséges csomagoknak az Internetre néző rendszerfelületre kell eljutniuk. Még ha az IDS blokkolja is őket, a hamis forgalom leállíthatja az adatkapcsolatot. Ennek elkerülése érdekében olyan VPS-t kell rendelnie kellően produktív internetkapcsolattal, amely képes átadni az összes helyi hálózati forgalmat és minden külső forgalmat. Gyakran egyszerűbb és olcsóbb ezt megtenni, mint az irodai csatornát bővíteni. Alternatív megoldásként érdemes megemlíteni a DDoS elleni védelem speciális szolgáltatásokat. Szolgáltatásaik költsége összemérhető egy virtuális szerver költségével, és nem igényel időigényes konfigurálást, de vannak hátrányai is - a kliens csak DDoS védelmet kap a pénzéért, míg a saját IDS-jét úgy konfigurálhatja, ahogyan Ön. mint.

Más típusú külső támadások elleni védelem

A Suricata képes megbirkózni az internetről elérhető vállalati hálózati szolgáltatások (levelezőszerver, webszerver és webalkalmazások stb.) különféle sebezhetőségeinek kihasználására tett kísérletekkel. Általában ehhez az IDS-t a LAN-on belülre telepítik a határeszközök után, de a kifelé vitelnek létjogosultsága van.

Védelem a bennfentesektől

A rendszergazda minden erőfeszítése ellenére a vállalati hálózaton lévő számítógépek megfertőződhetnek rosszindulatú programokkal. Emellett a környéken időnként felbukkannak huligánok is, akik illegális műveleteket próbálnak végrehajtani. A Suricata segíthet blokkolni az ilyen próbálkozásokat, bár a belső hálózat védelme érdekében jobb, ha a kerületen belül helyezi el, és egy felügyelt kapcsolóval együtt használja, amely tükrözi a forgalmat egy portra. A külső IDS ebben az esetben sem haszontalan – legalább képes lesz elkapni a LAN-on élő rosszindulatú programok külső szerverrel való kapcsolatfelvételi kísérleteit.

Kezdésnek készítünk egy újabb VPS-t támadó tesztet, a helyi hálózati routeren pedig az alapértelmezett konfigurációval emeljük az Apache-t, majd az IDS szerverről továbbítjuk rá a 80. portot. Ezután egy támadó gazdagéptől származó DDoS-támadást szimulálunk. Ehhez töltsön le a GitHubról, fordítson le és futtasson egy kis xerxes programot a támadó csomóponton (lehet, hogy telepítenie kell a gcc csomagot):

git clone https://github.com/Soldie/xerxes-DDos-zanyarjamal-C.git
cd xerxes-DDos-zanyarjamal-C/
gcc xerxes.c -o xerxes 
./xerxes 45.132.17.140 80

Munkájának eredménye a következő lett:

Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

A Suricata levágja a gazembert, és az Apache oldal alapértelmezés szerint megnyílik, a rögtönzött támadásunk és az "irodai" (valójában otthoni) hálózat meglehetősen halott csatornája ellenére. Komolyabb feladatokhoz érdemes használni Metasploit keretrendszer. Behatolási tesztelésre tervezték, és lehetővé teszi különféle támadások szimulálását. Telepítési útmutató elérhető a projekt honlapján. A telepítés után frissítés szükséges:

sudo msfupdate

A teszteléshez futtassa az msfconsole-t.

Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

Sajnos a keretrendszer legújabb verzióiból hiányzik az automatikus feltörés képessége, ezért az exploitokat manuálisan kell rendezni, és a use paranccsal futtatni. Először érdemes például az nmap segítségével meghatározni a megtámadott gépen nyitva lévő portokat (esetünkben a netstat teljesen lecseréli a támadott gazdagépen), majd kiválasztani és használni a megfelelő Metasploit modulok

Vannak más módszerek is az IDS támadásokkal szembeni ellenálló képességének tesztelésére, beleértve az online szolgáltatásokat is. Az érdekesség kedvéért a próbaverzió segítségével stressztesztet is rendezhet IP-stressz. A belső behatolók cselekedeteire adott reakció ellenőrzéséhez érdemes speciális eszközöket telepíteni a helyi hálózat egyik gépére. Rengeteg lehetőség van, és időnként nem csak a kísérleti helyszínre, hanem működő rendszerekre is alkalmazni kell, csak ez egy teljesen más történet.

Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

Snort vagy Suricata. 3. rész: Az irodai hálózat védelme

Forrás: will.com

Hozzászólás