Tôi đã gặp phải rất nhiều vấn đề với Mod Security. Tôi đang bận viết một CMS cho một dự án tại nơi làm việc và trong khi đang phát triển một trang để chỉnh sửa một bản ghi cơ sở dữ liệu nào đó, tôi vẫn nhận được 403 lỗi. Sau nhiều giờ đập đầu vào bàn của tôi, điều chỉnh các bit của mã Tôi cuối cùng chỉ thay đổi kịch bản mà hình thức của tôi đã được đăng, để chứa một đơn giản echo "test";
. Ngay cả việc gửi trang đơn giản này cũng đã gây ra lỗi 403. Tôi rối tung với hình thức của tôi và cuối cùng tôi thấy rằng nếu tôi giảm số lượng dữ liệu tôi đã gửi mẫu đơn gửi tốt (Đặc biệt tôi làm giảm số lượng văn bản trong một textarea).Hạn chế tối đa của ModSecurity (lỗi giới hạn PCRE)
Sau khi kiểm tra các bản ghi (Yep, điều này không phải là điều đầu tiên tôi làm - tiếng thở dài) Tôi nhận thấy rằng tôi đã nhận được rất nhiều lỗi từ ModSecurity, chẳng hạn như:
[Mon Aug 12 16:34:45 2013] [error] [client XX.XXX.XXX.XXX] ModSecurity: Failed to access DBM file "/etc/httpd/logs//global": Permission denied [hostname "XXXXXXX.XXX"] [uri "/admin/index.php"] [unique_id "UgkAlW1shFcAAHTMK80AAAAF"]
[Mon Aug 12 16:34:45 2013] [error] [client XX.XXX.XXX.XXX] ModSecurity: Failed to access DBM file "/etc/httpd/logs//ip": Permission denied [hostname "XXXXXXX.XXX"] [uri "/admin/index.php"] [unique_id "UgkAlW1shFcAAHTMK80AAAAF"]
[Mon Aug 12 17:11:33 2013] [error] [client XX.XXX.XXX.XXX] ModSecurity: Rule execution error - PCRE limits exceeded (-8): (null). [hostname "XXXXXXX.XXX"] [uri "/admin/index.php"] [unique_id "UgkJNW1shFcAAHXUMHkAAAAH"]
[Mon Aug 12 17:11:33 2013] [error] [client XX.XXX.XXX.XXX] ModSecurity: Access denied with code 403 (phase 2). Match of "streq 0" against "TX:MSC_PCRE_LIMITS_EXCEEDED" required. [file "/etc/httpd/conf.d/mod_security.conf"] [line "93"] [msg "ModSecurity internal error flagged: TX:MSC_PCRE_LIMITS_EXCEEDED"] [hostname "XXXXXXX.XXX"] [uri "/admin/index.php"] [unique_id "UgkJNW1shFcAAHXUMHkAAAAH"]
Tôi đã rối tung xung quanh , Googling và thay đổi các quy tắc cho ngày không có kết quả. Điều duy nhất tôi dường như có thể làm là tắt ModSecurity cho vhost này. Điều này là tốt của tôi trong khi tôi đang phát triển CMS, nhưng trong sản xuất này không thực sự là một cái gì đó tôi muốn làm. Có ai có bất kỳ ý tưởng về những gì đang gây ra vấn đề này và làm thế nào để sắp xếp nó? Các bản ghi dường như chỉ ra một số quy tắc liên quan đến giới hạn biểu thức chính quy, nhưng kể từ khi thay đổi bài viết của tôi để chỉ in ra bài kiểm tra từ tôi không làm bất cứ điều gì với họ (Mặc dù tôi đã thử giới hạn qua SecPcreMatchLimit
và SecPcreMatchLimitRecursion
). Có vẻ như có điều gì đó sai trái với lượng dữ liệu tôi gửi qua.
Tôi đang gặp vấn đề tương tự và như ngay bây giờ tôi có 2 Apache quá trình chạy ở 100% CPU ... Trên một lõi 8, nó không phải là quá xấu trong một cách, nhưng nó cũng có nghĩa là một số người dùng không được phục vụ! –