취약점분석 (Blue Team)/Network

[Network] 3/16일 IDS 동작 분석 및 규칙 변경

poiri3r 2026. 3. 16. 12:06

어제 설치하고 하루가 지났습니다.

하루동안 어떤 트래픽이 잡혔는지 확인해보도록 하겠습니다.

로그를 초기화 시켰었는데 access.log가 끝나고 두번째 access.log.1까지 생성 되었습니다.

 

공격자가 많이 있는건 아니고, 제가 사이트 링크를 정보 수집을 위해 인스타 스토리로 올려서 일반적인 방문자도 있고, 악성봇들도 존재합니다.

여기 GET /.env 요청을 하는건 악의적으로 공격을 하는 시도들입니다.

sudo cscli alerts list

를 쳐서 하루동안 들어온 알람에 대해 확인해보겠습니다.

다음과 같이 2개의 IP가 차단되었습니다.

이렇게 차단된 항목에 의해 웹에서 대시보드도 확인할 수 있습니다.

2개의 차단된 공격 중 한개는 CVE-2025를 활용한 접속 시도이고, 하나는 root를 대상으로 한 ssh 브루트포스 공격입니다.

 

172.210.53.196의 ip 로그를 검색해보면 아래와 같이 로그인에 실패한 기록을 찾을 수 있습니다.

 

그리고 20.15.163.245가 시도한 공격을 보면

GET /develo.. 경로를 찾았습니다.

zgrab이라는 자동화된 취약점 스캐너로 탐색이 되었고, 즉시 차단한 모습입니다.

crowdsec에서 제공하는 트래픽입니다.

악성 IP에게 응답하지 않아서 아낀 트래픽이 1.84MB, 악성요청 중 57번 nginx 도달 전 차단,로그 파일 용량 9.5kb 절약입니다.

 

상당히 효율적이지만 아쉬웠던 부분이 있습니다.

위 2개의 요청의 경우 GET /.env를 보내는 악의적인 트래픽이지만, crowdsec에서는 해당 악성요청들을 불류해내지 못했습니다.

어제 추가한 시나리오들이 CVE 위주기 때문에 .env 탐지 시나리오를 추가해야합니다.

 

전체 시나리오는 다음과 같습니다.

그 중에 HTTP 트래픽 관련 시나리오는 다음과 같습니다.

 

근데 전체 목록을 보면 http sensitive-files.yml룰이 있더라고요.

ngninx에서 "sensitive_data.txt"목록에 있는 확장자로 끝나는 요청을 감시합니다.

같은 IP가 4번 이상 시도하면 탐지하고, 5초 cooldown이 있어서 5초마다 카운트가 1씩 감소하고, 같은 IP탐지시 5분동안 알림을 날리지 않습니다.

 

근데 일단 문제가 sensitive_data.txt파일이 설치가 안되어있더라고요.

수동으로 설치했습니다.

설치하고 파일을 읽어보니 정상적으로 확인이 되었고, 내용을 조금 수정하면 현재는 5번 시도시 차단이었는데 이걸 1번으로 줄이겠습니다.

바꿔주고 crowdsec을 재시작해주겠습니다.

잘 적용이 됐는지 확인하기 위해 시도해보겠습니다.

 

핸드폰으로 시도를 했는데 차단은 안되더라고요 ??

확인해보니 기존의 파일을 수정한 경우에는 tainted 경고가 뜨면서 활성화가 안될수 있다고 합니다.

그냥 강제 실행으로 연결하고, 다시 시작해보겠습니다.

 

그래도 안되서 이것저것 찾아보니 nginx랑 crowdsec이랑 연동이 제대로 안되는 것 같습니다.

해서 이것저것 찾아봐도 안되어서 확인을 해보니 ..

핸드폰이랑 컴퓨터 대역이 화이트리스트에 있었나 해서 찾아보니 그건 아니고,

이 leakspeed가 너무 짧은데, 같은 .env로의 요청은 카운트로 세지 않기에 .env나 .config등 여러가지 페이지로 요청을 해야 탐지가 되는 구조였습니다.

leak speed값을 바꿨으니 자동화봇이 .env요청한 뒤 .config요청을 보내는 순간 바로 차단을 당하게 됩니다.

제 핸드폰 IP인 106.101도 차단된 걸 알 수 있고, 그 새 다른 한명이 차단당했네요.. ㅎ

scenario에서도 보면 overflow라고 차단된 기록이 있습니다.

 

간단하게 설정만 바꾸면 되는 줄 알았는데 생각보다 오래 걸렷네요

다시 벤을 풀어주는것으로 이번 포스팅은 마치겠습니다.

 

읽어주셔서 감사합니다~