opensuse 13.1 modsecurity problem with SecDataDir
hallo opensuse-de mailing list ;-) ich hab hier ein problem mit mod_security und will irgendwie keine loesung finden ;-( doch vielleicht kann mir ja hier jemand weiterhelfen? ist eine jungfraeuliche opensuse 13.1 box, frisch installiert mit minimal system dazu der apache webserver in version 2.4.6 und das module apache2-mod_security2 alles via yast installiert und alle update patches eingespielt. mod security hat die version 2.6.7 und yast liefert mit hierzu das owasp core rule set in version 2.2.6 dies ist aber leider nicht kompatibel mit mod security version 2.6.7, weshalb ich mir das CRS 2.2.5 heruntergeladen habe, was nun auch bestens funktioniert und keinerlei fehler beim start von apache in den logs hinterlaesst. [:notice] [pid 17011] ModSecurity for Apache/2.6.7 (http://www.modsecurity.org/) configured. [:notice] [pid 17011] ModSecurity: APR compiled version="1.4.8"; loaded version="1.4.8" [:notice] [pid 17011] ModSecurity: PCRE compiled version="8.33 "; loaded version="8.33 2013-05-28" [:notice] [pid 17011] ModSecurity: LIBXML compiled version="2.9.1" [mpm_prefork:notice] [pid 17011] AH00163: Apache/2.4.6 (Linux/SUSE) PHP/5.4.20 OpenSSL/1.0.1h configured -- resuming nor mal operations soweit prima ... apache started mit mod security ... fehlerlos dann geh ich mal gucken, ob mir mod security folgende 'boese' url abfaengt: http://irgendeinedomain.com/../../../etc/passwd und bingo! error log gibt folgende message raus: [Tue Jul 22 14:56:41.447240 2014] [:error] [pid 17029] [client 91.43.198.228] ModSecurity: Access denied with code 403 (phase 2). Pattern match "(?:\\\\b(?:\\\\.(?:ht(?:access|passwd|group)|www_?acl )|global\\\\.asa|httpd\\\\.conf|boot\\\\.ini)\\\\b|\\\\/etc\\\\/)" at REQUEST_FILENAME. [file "/usr/share/owasp-modsecurity-crs-225/base_rules/modsecurity_crs_40_generic_attacks.conf"] [line "181"] [id "950005"] [rev "2.2.5"] [msg "Remote File Access Attempt"] [data "/etc/"] [severity "CRITICAL"] [tag "WEB_ATTACK/FILE_INJECTION"] [tag "WASCTC/WASC-33"] [tag "OWASP_TOP_10/A4"] [tag "PCI/6.5.4"] [hostname "domain.com"] [uri "/etc/passwd"] [unique_id "U85fiU4vegoAAEKFQOsAAAAB"] passt also eigentlich alles! und mod security weisst mich nun darauf hin, dass ich mal SecDataDIr definieren soll, damit mod security seine collections / daten speichern kann: [Tue Jul 22 14:56:41.444603 2014] [:error] [pid 17029] [client 91.43.198.228] ModSecurity: Unable to retrieve collection (name "global", key "global"). Use SecDataDir to define data directory first. [hostname "domain.com"] [uri "/etc/passwd"] [unique_id "U85fiU4vegoAAEKFQOsAAAAB"] [Tue Jul 22 14:56:41.444681 2014] [:error] [pid 17029] [client 91.43.198.228] ModSecurity: Unable to retrieve collection (name "ip", key "91.43.198.228_1d3533473747867f5ae2e667e469e9838feaeff0"). Us e SecDataDir to define data directory first. [hostname "domain.com"] [uri "/etc/passwd"] [unique_id "U85fiU4vegoAAEKFQOsAAAAB"] und genau hier faengt jetzt mein problem an ;-) per default ist SecDataDir /tmp definiert, was aber net so tolle ist, da nun bei opensuse 13.1 der apache via systemd gestarted wird. und systemd verwendet nun ein privateTmp, damit nur der apache server auf den /tmp order zugriff hat. naja ... dachte ich mir, nimmst du halt den ordner /var/log/apache2 als SecDataDir. ausprobiert ... und auch das ging irgendwie nicht wie es sollte. denn wenn mod security daten in die collection ip bzw. global reinschreiben will, dann sollten die dateien ip.dir - ip.pag - global.dir - global.pag erstellt werden ... doch genau das passiert nicht! und mod security kann einfach keine daten schreiben. ich hab das jetzt echt schon alles ausprobiert. dateien via touch selbst erzeugt touch /var/log/apache2/ip.dir ... etc ... dann berechtigungen via chmod auf 777 gesetzt, damit wirklich jeder in die dateien schreiben kann. doch auch des hat nix geholfen! in den apache error logs gibts zwar keine fehler meldungen mehr und auch keine permission denied meldungen aber fakt ist leider, dass auch in die selbst erstellten dateien mit chmod 777 niemals daten von mod security geschrieben werden ;-( auch hab ich dann schon mal probiert den privateTmp von systemd in apache2.service auf false / no zu setzen. ein systemsctl daemon-reload und dann apache wieder neu gestartet. nun hat apache keinen privateTmp mehr und kann daten wieder in /tmp folder schreiben. dann auch das SecDataDir uaf /tmp gesetzt ... doch auch leider hier wieder das gleich problem ;-( mod security kann bzw will oder darf nicht? daten erstellen ... ip.dir ... global.dir ist echt zum verrueckt werden ;-( weil ich das ganze auch seit jahren ohne probleme auf anderen opensuse boxen, wie z.b. 12.2 oder 12.3 am laufen habe. nur bei 13.1 will es nicht ;-( ich denke halt, dass des irgendwas mit systemd zu tun hat? vielleicht erstellt systemd sowas wie ne jail fuer apache? und somit kann mod security auch nicht dateien erzeugen bzw. schreiben? ich hab dann auch schon geguckt ob SELinux aktiv ist -> ist es aber nicht! gibt also keine weiteren berechtigungsprobleme ... naja ... ich hoffe, dass ich das alle gut beschrieben habe und vielleicht findet sich ja hier jemand, welcher mir vielleicht weiter helfen koennte ;-) ich waere wirklich mehr als dankbar fuer jegliche hilfe! hier noch ein paar links zu foren, auf welchen ich mein problem schon mal geschildert habe: https://github.com/SpiderLabs/ModSecurity/issues/688 https://forums.opensuse.org/showthread.php/496433-Mod-Security-2-2-7-problem... https://forums.opensuse.org/showthread.php/496434-mod_secuirty-2-2-7-on-open... http://www.opensuse-forum.de/allgemeines/software-und-anwendungen/10111-mod-... also jetzt schon vielen dank greetings becki -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
participants (1)
-
Administrator Beckspaced.com