Modsecurity: Difference between revisions

From ICO wiki
Jump to navigationJump to search
No edit summary
Line 11: Line 11:
== Sissejuhatus ==
== Sissejuhatus ==


ModSecurity on tulemüür, mis on  mõeldud '''Apache''' serveri peal jooksvate veebirakenduste kaitsmiseks. Tema peamiseks ülsanndeks on rünnakute ennetamine ja nende likvideerimine, enne kui nad jõuavad serveris jooksvate veebirakendusteni.
ModSecurity on tulemüür, mis on  mõeldud '''Apache''' serveri peal jooksvate veebirakenduste kaitsmiseks. Tema peamiseks ülesanndeks on rünnakute ennetamine ja nende likvideerimine, enne kui nad jõuavad serveris jooksvate veebirakendusteni.


ModSercurity on võimeline monitoorima kogu '''http''' liiklust reaalajas ja avastama kõik võimalike sissetunge. [[File:Modsecurity.png‎ |400px|thumb|right|]]
ModSercurity on võimeline monitoorima kogu '''http''' liiklust reaalajas ja avastama kõik võimalike sissetunge. [[File:Modsecurity.png‎ |400px|thumb|right|]]
Line 32: Line 32:
Modsecurity testimiseks paigaldame ka testimisekeskkonna [[DVWA]].
Modsecurity testimiseks paigaldame ka testimisekeskkonna [[DVWA]].


Kõik toiminugd peavd käima juurkasutaja all, selleks logime ennas juurkasutajaga sisse käsuga:
Kõik toiminugd peavd käima juurkasutaja all, selleks logime ennast juurkasutajaga sisse käsuga:


<pre>sudo -i</pre>
<pre>sudo -i</pre>
Line 46: Line 46:
== Tulemüüri seadistamine ==
== Tulemüüri seadistamine ==


Kasutame suvlaist tekstiredaktorit ja loome '''mod_security''' konfiguratsiooni faili kausta '''/etc/apache2/conf.d/modsecurity2.conf''' käsuga:
Kasutame suvlalist tekstiredaktorit ja loome '''mod_security''' konfiguratsiooni faili kausta '''/etc/apache2/conf.d/modsecurity2.conf''' käsuga:


<pre>nano /etc/apache2/conf.d/modsecurity2.conf</pre>
<pre>nano /etc/apache2/conf.d/modsecurity2.conf</pre>
Line 77: Line 77:
<pre>' union all select user, password from dvwa.users#</pre>
<pre>' union all select user, password from dvwa.users#</pre>


Seejärel vajutame klahvi '''Submit''', saame ilusti vastuseks kasutajate nimed ja nende parooli hashid.
Seejärel vajutame klahvi '''Submit''', saame ilusti vastuseks kasutajate nimed ja nende paroolide hashid.





Revision as of 17:56, 24 May 2012

Autor

Aleksei Issaikin AK31

Pavel Kodotšigov AK31

Esimene versioon 19/05/2012

Viimati muudetud 20/05/2012

Sissejuhatus

ModSecurity on tulemüür, mis on mõeldud Apache serveri peal jooksvate veebirakenduste kaitsmiseks. Tema peamiseks ülesanndeks on rünnakute ennetamine ja nende likvideerimine, enne kui nad jõuavad serveris jooksvate veebirakendusteni.

ModSercurity on võimeline monitoorima kogu http liiklust reaalajas ja avastama kõik võimalike sissetunge.

Versioonide ajalugu:

2.6.5
2.6.4
2.6.3
2.6.2
2.6.1
2.6.0

Eeldused

Serverisse peab olema paigaldatud Apache veebiserver.

Modsecurity testimiseks paigaldame ka testimisekeskkonna DVWA.

Kõik toiminugd peavd käima juurkasutaja all, selleks logime ennast juurkasutajaga sisse käsuga:

sudo -i

Tulemüüri allalaadimine ja installimine

Tulemüüri installimiseks tuleb sisestada käsureal käsu:

apt-get install libapache-mod-security

Kui paigaldamine õnnestus tuleb hakkata tulemüüri seadistama.

Tulemüüri seadistamine

Kasutame suvlalist tekstiredaktorit ja loome mod_security konfiguratsiooni faili kausta /etc/apache2/conf.d/modsecurity2.conf käsuga:

nano /etc/apache2/conf.d/modsecurity2.conf

Tekkitatud faili lisame kirje tulemüüri reeglite sisse lülitamiseks:

< ifmodule mod_security2.c>
SecRuleEngine On
< /ifmodule>

Edasi loome näiteks reegli, mis takistab ründega SQL injection küsida meie serveri andmebaasist DVWA kasutajate parooli hashe, kasutades argumenti union:

Selleks lisame faili /etc/apache2/conf.d/modsecurity2.conf sellised read:

< ifmodule mod_security2.c>
SecRuleEngine On
SecDefaultAction "phase:2,deny,log,status:403"
Secrule ARGS "union" 
< /ifmodule>

Ehk, kui keegi üritab kasutada argumenti union blokitakse see kohe ära ja kuvatakse tõrge.

Testimine

Testime alguses välja lülitatud tulemüüriga

Nagu eelnevalt sai mainitud kasutame ründe testimiseks tarkvara DVWA, mis jookseb meie Apache serveris. Võtame veebibrauseri kaudu lahti DVWA, aadressilt (https://127.0.0.1/dvwa) ja valime sealt SQL Injection, sisestame lahtrisse ID käsu:

' union all select user, password from dvwa.users#

Seejärel vajutame klahvi Submit, saame ilusti vastuseks kasutajate nimed ja nende paroolide hashid.


Lülitame sisse tulemüüri käsuga:

a2enmod mod-security

Teeme restardi Apache serverile käsuga:

service apache2 restart

Testime sisse lülitatud tulemüüriga eelnevat käsku kasutades, mille tulemusena saame vasutseks veateate.

Tulemüür on valmis kasutamiseks.

Samamoodi erinevate reeglitega on võimalik kaitsa oma Apache veebiserverit erinevate rünnakute eest.

Teenuse varundamine

Kuna tulemüüri reeglite tegemine on ajanõudev tegevus, tuleks konfiguratsiooni fail serveris varundada käsuga:

cp /etc/apache2/conf.d/modsecurity2.conf /root/backup/modsecurity/

Teenuse taastamine

Kui teenus ei tööta korralikult või on vajalik se uuesti installida, siis konfiguratsiooni faili on võimalik taastada käsuga:

cp /root/backup/modsecurity/modsecurity2.conf /etc/apache2/conf.d/

Kasutatud materjal

  1. http://kiranjith83.blogspot.com/2010/12/installing-and-configuring-modsecurity.html
  2. http://www.sans.org/reading_room/whitepapers/webservers/web-application-firewall-detect-block-common-web-application-attacks_33831