문제 12) 네트워크 스캐닝(Network Scanning)
답)
1. 공격대상의 정보 수집 기술, 네트워크 스캐닝(Network Scanning) 개념
- 네트워크를 통해 동작 중인 공격대상에 대해서 서비스 , 열려 있는 포트번호 , 사용하고 있는 운영체제, 버전, 동작 중인 데몬 프로세스 등을 수집해서 해당 대상의 취약점을 찾기 위한 해킹의 초기 단계 기술
2. 네트워크 스캐닝 유형 및 세부설명
가. 네트워크 스캐닝 유형
|
- Host Discovery 와 포트스케닝을 위해 다양한 네트워크 스캐닝 기법이 활용되며, TCP/UDP/ICMP 프로토콜을 기반으로 Sweeps, TCP Connect Scan 등의 유형으로 세분화됨
|
구분
|
설명
|
핵심기술
|
Sweeps
|
- 스캔 대상 네트워크에 속해 있는 시스템의 활성화 유무를 판단 할 수 있는 기법으로 사용 IP 주소와 네트워크 범위 파악
- 클라이언트/서버 구조를 기반 수행(Request/Response)
|
- ICMP Sweep
- TCP Sweep
- UDP Sweep
|
TCP Connect(open) Scan
|
- connect() 함수를 사용해서 각 포트별로 접속하여 스캔하는 방식
- 포트가 열려있는 경우 대상 시스템으로부터 SYN+ACK 패킷을 수신하면 그에 대한 ACK패킷을 전송함으로써 연결을 완료하는 방식
|
- TCP 3Way Handshaking
- RST + ACK 전송
|
TCP Half Open(SYN) Scan
|
- 세션에 대한 로그가 남는 TCP Open 스캔의 단점을 보완하기 위해 나온 기법으로 로그를 남기지 않아 추적이 불가능한 기법
- 포트가 열려있는 경우 대상 시스템으로부터 SYN_ACK 패킷을 수신하면 그에 대한 ACK 패킷을 전송함으로써 연결을 완료하는 방식
|
- TCP 3 Way Handshaking
- RST + ACK 미전송
|
Stealth Scan
|
- TCP Header 의 제어비티(control Bit)를 비정상적으로 설정하여 스캔하는 방식(TCP 표준(RFC793)의 미묘한 허점을 이용)
|
- TCP FIN / NULL / Xmas Scan
|
UDP Scan
|
- ICMP Unreachable 메시지를 이용하여 UDP 포트의 Open 여부를 판단하기 위한 스캐닝 방식
- UDP 패킷이 네트워크를 통해 전달되는 동안 라우터나 방화벽에 의해 손실될 수 있으므로 신뢰성이 떨어짐
|
|
- 이외에도 공격대상 시스템의 OS 버전을 파악하기 위해 TCP 연결설정의 시작 순서번호, TTL(Time To Live)의 기본 값, IPv4 헤더 내 ToS(Type of Service) 필드 구현 방식, Banner Grabbing 등을 활용 가능함
|
3. 인프라 엔지니어 관점 네트워크 스캐닝 대응 방안
네트워크 장비
|
- 라우터나 L3 스위치에서 ACL(Access Control List) 를 설정하여 허용되지 않는 사용자 접근 차단 수행
|
IDS / IPS
|
- 임계치(Threshold) 값을 기준으로 일정 단위시간 동안 특정범위를 넘어서는 접속 시도를 차단하는 기법 적용
|
서버
|
- 스캔 도구나 보안점검 도구를 통해 수시로 서버 내부 취약점 점검
- 불필요한 서비스 포트(TCP/UDP) 차단 설정
|
- 스캔 도구를 통해 내부 서버를 점검 할 때는 모든 포트번호(1~65535)에 대해 스캔 할 필요가 있으며, 최근 UDP 기반으로 동작하는 백도어가 증가하고 있으므로 TCP 뿐만 아니라 UDP 도 반드시 점검해야 함
- 주요 스캔 도구로는 Acunetix, NMAP, Wireshark, Nexpose 등이 있음
|
공감과 댓글은 아이티신비에게 큰 힘이 됩니다.
블로그 글이 유용하다면 블로그를 구독해주세요.♥