ubuntuusers.de

Apache: ModSecurity und Error-IDs

Status: Gelöst | Ubuntu-Version: Server 16.04 (Xenial Xerus)
Antworten |

lukasb314

Avatar von lukasb314

Anmeldungsdatum:
26. Oktober 2016

Beiträge: 92

Grüß euch!

Der gerade eben installierte ModSecurity blockiert viele "gewöhnliche" Tätigkeiten, die ich mit Hilfe von SecRuleRemoveById in der modsecurity.conf "whitelisten" möchte.

Allerdings frage ich mich, wie ich zur Fehler-ID komme. Wenn ich die Webseite aufrufe (mehrmals hintereinander), finden sich folgende ModSecurity-bezogene Einträge:

[Wed Jan 04 11:53:37.560471 2017] [:error] [pid 21984] [client 17.191.214.160] ModSecurity: Access denied with code 403 (phase 1). Match of "within %{tx.allowed_methods}" against "REQUEST_M$
[Wed Jan 04 11:54:03.590565 2017] [:error] [pid 21990] [client 17.191.214.160] ModSecurity: Access denied with code 403 (phase 1). Match of "within %{tx.allowed_methods}" against "REQUEST_M$
[Wed Jan 04 11:54:29.064274 2017] [:error] [pid 21987] [client 17.191.214.160] ModSecurity: Access denied with code 403 (phase 1). Match of "within %{tx.allowed_methods}" against "REQUEST_M$
[Wed Jan 04 11:54:48.130655 2017] [:error] [pid 21995] [client 17.191.214.160] ModSecurity: Access denied with code 403 (phase 1). Match of "within %{tx.allowed_methods}" against "REQUEST_M$
[Wed Jan 04 11:56:36.235301 2017] [:error] [pid 21992] [client 17.191.214.160] ModSecurity: Access denied with code 403 (phase 1). Match of "within %{tx.allowed_methods}" against "REQUEST_M$
[Wed Jan 04 11:57:54.776254 2017] [:error] [pid 21998] [client 17.191.214.160] ModSecurity: Access denied with code 403 (phase 1). Match of "within %{tx.allowed_methods}" against "REQUEST_M$
[Wed Jan 04 11:58:06.923235 2017] [:error] [pid 21984] [client 17.191.214.160] ModSecurity: Access denied with code 403 (phase 1). Match of "within %{tx.allowed_methods}" against "REQUEST_M$
[Wed Jan 04 11:58:38.406811 2017] [:error] [pid 22002] [client 17.191.214.160] ModSecurity: Access denied with code 403 (phase 1). Match of "within %{tx.allowed_methods}" against "REQUEST_M$
[Wed Jan 04 11:59:01.676265 2017] [:error] [pid 22016] [client 17.191.214.160] ModSecurity: Access denied with code 403 (phase 1). Match of "within %{tx.allowed_methods}" against "REQUEST_M$

Laut Doku sollte hier der Error-Code zu finden sein. Ist damit die pid gemeint? Ich habe Grund daran zu zweifeln, denn die pid ändert sich mit jedem Aufruf. Auch im Internet sah ich, dass die Error-IDs üblicherweise mit 9 beginnen.

Hoffe ihr könnt mir hier weiterhelfen.

Dankeschön im Voraus! LG

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

lukasb314 schrieb:

Der gerade eben installierte ModSecurity blockiert viele "gewöhnliche" Tätigkeiten, die ich mit Hilfe von SecRuleRemoveById in der modsecurity.conf "whitelisten" möchte.

Warum sollte man sowas tun? Passe die Regeln doch einfach so an, dass sie auch das erlauben, was du willst.

[Wed Jan 04 11:53:37.560471 2017] [:error] [pid 21984] [client 17.191.214.160] ModSecurity: Access denied with code 403 (phase 1). Match of "within %{tx.allowed_methods}" against "REQUEST_M$

Hier steht, dass die Request-Methode nicht erlaubt ist. Erlaube sie einfach. Ich habe das Modul noch nicht benutzt, würde aber wetten, dass du die relevante Stelle mit einer einfachen Suche rauskriegst:

grep -ri "allowed_methods" /etc/apache2 /etc/modsecurity

lukasb314

(Themenstarter)
Avatar von lukasb314

Anmeldungsdatum:
26. Oktober 2016

Beiträge: 92

misterunknown schrieb:

Warum sollte man sowas tun? Passe die Regeln doch einfach so an, dass sie auch das erlauben, was du willst.#

Ich hielt mich an diese Anleitung: https://wiki.ubuntuusers.de/Apache/mod_security/ Dort wird das so vorgeschlagen.

Danke aber für deine Antwort. Werd schaun was ich machen kann.

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

lukasb314 schrieb:

Ich hielt mich an diese Anleitung: https://wiki.ubuntuusers.de/Apache/mod_security/ Dort wird das so vorgeschlagen.

Stimmt. Kann man so machen, für sauberer halte ich es aber, die Regel adäquat anzupassen.

Danke aber für deine Antwort. Werd schaun was ich machen kann.

Guck einfach welche Methoden nicht erlaubt sind, und entscheide dann, welche du noch brauchst.

Edit: Also wenn du Regeln nur für bestimmte VHosts ignorieren willst, dann kannst du das natürlich mit SecRuleRemoveById tun.

lukasb314

(Themenstarter)
Avatar von lukasb314

Anmeldungsdatum:
26. Oktober 2016

Beiträge: 92

misterunknown schrieb:

Stimmt. Kann man so machen, für sauberer halte ich es aber, die Regel adäquat anzupassen.

Edit: Also wenn du Regeln nur für bestimmte VHosts ignorieren willst, dann kannst du das natürlich mit SecRuleRemoveById tun.

Super, danke. Aber wie komme ich nun zur richtigen (Error)-ID?

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

lukasb314 schrieb:

Super, danke. Aber wie komme ich nun zur richtigen (Error)-ID?

Die müsste normalerweise im Log-File stehen. Deins sieht irgendwie abgeschnitten aus. Wie hast du das Logfile angeguckt?

lukasb314

(Themenstarter)
Avatar von lukasb314

Anmeldungsdatum:
26. Oktober 2016

Beiträge: 92

misterunknown schrieb:

Die müsste normalerweise im Log-File stehen. Deins sieht irgendwie abgeschnitten aus. Wie hast du das Logfile angeguckt?

Mit nano.

Into_the_Pit Team-Icon

Ehemalige
Avatar von Into_the_Pit

Anmeldungsdatum:
25. Juni 2008

Beiträge: 9490

Wohnort: Bochum

lukasb314 schrieb:

Mit nano.

Dann scroll mal etwas weiter nach rechts. Das $-Zeichen bei nano bedeutet, dass die Zeile noch nicht zuende ist. 😉

Match of "within %{tx.allowed_methods}" against "REQUEST_M$

lukasb314

(Themenstarter)
Avatar von lukasb314

Anmeldungsdatum:
26. Oktober 2016

Beiträge: 92

Into_the_Pit schrieb:

Dann scroll mal etwas weiter nach rechts. Das $-Zeichen bei nano bedeutet, dass die Zeile noch nicht zuende ist. 😉

Stimmt. Die Zeile ist eeewig lang. Konnte dort auch die Fehler-ID finden.

Gibt es eine einfache Möglichkeit wie ich mir die log-File anschauen kann, sodass bei langen Zeilen automatisch Zeilenumbrüche gemacht werden. Beim nach-rechts-Scrollen bin ich geraden eben fast zum Pilz geworden.

Into_the_Pit Team-Icon

Ehemalige
Avatar von Into_the_Pit

Anmeldungsdatum:
25. Juni 2008

Beiträge: 9490

Wohnort: Bochum

lukasb314 schrieb:

Gibt es eine einfache Möglichkeit wie ich mir die log-File anschauen kann, sodass bei langen Zeilen automatisch Zeilenumbrüche gemacht werden.

Am einfachsten ist es, keinen Editor zu nutzen, sondern einen Pager. Hier bietet sich z.B. less an oder more, Alternativ (wenn man etwas mit vim vertraut ist) auch view.

lukasb314

(Themenstarter)
Avatar von lukasb314

Anmeldungsdatum:
26. Oktober 2016

Beiträge: 92

Danke! Werde ich mal probieren.

Antworten |