반응형
mod_evasive
는 apache DOS 보안 모듈
로, 서버에 많은 요청을 보내는 트래픽을 차단하는 역할을 한다.
해당 모듈을 먼저 설치하기 전에 yum 패키지를 최신으로 유지해야한다.
①
yum 최신 업데이트yum -y update
yum 업데이트 오류 발생 시 아래 명령을 수행하고 재시도.
yum remove epel-release
②
epel-releaseyum -y install epel-release
EPEL(Extra Packages for Enterprise Linux)은
리눅스의 추가 패키지라고 보면 된다.
yum -y install mod_evasive
vi /etc/httpd/conf.d/mod_evasive.conf
저 파일에서 DOS와 관련된 설정 값들을 제어할 수 있다.
자주 사용하는 설정들은 아래와 같다.
DOSSiteInterval에 지정된 시간동안
특정 페이지의 요청 수가 DOSSiteCount(
해당 클라이언트 IP를 차단한다.
차단된 IP는
테스트 프로그램은
해당 파일의 경로는
필자의 경우 /usr/share/doc/mod_evasive-1.10.1/test.pl인데
리눅스의 추가 패키지라고 보면 된다.
③
apache DOS 보안 모듈 설치yum -y install mod_evasive
④
모듈 보안 값 설정vi /etc/httpd/conf.d/mod_evasive.conf
저 파일에서 DOS와 관련된 설정 값들을 제어할 수 있다.
자주 사용하는 설정들은 아래와 같다.
DOSSiteCount
20
DOSSiteInterval
3
DOSSiteInterval에 지정된 시간동안
특정 페이지의 요청 수가 DOSSiteCount(
20
)번을 넘는 경우 해당 클라이언트 IP를 차단한다.
DOSBlockingPeriod
50
차단된 IP는
50
초동안 접속 할 수 없다.
DOS를 당한 경우 공격 로그가 남게되는데
66번 째줄에 DOSLogDir에서 로그 파일 위치를 설정할 수 있다.
아래 명령어로 로그 폴더를 만들고 apache 권한을 부여한다.
# mkdir /var/log/mod_evasive
# chown apache.apache /var/log/mod_evasive
71~72번은 DOS 공격에서 제외되는 대상들이다.
필요에 따라서 화이트 리스트를 더 추가할 수 있다.
⑤
차단되는지 테스트하기테스트 프로그램은
test.pl
을 제공한다.해당 파일의 경로는
필자의 경우 /usr/share/doc/mod_evasive-1.10.1/test.pl인데
실습 환경에 따라 디렉토리명이 조금 다를 수 있다.
test.pl
파일의 12번째줄에 다음과 같은 코드를 추가한다. printf("%03d ", $_ );
그 후 다음 명령으로 툴을 실행한다.
perl test.pl
다른 방법으로는 공격 서버를 별도로 구축하여 진행한다.
공격 서버의
test.pl
에서 PeerAddr를 본인의 웹 서버 주소로 셋팅하고Socket을 루프백 주소로 넣는다.
perl로 해당 툴을 실행시키면 타겟 웹 서버로 DOS 된다.
공격 수행 후 아래처럼 200 OK 메시지가 표시되다가 403 메시지가 뜨면서 웹 접속이 차단된다.
100 HTTP/1.1 403 Forbidden
웹 서버에서는 DOS를 시도한 IP가 파일 이름으로 저장되었다.
/var/log/httpd/error_log를 통해 공격자가 차단된 것을 확인할 수 있고
access_log에 DOS를 시도한 흔적이 남는다.
반응형
'해킹-보안' 카테고리의 다른 글
MS-Office의 DDE 기능을 악용한 악성코드 (1) | 2020.05.14 |
---|---|
VMware에 BeeBox 설치하기 (0) | 2020.05.14 |
윈도우10 샌드박스 사용하기 (0) | 2020.04.22 |
인터넷 주소를 잘못치고 들어가면 생기는 일 (4) | 2020.04.16 |
아이폰 캘린더 바이러스 (0) | 2020.04.08 |