ACK 스캔 이란?
- ACK 패킷을 이용한 스캔
- 포트가 열려 있는지를 판단하는 것이 아니라, 스캐너와 스캔 대상 시스템 사이에 설치된 방화벽의 종류 판단 목적이다 - 방화벽의 룰셋, 포트 필터링인지 상태 기반 필터링인지를 판단한다
- 스탤스 스캔 (stealth scan) 의 한종류다
스캔 결과
- 스캔이 필터링 되지 않았을 경우 (unfiltered)
- 열린 포트와 닫힌 포트 모두 RST 패킷을 반환한다
- 열림, 닫힘 상태를 의미 하지 않는다
- 스캔이 필터링 되었을 경우 (filtered)
- 응답하지 않거나, ICMP 애러 메시지를 돌려준다
ACK 패킷
- ACK 스캔은 필터링 하기가 어렵다. ACK 패킷은 내부 호스트와 외부 호스트 중 어느 쪽이 접속을 시작하였는지 알기 어렵기 때문에, 네트워크 안으로 들어오는 SYN 패킷을 차단하기는 어렵기 때문이다.
- 부적절한 ACK 패킷을 차단하고, 정당한 연결에 의한 ACK 패킷을 통과시키기 위해서, 방화벽은 반드시 성립된 모든 연결의 상태를 검사하여야 한다
- 이런 상태기반 방화벽은 추가적인 리소스가 필요하고, 상태 기반 방화벽을 재시작하면 장비는 상태 정보를 잃고 성립된 연결들을 모두 종료하게 된다
상태기반 필터링
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
- 리눅스 Netfilter/iptables 시스템은 --syn 옵션을 통해 상태 기반을 하지 않는 접근을 제공한다
- 성립된 연결에 관련된 패킷만을 허용하겠다는 뜻이다
- 특수 포트 6개를 제외 (22, 25, 53, 70, 80, 113) 하기 때문에 ACK 스캔으로 이 포트들에 대해서는 opne(22, 53, 80) 또는 닫힘(25, 70, 113)으로 분류 할 수 없다
'정보보안' 카테고리의 다른 글
[사이버위협] 사이버위협 경보 단계 (0) | 2020.02.25 |
---|---|
[리눅스(Linux)] 비밀번호(패스워드) 정책 설정 (0) | 2019.11.22 |
[윈도우] 윈도우 운영체제의 관리 공유 (Administrative shares) (0) | 2019.10.08 |
TCP 세션 하이제킹 (0) | 2019.08.21 |
NAT (Network Address Translation) (0) | 2019.08.20 |