ModSecurity és OWASP a CentOS 6 és Apache 2 rendszeren

ModSecurity és OWASP a CentOS 6 és Apache 2 rendszeren

A ModSecurity egy webalkalmazási rétegű tűzfal, amelyet az IIS, Apache2 és Nginx rendszerekkel való együttműködésre terveztek. Ez egy ingyenes, nyílt forráskódú szoftver, amelyet az Apache 2.0 licenc alatt adtak ki. A ModSecurity segít megvédeni webszerverét a webhely forgalmának figyelésével és elemzésével. Ezt valós időben teszi, hogy reguláris kifejezések segítségével észlelje és blokkolja a legtöbb ismert kihasználásból származó támadásokat. Önmagában a ModSecurity korlátozott védelmet nyújt, és szabálykészletekre támaszkodik a védelem maximalizálása érdekében.

Az Open Web Application Security Project (OWASP) Core Rule Set (CRS) olyan általános támadásészlelési szabályok összessége, amelyek alapszintű védelmet biztosítanak bármely webalkalmazás számára. A szabálykészlet ingyenes, nyílt forráskódú, és jelenleg a Spider Labs támogatja.

Az OWASP CRS a következőket kínálja:

  • HTTP védelem – a HTTP protokoll és a helyileg meghatározott használati szabályzat megsértésének észlelése.
  • Valós idejű feketelistás keresések – harmadik fél IP hírnevét használja fel.
  • HTTP szolgáltatásmegtagadás elleni védelem – védelem a HTTP elárasztása és a lassú HTTP DoS támadások ellen.
  • Common Web Attacks Protection – általános webalkalmazás-biztonsági támadások észlelése.
  • Automatizálási észlelés – Botok, bejárók, szkennerek és egyéb felszíni rosszindulatú tevékenységek észlelése.
  • Integráció az AV-kereséssel a fájlfeltöltésekhez – észleli a webalkalmazáson keresztül feltöltött rosszindulatú fájlokat.
  • Érzékeny adatok nyomon követése – Nyomon követi a hitelkártyahasználatot és blokkolja a szivárgásokat.
  • Trójai védelem – Érzékeli a trójai falakat.
  • Alkalmazáshibák azonosítása – riasztások az alkalmazás hibás konfigurációiról.
  • Hibaészlelés és elrejtés – A szerver által küldött hibaüzenetek álcázása.

Telepítés

Ez az útmutató bemutatja, hogyan telepítheti a ModSecurity és az OWASP szabálykészletet Apache 2-t futtató CentOS 6 rendszeren.

Először is meg kell győződnie arról, hogy rendszere naprakész.

 yum -y update

Ha még nem telepítette az Apache 2-t, telepítse most.

 yum -y install httpd

Most telepítenie kell néhány függőséget a ModSecurity működéséhez. A szerver konfigurációjától függően előfordulhat, hogy ezeknek a csomagoknak egy része vagy mindegyike már telepítve van. A Yum telepíti azokat a csomagokat, amelyekkel nem rendelkezik, és tájékoztatja Önt, ha valamelyik csomag már telepítve van.

 yum -y install httpd-devel git gcc make libxml2 pcre-devel libxml2-devel curl-devel

Változtassa meg a könyvtárat, és töltse le a forráskódot a ModSecuity webhelyről. A jelenlegi stabil verzió a 2.8.

 cd /opt/
 wget https://www.modsecurity.org/tarball/2.8.0/modsecurity-2.8.0.tar.gz

Csomagolja ki a csomagot, és lépjen be a könyvtárába.

 tar xzfv modsecurity-2.8.0.tar.gz 
 cd modsecurity-2.8.0

Konfigurálja és fordítsa le a forráskódot.

 ./configure
 make
 make install

Másolja az alapértelmezett ModSecurity konfigurációt és a unicode leképezési fájlt az Apache könyvtárba.

 cp modsecurity.conf-recommended /etc/httpd/conf.d/modsecurity.conf
 cp unicode.mapping /etc/httpd/conf.d/

Konfigurálja az Apache-t a ModSecurity használatára. Ezt kétféleképpen teheti meg.

 echo LoadModule security2_module modules/mod_security2.so >> /etc/httpd/conf/httpd.conf

... vagy használjon szövegszerkesztőt, például nano:

 nano /etc/httpd/conf/httpd.conf

A fájl alján egy külön sorba írja be ezt:

 LoadModule security2_module modules/mod_security2.so

Most elindíthatja az Apache-t, és beállíthatja, hogy rendszerindításkor induljon.

 service httpd start
 chkconfig httpd on

Ha az Apache-t az útmutató használata előtt telepítette, akkor csak újra kell indítania.

 service httpd restart

Most már letöltheti az OWASP alapszabálykészletét.

 cd /etc/httpd
 git clone https://github.com/SpiderLabs/owasp-modsecurity-crs.git

Most állítsa be az OWASP szabálykészletet.

 cd modsecurity-crs
 cp modsecurity_crs_10_setup.conf.example modsecurity_crs_10_config.conf

Ezután hozzá kell adnia a szabálykészletet az Apache konfigurációjához. Ezt ismét kétféleképpen tehetjük meg.

 echo Include modsecurity-crs/modsecurity_crs_10_config.conf >> /etc/httpd/conf/httpd.conf
 echo Include modsecurity-crs/base_rules/*.conf >> /etc/httpd/conf/httpd.conf

... vagy szövegszerkesztővel:

 nano /etc/httpd/conf/httpd.conf

A fájl alján, külön sorokban adja hozzá ezt:

 Include modsecurity-crs/modsecurity_crs_10_config.conf
 Include modsecurity-crs/base_rules/*.conf

Most indítsa újra az Apache-ot.

 service httpd restart

Végül törölje a telepítő fájlokat.

 yum erase /opt/modsecurity-2.8.0
 yum erase /opt/modsecurity-2.8.0.tar.gz

ModSecurity használata

Alapértelmezés szerint a ModSecurity csak észlelési módban fut, ami azt jelenti, hogy naplózza az összes szabálytörést, de nem tesz semmit. Ez az új telepítéseknél ajánlott, hogy megtekinthesse az Apache hibanaplójában generált eseményeket. A napló áttekintése után eldöntheti, hogy módosítani kell-e a szabálykészletet vagy letiltani a szabályt (lásd alább), mielőtt védelmi módba lépne.

Az Apache hibanapló megtekintése:

 cat /var/log/httpd/error_log

Az Apache hibanapló ModSecurity sora kilenc elemre oszlik. Minden elem információt ad arról, hogy miért váltotta ki az eseményt.

  • Az első rész megmondja, hogy melyik szabályfájl váltotta ki ezt az eseményt.
  • A második rész megmondja, hogy a szabályfájl melyik sorával kezdődik a szabály.
  • A harmadik elem megmondja, hogy melyik szabályt váltották ki.
  • A negyedik elem a szabály felülvizsgálatát mutatja be.
  • Az ötödik elem speciális adatokat tartalmaz hibakeresési célokra.
  • A hatodik elem határozza meg az esemény súlyosságának naplózási súlyosságát.
  • A hetedik rész leírja, hogy milyen cselekvés és milyen fázisban történt.

Vegye figyelembe, hogy egyes elemek hiányozhatnak a szerver konfigurációjától függően.

A ModSecurity védelmi módba állításához nyissa meg a conf fájlt egy szövegszerkesztőben:

 nano /etc/httpd/conf.d/modsecurity.conf

... és változtass:

 SecRuleEngine DetectionOnly

nak nek:

 SecRuleEngine On

Ha a ModSecurity futása közben bármilyen blokkolással találkozik, akkor azonosítania kell a szabályt a HTTP hibanaplóban. A "tail" parancs lehetővé teszi a naplók valós idejű megtekintését:

 tail -f /var/log/httpd/error_log

Ismételje meg a blokkot okozó műveletet, miközben nézi a naplót.

Szabálykészlet módosítása/Szabályazonosító letiltása

A szabálykészlet módosítása túlmutat ennek az oktatóanyagnak a keretein.

Egy adott szabály letiltásához azonosítsa a szabályazonosítót, amely a harmadik elemben található (például [id=200000]), majd tiltsa le az Apache konfigurációs fájljában:

 nano /etc/httpd/conf/httpd.conf

... hozzáadva a következőt a fájl aljához a szabályazonosítóval:

<IfModule mod_security2.c>
SecRuleRemoveById 200000
</IfModule>

Ha úgy találja, hogy a ModSecurity blokkol minden műveletet a webhelye(i)en, akkor az „Alapszabálykészlet” valószínűleg „Önálló” módban van. Módosítsa ezt az „Együttműködő észlelés”-re, amely csak az anomáliákat észleli és blokkolja. Ugyanakkor megtekintheti az „Önálló” opciókat, és módosíthatja azokat, ha szeretné.

 nano /etc/httpd/modsecurity-crs/modsecurity_crs_10_config.conf

Módosítsa az „észlelést” „Önálló”-ra.

A ModSecurity-t úgy is beállíthatja, hogy naplózás nélkül engedélyezze IP-címét a webalkalmazás tűzfalán (WAF):

 SecRule REMOTE_ADDR "@ipMatch xxx.xxx.xxx.xxx" phase:1,nolog,allow,ctl:ruleEngine=Off

... vagy naplózással:

 SecRule REMOTE_ADDR "@ipMatch xxx.xxx.xxx.xxx" phase:1,nolog,allow,ctl:ruleEngine=DetectionOnly

Telepítse a Plesket a CentOS 7 rendszeren

Telepítse a Plesket a CentOS 7 rendszeren

Más rendszert használ? A Plesk egy szabadalmaztatott webtárhely-vezérlőpult, amely lehetővé teszi a felhasználók számára, hogy adminisztrálják személyes és/vagy ügyfeleik webhelyeit, adatbázisait

A Squid Proxy telepítése a CentOS rendszeren

A Squid Proxy telepítése a CentOS rendszeren

A Squid egy népszerű, ingyenes Linux-program, amely lehetővé teszi továbbítási webproxy létrehozását. Ebben az útmutatóban megtudhatja, hogyan telepítheti a Squid-et a CentOS rendszerre, hogy megfordítsa

A Lighttpd (LLMP Stack) telepítése a CentOS 6 rendszeren

A Lighttpd (LLMP Stack) telepítése a CentOS 6 rendszeren

Bevezetés A Lighttpd az Apache forkja, amely sokkal kevésbé erőforrás-igényes. Könnyű, innen kapta a nevét, és meglehetősen egyszerű a használata. Telepítés

A statikus hálózat és az IPv6 konfigurálása CentOS 7 rendszeren

A statikus hálózat és az IPv6 konfigurálása CentOS 7 rendszeren

A VULTR a közelmúltban változtatásokat hajtott végre a saját oldalukon, és most már mindennek jól kell működnie, ha a NetworkManager engedélyezve van. Ha szeretné letiltani

Az Icinga2 módosítása a mester/kliens modell használatához CentOS 6 vagy CentOS 7 rendszeren

Az Icinga2 módosítása a mester/kliens modell használatához CentOS 6 vagy CentOS 7 rendszeren

Az Icinga2 egy hatékony felügyeleti rendszer, és mester-kliens modellben használva helyettesítheti az NRPE-alapú felügyeleti ellenőrzések szükségességét. A mester-kliens

Az Apache Cassandra 3.11.x telepítése CentOS 7 rendszeren

Az Apache Cassandra 3.11.x telepítése CentOS 7 rendszeren

Más rendszert használ? Az Apache Cassandra egy ingyenes és nyílt forráskódú NoSQL adatbázis-kezelő rendszer, amelyet úgy terveztek, hogy biztosítsa a méretezhetőséget,

A Microweber telepítése CentOS 7 rendszeren

A Microweber telepítése CentOS 7 rendszeren

Más rendszert használ? A Microweber egy nyílt forráskódú drag and drop CMS és online bolt. A Microweber forráskódja a GitHubon található. Ez az útmutató megmutatja neked

A Vanilla Forum telepítése a CentOS 7 rendszeren

A Vanilla Forum telepítése a CentOS 7 rendszeren

Más rendszert használ? A Vanilla forum egy nyílt forráskódú, PHP-ben írt fórumalkalmazás. Ez egy teljesen testreszabható, könnyen használható, és támogatja a külsőt

A Mattermost 4.1 telepítése CentOS 7 rendszeren

A Mattermost 4.1 telepítése CentOS 7 rendszeren

Más rendszert használ? A Mattermost egy nyílt forráskódú, saját üzemeltetésű alternatívája a Slack SAAS üzenetküldő szolgáltatásnak. Más szóval, a Mattermost segítségével kb

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Mire lesz szüksége Egy Vultr VPS legalább 1 GB RAM-mal. SSH hozzáférés (root/adminisztrátori jogosultságokkal). 1. lépés: A BungeeCord telepítése Először is

Encrypt on Plesk

Encrypt on Plesk

A Plesk vezérlőpult nagyon szép integrációt kínál a Lets Encrypt számára. A Lets Encrypt egyike az egyetlen SSL-szolgáltatónak, amely teljes tanúsítványt ad ki

Lehetővé teszi a titkosítást a cPanel-en

Lehetővé teszi a titkosítást a cPanel-en

A Lets Encrypt egy tanúsító hatóság, amely ingyenes SSL-tanúsítványokat biztosít. A cPanel ügyes integrációt épített ki, így Ön és ügyfele

A Concrete5 telepítése CentOS 7 rendszeren

A Concrete5 telepítése CentOS 7 rendszeren

Más rendszert használ? A Concrete5 egy nyílt forráskódú CMS, amely számos megkülönböztető és hasznos funkciót kínál, hogy segítse a szerkesztőket a tartalom egyszerű létrehozásában.

Hogyan telepítsük az értékelő táblát a CentOS 7 rendszeren

Hogyan telepítsük az értékelő táblát a CentOS 7 rendszeren

Más rendszert használ? A Review Board egy ingyenes és nyílt forráskódú eszköz a forráskód, a dokumentáció, a képek és még sok más áttekintésére. Ez egy web alapú szoftver

Állítsa be a HTTP-hitelesítést az Nginx segítségével a CentOS 7 rendszeren

Állítsa be a HTTP-hitelesítést az Nginx segítségével a CentOS 7 rendszeren

Ebből az útmutatóból megtudhatja, hogyan állíthat be HTTP-hitelesítést egy CentOS 7 rendszeren futó Nginx webszerverhez. Követelmények A kezdéshez szüksége lesz a következőre:

A GoAccess telepítése a CentOS 7 rendszeren

A GoAccess telepítése a CentOS 7 rendszeren

Más rendszert használ? A GoAccess egy nyílt forráskódú webnapló-elemző. Használhatja naplók valós idejű elemzésére akár a terminálon, akár a

A YOURLS telepítése a CentOS 7 rendszeren

A YOURLS telepítése a CentOS 7 rendszeren

A YOURLS (Your Own URL Shortener) egy nyílt forráskódú URL-rövidítő és adatelemző alkalmazás. Ebben a cikkben a telepítés folyamatával foglalkozunk

Az ArangoDB telepítése és konfigurálása a CentOS 7 rendszeren

Az ArangoDB telepítése és konfigurálása a CentOS 7 rendszeren

Más rendszert használ? Bevezetés Az ArangoDB egy nyílt forráskódú NoSQL adatbázis, amely rugalmas adatmodellt kínál dokumentumokhoz, grafikonokhoz és kulcsértékekhez. Ez

Az Etckeeper használata az /etc verziókezeléshez

Az Etckeeper használata az /etc verziókezeléshez

Bevezetés Az /etc/ könyvtár kritikus szerepet játszik a Linux rendszer működésében. Ennek az az oka, hogy szinte minden rendszerkonfiguráció

Miért érdemes SSHFS-t használni? Távoli fájlrendszer csatlakoztatása SSHFS-sel a CentOS 6 rendszeren

Miért érdemes SSHFS-t használni? Távoli fájlrendszer csatlakoztatása SSHFS-sel a CentOS 6 rendszeren

Sok rendszergazda nagy mennyiségű kiszolgálót kezel. Ha a fájlokhoz különböző szervereken keresztül kell hozzáférni, mindegyikbe külön-külön kell bejelentkezni kb

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket