1. ModSecurity 설치

관리자 권한으로 명령어 수행했으며 관리자 로그인 불가시 sudo 사용

 

- ModSecurity 모듈 설치

 

- security2 모듈 활성화

* a2enmod 명령으로 모듈을 활성화하면 /etc/apache2/mods-enabled 디렉터리에 심볼릭 링크 생성 

(mods-available 내 모듈을 활성화 시 mods-enabled 디렉터리에 링크 생성)

 

- apache 재시작

 

2. Modsecurity 설정

- /etc/apache2/mods-enabled/security2.conf 파일을 확인하면 /etc/modsecurity/ 내 .conf 파일을 참고하는 행 존재

 

- 설정 기본 파일인 /etc/modsecurity/modsecurity.conf-recommended을 참고하도록 파일명 변경 & 설정 변경

* -recommended 문자만 제거해주면 된

 

- WAF에서 차단하도록 DetectionOnly -> On으로 변경

 

- 감사로그에 포함될 수정을 위해 ABDEFHIJZ -> ABCEFHJKZ으로 변경 

[ 옵션 정보 - 참고 사이트(http://idchowto.com/) ]

* A: 감사(Audit) 헤더 - 필수

* B: HTTP 요청 헤더

* C: HTTP 요청 바디

* D: 현재 지원 안됨

* E: HTTP 응답 바디

* F: HTTP 응답 헤더

* H: 감사 로그 트레일러

* Z: 로그의 끝 나타냄 - 필수

 

- apache 재시작

 

- 이 정도 세팅만 진행해도 어느 정도 동작 확인

* URL 경로에 XSS 공격 구문 탐지

 

3. OWASP 규칙 세트 설치

- OWASP는 오픈소스 웹 애플리케이션 보안 프로젝트로 10대 웹 애플리케이션의 취약점을 발표 등의 활동 수행

( 출처 - 위키백과)

- OWASP Top 10을 포함한 광범위한 공격을 막기 위한 Rule Set

 

- 규칙 세트 다운로드

 

- 규칙 세트 압축 해제

 

- 규칙 세트를 저장한 디렉터리를 생성하고 규칙 세트 이동 + 경로 이동

 

- 예제 conf 파일 이름 변경 및 아파치 설정 파일 수정

 

- apache 재시작을 했는데 에러 발생

* coreruleset-3.3.4/rules/REQUEST-922-MULTIPART-ATTACK.conf 에서 에러 발생

  (찾아보니 Modsecurity 가 옛날 버전이라 발생하는 에러라는데 업그레이드가 잘 안돼서 예외 - 보안상 비추천 방법)

 

- 정상적으로 아파치 재시작

 

=> 이제 웹 서버는 WAF가 보호한다! 

 

참고 사이트: https://www.linuxbabe.com/security/modsecurity-apache-debian-ubuntu

+ Recent posts