ModSecurity un OWASP operētājsistēmās CentOS 6 un Apache 2

ModSecurity un OWASP operētājsistēmās CentOS 6 un Apache 2

ModSecurity ir tīmekļa lietojumprogrammu slāņa ugunsmūris, kas paredzēts darbam ar IIS, Apache2 un Nginx. Tā ir bezmaksas atvērtā pirmkoda programmatūra, kas izdota saskaņā ar Apache licenci 2.0. ModSecurity palīdz aizsargāt jūsu tīmekļa serveri, uzraugot un analizējot jūsu vietnes trafiku. Tas tiek darīts reāllaikā, lai noteiktu un bloķētu uzbrukumus no vairuma zināmo izlietojumu, izmantojot regulārās izteiksmes. ModSecurity pati par sevi nodrošina ierobežotu aizsardzību un paļaujas uz noteikumu kopumiem, lai palielinātu aizsardzību.

Open Web Application Security Project (OWASP) pamatnoteikumu kopa (CRS) ir vispārīgu uzbrukumu noteikšanas noteikumu kopa, kas nodrošina pamata aizsardzības līmeni jebkurai tīmekļa lietojumprogrammai. Noteikumu kopa ir bezmaksas, atvērtā koda, un to pašlaik sponsorē Spider Labs.

OWASP CRS nodrošina:

  • HTTP aizsardzība - HTTP protokola un lokāli noteiktas lietošanas politikas pārkāpumu noteikšana.
  • Melnā saraksta meklēšana reāllaikā — izmanto trešās puses IP reputāciju.
  • HTTP pakalpojuma atteikuma aizsardzība — aizsardzība pret HTTP plūdiem un lēniem HTTP DoS uzbrukumiem.
  • Aizsardzība pret parastajiem tīmekļa uzbrukumiem — izplatītu tīmekļa lietojumprogrammu drošības uzbrukumu noteikšana.
  • Automatizācijas noteikšana — robotu, rāpuļprogrammu, skeneru un citu virspusēju ļaunprātīgu darbību noteikšana.
  • Integrācija ar AV skenēšanu failu augšupielādēm — nosaka ļaunprātīgus failus, kas augšupielādēti, izmantojot tīmekļa lietojumprogrammu.
  • Sensitīvu datu izsekošana — izseko kredītkaršu lietojumu un bloķē noplūdes.
  • Trojas zirgu aizsardzība — nosaka Trojas zirgus.
  • Lietojumprogrammu defektu identificēšana — brīdinājumi par lietojumprogrammas nepareizu konfigurāciju.
  • Kļūdu noteikšana un slēpšana — servera nosūtīto kļūdu ziņojumu maskēšana.

Uzstādīšana

Šajā rokasgrāmatā ir parādīts, kā instalēt ModSecurity un OWASP kārtulu operētājsistēmā CentOS 6, kurā darbojas Apache 2.

Pirmkārt, jums ir jāpārliecinās, ka jūsu sistēma ir atjaunināta.

 yum -y update

Ja neesat instalējis Apache 2, instalējiet to tūlīt.

 yum -y install httpd

Tagad jums ir jāinstalē dažas atkarības, lai ModSecurity darbotos. Atkarībā no servera konfigurācijas dažas vai visas šīs pakotnes jau var būt instalētas. Yum instalēs pakotnes, kuru jums nav, un informēs jūs, ja kāda no pakotnēm jau ir instalēta.

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

Mainiet direktoriju un lejupielādējiet avota kodu no ModSecuity vietnes. Pašreizējā stabilā versija ir 2.8.

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

Izvelciet paketi un pārejiet uz tās direktoriju.

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

Konfigurējiet un kompilējiet avota kodu.

 ./configure
 make
 make install

Kopējiet noklusējuma ModSecurity konfigurācijas un unikoda kartēšanas failu Apache direktorijā.

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

Konfigurējiet Apache, lai izmantotu ModSecurity. Ir 2 veidi, kā to izdarīt.

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

... vai izmantojiet teksta redaktoru, piemēram, nano:

 nano /etc/httpd/conf/httpd.conf

Faila apakšā atsevišķā rindā pievienojiet šo:

 LoadModule security2_module modules/mod_security2.so

Tagad varat palaist Apache un konfigurēt to palaišanai sāknēšanas laikā.

 service httpd start
 chkconfig httpd on

Ja pirms šīs rokasgrāmatas lietošanas instalējāt Apache, jums tas vienkārši jārestartē.

 service httpd restart

Tagad varat lejupielādēt OWASP pamatnoteikumu kopu.

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

Tagad konfigurējiet OWASP kārtulu kopu.

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

Pēc tam kārtulu kopa jāpievieno Apache konfigurācijai. Atkal mēs to varam izdarīt divos veidos.

 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

... vai ar teksta redaktoru:

 nano /etc/httpd/conf/httpd.conf

Faila apakšā atsevišķās rindās pievienojiet šo:

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

Tagad restartējiet Apache.

 service httpd restart

Visbeidzot, izdzēsiet instalācijas failus.

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

Izmantojot ModSecurity

Pēc noklusējuma ModSecurity darbojas tikai noteikšanas režīmā, kas nozīmē, ka tā reģistrēs visus noteikumu pārtraukumus, bet neveiks nekādas darbības. Tas ir ieteicams jaunām instalācijām, lai jūs varētu skatīties notikumus, kas ģenerēti Apache kļūdu žurnālā. Pēc žurnāla pārskatīšanas varat izlemt, vai pirms pārejas uz aizsardzības režīmu ir jāveic kārtulu kopas izmaiņas vai kārtulas atspējošana (skatiet tālāk).

Lai skatītu Apache kļūdu žurnālu:

 cat /var/log/httpd/error_log

ModSecurity rinda Apache kļūdu žurnālā ir sadalīta deviņos elementos. Katrs elements sniedz informāciju par to, kāpēc notikums tika aktivizēts.

  • Pirmajā daļā ir norādīts, kurš kārtulas fails aktivizēja šo notikumu.
  • Otrajā daļā ir norādīts, kurā kārtulas faila rindiņā sākas noteikums.
  • Trešais elements norāda, kurš noteikums tika aktivizēts.
  • Ceturtais elements norāda noteikuma pārskatīšanu.
  • Piektais elements satur īpašus datus atkļūdošanas nolūkos.
  • Sestais elements nosaka šī notikuma smaguma reģistrēšanas nopietnību.
  • Septītajā sadaļā ir aprakstīta darbība un kādā fāzē tā notika.

Ņemiet vērā, ka daži elementi var nebūt pieejami atkarībā no jūsu servera konfigurācijas.

Lai mainītu ModSecurity uz aizsardzības režīmu, teksta redaktorā atveriet conf failu:

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

... un mainīt:

 SecRuleEngine DetectionOnly

uz:

 SecRuleEngine On

Ja, darbojoties ModSecurity, rodas bloķējumi, jums ir jāidentificē noteikums HTTP kļūdu žurnālā. Komanda "aste" ļauj skatīties žurnālus reāllaikā:

 tail -f /var/log/httpd/error_log

Skatoties žurnālu, atkārtojiet darbību, kas izraisīja bloķēšanu.

Kārtulu kopas modificēšana/kārtulas ID atspējošana

Noteikumu kopas modificēšana neietilpst šīs apmācības ietvaros.

Lai atspējotu noteiktu kārtulu, jums ir jānorāda kārtulas ID, kas atrodas trešajā elementā (piemēram, [id=200000]), un pēc tam tas jāatspējo Apache konfigurācijas failā:

 nano /etc/httpd/conf/httpd.conf

... pievienojot tālāk norādīto faila apakšdaļā ar kārtulas ID:

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

Ja konstatējat, ka ModSecurity bloķē visas darbības jūsu vietnē(-ēs), iespējams, "Pamatnoteikumu kopa" ir režīmā "Self-Contained". Tas ir jāmaina uz “Sadarbības noteikšana”, kas nosaka un bloķē tikai anomālijas. Tajā pašā laikā varat apskatīt opcijas "Patstāvīgs" un mainīt tās, ja vēlaties to darīt.

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

Mainiet "atklāšanu" uz "Patstāvīgs".

Varat arī konfigurēt ModSecurity, lai atļautu savu IP, izmantojot tīmekļa lietojumprogrammas ugunsmūri (WAF), nereģistrējoties:

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

... vai ar mežizstrādi:

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

Instalējiet Plesk operētājsistēmā CentOS 7

Instalējiet Plesk operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Plesk ir patentēts tīmekļa mitinātāja vadības panelis, kas ļauj lietotājiem administrēt savas personīgās un/vai klientu vietnes, datu bāzes

Kā instalēt Squid starpniekserveri CentOS

Kā instalēt Squid starpniekserveri CentOS

Squid ir populāra bezmaksas Linux programma, kas ļauj izveidot pāradresācijas tīmekļa starpniekserveri. Šajā rokasgrāmatā jūs redzēsit, kā instalēt Squid uz CentOS, lai jūs pārvērstu

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Ievads Lighttpd ir Apache dakša, kuras mērķis ir daudz mazāk resursietilpīgs. Tas ir viegls, tāpēc arī tā nosaukums ir diezgan vienkārši lietojams. Instalēšana

Statiskā tīkla un IPv6 konfigurēšana operētājsistēmā CentOS 7

Statiskā tīkla un IPv6 konfigurēšana operētājsistēmā CentOS 7

VULTR nesen veica izmaiņas, un tagad visam vajadzētu darboties labi, ja ir iespējots NetworkManager. Ja vēlaties atspējot

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 ir spēcīga uzraudzības sistēma, un, ja to izmanto galvenā klienta modelī, tā var aizstāt vajadzību pēc NRPE balstītām uzraudzības pārbaudēm. Meistars-klients

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.

Kā instalēt Microweber operētājsistēmā CentOS 7

Kā instalēt Microweber operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Microweber ir atvērtā koda vilkšanas un nomešanas CMS un tiešsaistes veikals. Microweber pirmkods tiek mitināts vietnē GitHub. Šī rokasgrāmata jums parādīs

Kā instalēt Mattermost 4.1 operētājsistēmā CentOS 7

Kā instalēt Mattermost 4.1 operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Mattermost ir atvērtā pirmkoda, pašmitināta alternatīva Slack SAAS ziņojumapmaiņas pakalpojumam. Citiem vārdiem sakot, izmantojot Mattermost, jūs apm

Minecraft serveru tīkla izveide ar BungeeCord operētājsistēmā Debian 8, Debian 9 vai CentOS 7

Minecraft serveru tīkla izveide ar BungeeCord operētājsistēmā Debian 8, Debian 9 vai CentOS 7

Kas jums būs nepieciešams Vultr VPS ar vismaz 1 GB RAM. SSH piekļuve (ar root/administratora tiesībām). 1. darbība: BungeeCord instalēšana Vispirms vispirms

Ļauj šifrēt vietnē Plesk

Ļauj šifrēt vietnē Plesk

Plesk vadības panelī ir ļoti jauka Lets Encrypt integrācija. Lets Encrypt ir viens no vienīgajiem SSL nodrošinātājiem, kas pilnībā izsniedz sertifikātus

Ļauj šifrēt cPanel

Ļauj šifrēt cPanel

Lets Encrypt ir sertifikātu iestāde, kas nodrošina SSL sertifikātus bez maksas. cPanel ir izveidojis glītu integrāciju, lai jūs un jūsu klients

Kā instalēt Concrete5 operētājsistēmā CentOS 7

Kā instalēt Concrete5 operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Concrete5 ir atvērtā pirmkoda CMS, kas piedāvā daudzas atšķirīgas un noderīgas funkcijas, lai palīdzētu redaktoriem viegli izveidot saturu.

Kā instalēt pārskata paneli sistēmā CentOS 7

Kā instalēt pārskata paneli sistēmā CentOS 7

Vai izmantojat citu sistēmu? Pārskatīšanas padome ir bezmaksas atvērtā pirmkoda rīks pirmkoda, dokumentācijas, attēlu un daudz ko citu pārskatīšanai. Tā ir tīmekļa programmatūra

Iestatiet HTTP autentifikāciju, izmantojot Nginx operētājsistēmā CentOS 7

Iestatiet HTTP autentifikāciju, izmantojot Nginx operētājsistēmā CentOS 7

Šajā rokasgrāmatā jūs uzzināsit, kā iestatīt HTTP autentifikāciju Nginx tīmekļa serverim, kas darbojas operētājsistēmā CentOS 7. Prasības Lai sāktu darbu, jums būs nepieciešams

Kā instalēt YOURLS operētājsistēmā CentOS 7

Kā instalēt YOURLS operētājsistēmā CentOS 7

YOURLS (Your Own URL Shortener) ir atvērtā koda URL saīsināšanas un datu analīzes lietojumprogramma. Šajā rakstā mēs apskatīsim instalēšanas procesu

Kā instalēt un konfigurēt ArangoDB operētājsistēmā CentOS 7

Kā instalēt un konfigurēt ArangoDB operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Ievads ArangoDB ir atvērtā koda NoSQL datu bāze ar elastīgu datu modeli dokumentiem, grafikiem un atslēgu vērtībām. Tas ir

Etckeeper izmantošana /etc versiju kontrolei

Etckeeper izmantošana /etc versiju kontrolei

Ievads /etc/ direktorijam ir izšķiroša nozīme Linux sistēmas darbībā. Iemesls tam ir gandrīz visas sistēmas konfigurācijas

Kāpēc jums vajadzētu izmantot SSHFS? Kā uzstādīt attālo failu sistēmu ar SSHFS operētājsistēmā CentOS 6

Kāpēc jums vajadzētu izmantot SSHFS? Kā uzstādīt attālo failu sistēmu ar SSHFS operētājsistēmā CentOS 6

Daudzi sistēmu administratori pārvalda lielu daudzumu serveru. Ja failiem ir jāpiekļūst dažādos serveros, piesakieties katrā atsevišķi apm

Half Life 2 servera iestatīšana operētājsistēmā CentOS 6

Half Life 2 servera iestatīšana operētājsistēmā CentOS 6

Šajā apmācībā tiks apskatīts Half Life 2 spēļu servera instalēšanas process sistēmā CentOS 6. 1. darbība: priekšnosacījumu instalēšana Lai iestatītu ou

Kā instalēt Laravel GitScrum operētājsistēmā CentOS 7

Kā instalēt Laravel GitScrum operētājsistēmā CentOS 7

Laravel GitScrum jeb GitScrum ir atvērtā pirmkoda produktivitātes rīks, kas izstrādāts, lai palīdzētu izstrādātāju komandām ieviest Scrum metodoloģiju līdzīgā veidā.

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk