2011-11-23 6 views
12

mod_security를 ​​설정 한 후 나는 거짓 긍정 [??]을 많이 탔습니다. 나는 탐지에서 그것을 실행하고있다. 그래서 아무런 문제는 아직 없지만, 일단 필터가 생기면 요청을 차단하기 시작할 것이다.mod_security 거짓 긍정

두려움 나는이 필터의 중요성을 100 % 이해하지 못하고 거의 모든 도메인에서 100 개의 필터를 얻었습니다. & 모든 요청이 합법적으로 보입니다.

Request Missing a User Agent Header 
Request Missing an Accept Header 

여기서 가장 좋은 점은 무엇입니까? 이 필터를 비활성화해야합니까? 요청이 차단되지 않도록 심각도를 낮게 설정할 수 있습니까? 여기

당신이 프로듀서 줄에서 보여 감사 로그 항목의 섹션 H에서 보면, 당신이 OWASP ModSecurity를 ​​핵심 규칙 집합을 사용하는 것을 볼 수 있습니다 완전한 항목

[22/Nov/2011:21:32:37 --0500] u6t6IX8AAAEAAHSiwYMAAAAG 72.47.232.216 38543 72.47.232.216 80 
--5fcb9215-B-- 
GET /Assets/XHTML/mainMenu.html HTTP/1.0 
Host: www.domain.com 
Content-type: text/html 
Cookie: pdgcomm-babble=413300:451807c5d49b8f61024afdd94e57bdc3; __utma=100306584.1343043347.1321115981.1321478968.1321851203.4; __utmz=100306584.1321115981.1.1.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=XXXXXXXX%20clip%20ons 

--5fcb9215-F-- 
HTTP/1.1 200 OK 
Last-Modified: Wed, 23 Nov 2011 02:01:02 GMT 
ETag: "21e2a7a-816d" 
Accept-Ranges: bytes 
Content-Length: 33133 
Vary: Accept-Encoding 
Connection: close 
Content-Type: text/html 

--5fcb9215-H-- 
Message: Operator EQ matched 0 at REQUEST_HEADERS. [file "/etc/httpd/modsecurity_crs/base_rules/modsecurity_crs_21_protocol_anomalies.conf"] [line "47"] [id "960015"] [rev "2.2.1"] [msg "Request Missing an Accept Header"] [severity "CRITICAL"] [tag "PROTOCOL_VIOLATION/MISSING_HEADER_ACCEPT"] [tag "WASCTC/WASC-21"] [tag "OWASP_TOP_10/A7"] [tag "PCI/6.5.10"] 
Message: Operator EQ matched 0 at REQUEST_HEADERS. [file "/etc/httpd/modsecurity_crs/base_rules/modsecurity_crs_21_protocol_anomalies.conf"] [line "66"] [id "960009"] [rev "2.2.1"] [msg "Request Missing a User Agent Header"] [severity "NOTICE"] [tag "PROTOCOL_VIOLATION/MISSING_HEADER_UA"] [tag "WASCTC/WASC-21"] [tag "OWASP_TOP_10/A7"] [tag "PCI/6.5.10"] 
Message: Warning. Operator LT matched 5 at TX:inbound_anomaly_score. [file "/etc/httpd/modsecurity_crs/base_rules/modsecurity_crs_60_correlation.conf"] [line "33"] [id "981203"] [msg "Inbound Anomaly Score (Total Inbound Score: 4, SQLi=5, XSS=): Request Missing a User Agent Header"] 
Stopwatch: 1322015557122593 24656 (- - -) 
Stopwatch2: 1322015557122593 24656; combined=23703, p1=214, p2=23251, p3=2, p4=67, p5=168, sr=88, sw=1, l=0, gc=0 
Producer: ModSecurity for Apache/2.6.1 (http://www.modsecurity.org/); core ruleset/2.2.1. 
Server: Apache/2.2.3 (CentOS) 

답변

20

입니다 (CRS) v2.2.1.

특히

https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project#tab=Documentation

, 당신은 내가 한이 두 블로그 게시물을 검토해야합니다 - -이 경우에, 나는 당신이 프로젝트 페이지의 문서 정보를 검토 제안

  1. http://blog.spiderlabs.com/2010/11/advanced-topic-of-the-week-traditional-vs-anomaly-scoring-detection-modes.html
  2. http://blog.spiderlabs.com/2011/08/modsecurity-advanced-topic-of-the-week-exception-handling.html

블로그 게시물 # 1은 "작동 모드"y ou가 CRS에 사용 중입니다. 감사 로그를 보면 비정상 채점 모드에서 실행중인 것 같습니다. 이 규칙에서 탐지를 수행하지만 modsecurity_crs_49_inbound_blocking.conf 파일에서 전반적인 예외 점수를 검사하여 차단 결정을 개별적으로 수행합니다.

블로그 게시물 # 2는이 두 규칙을 어떻게 처리 할 것인지 정확하게 결정할 수 있도록 해주므로 유용합니다. 이러한 내용이 중요하지 않다고 생각되면 SecRuleRemoveById 지정 문을 사용하여 modsecurity_crs_60_exceptions.conf 파일에서이 규칙을 사용하지 않도록 설정하는 것이 좋습니다. 현재이 두 가지 경고는 modsecurity_crs_10_config.conf 파일에 설정된 기본 임계 값 인 5 미만인 인바운드 변형 점수 4를 생성하므로 차단되지 않습니다.

감사 로그보기에서이 요청이 경고를 생성하는 동안 트랜잭션이 차단되지 않았습니다. 만일 그렇다면, 섹션 H에 따른 메시지 데이터는 "Access denied ..."라고 표시했을 것입니다.

이러한 규칙의 목적은 표준 브라우저 (예 : IE, Chrome, Firefox 등)에서 생성되지 않은 요청을 표시하는 것입니다.이 브라우저는 모두 User-Agent와 HTTP RFC 사양에 따라 요청 헤더를 수락합니다.

마지막 코멘트 - https://lists.owasp.org/mailman/listinfo/owasp-modsecurity-core-rule-set

또한 그 답변 아카이브를 검색 할 수 있습니다 - 당신이 이러한 유형의 질문에 대한 공식 OWASP ModSecurity를 ​​CRS 메일 목록을 사용하는 것이 좋습니다 것입니다.

건배, 라이언 바넷 ModSecurity를 ​​프로젝트 OWASP ModSecurity를 ​​CRS 프로젝트

+1

공식적인 문서 및 위키와 관련하여 많은 문제가 있었지만 대부분 옵션에 대한 세부 정보가 중요하지만 전반적인 구현 방법에 대해서는별로 중요하지 않습니다. 링크 및 제안 주셔서 감사합니다. 나는 그것을 더 깊이 조사 할 것이다. –

+1

토론 목록에 대한 Google 그룹에 좋은 모든 전환을 사랑하십시오. – Dogweather

5

이 가양없는 무연. 요청 헤더에 User-AgentAccept 헤더가 없습니다. 일반적으로 스캐너 또는 해킹 도구에서 전송됩니다.

+1

"보낸 사람"이 아니라 "보내지 않았다"는 것을 의미하지 않았습니까? – Volomike

+1

요청을 보내면 헤더가 전송되지 않습니다. – rubo77