- 수동적 공격 : 직접적인 피해 X
- 능동적 공격 : 직접적인 피해 O

공격 목적의 정보 수집을 위한 활동
1. Foot printing : 사회공학기법/ 다양한 정보 수집
2. Scanning : 대상 NW 구조
3. Enumeration : 목록화
사회공학기법, network 및 시스템 주변 조사을 통해 IP, 이름 및 계정, 전화번호 등을 수집network 구조, 시스템이 제공하는 서비스 등의 정보를 취득Foot printing, scanning 을 통해 수집한 정보를 바탕으로 더 구체적이고 실용적인 정보를 취득공유자원 목록화, 사용자 및 그룹 목록화, 응용 프로그램 목록화Scanning 에서 파악하는 정보
Scan 종류
- Sweep : System 작동 유무 (ICMP, TCP, UDP)
- Open Scan : port service 여부 (TCP, SYN, UDP)
- Stealth Scan : port service 여부 (session connectionless)
내가 공격하고 싶은, 내가 정보를 수집하고 싶은 상대방 시스템이 지금 살아있나? 확인
IP 주소와 network 범위 파악ping -> 응답이 있다 -> 해당 system 활성화TCP ACK TCP SYN well known port 요청 -> 응답이 있다 -> 해당 system 활성화ICMP Port Unreachable 오지 않는다 -> 해당 system 활성화
3-way handshaking -> 해당 port open 판단 가능세션로그 남기지 않는다SYN 패킷 전송 -> SYN/ACK 패킷 수신 -> 해당 port open 판단 가능SYN/ACK 패킷 수신 -> RST 패킷 전송ICMP Port Unreachable 온다 -> 해당 port 비활성화 확인 c.f
UDP sweep :ICMP Port Unreachable오지 않는다 -> 해당 system 활성화 확인
( UDP 이용하여 msg send )
세션을 완전히 성립하지 않고 대상 시스템의 port 활성화 여부를 알아내므로 대상 시스템에 로그가 남지 않음
SYN SCAN은 Stealth scan 이다 (O)
SYN SCAN은 Open scan 이다 (O)
TCP header의 flag 부분을 비정상적으로 설정해서 전송scanner 주소를 식별할 수 없도록 다양한 주소로 위조한 상태로 scanspoofing한 주소Nmap (Network Mapper)
목적 : 컴퓨터와 서비스 찾기
활용 : network 검색, 보안 진단
OS 종류, 사용 서비스 정보, FTP 서버의 취약점을 이용한 공격 가능
Open source
몰래 엿듣는 행위
Network traffic을 도청하는 행위 
허브(Hub) : 더미 허브(Dummy Hub) 또는 수동 허브
리피터(Repeater) : 입력으로 전달받은 패킷을 나머지 모든 포트로 단순히 전달

공격방법
NIC에서 무차별 모드(Promiscuous Mode) 로 설정
나의 MAC 주소가 아닌 패킷도 전달받는 모드

MAC addr 이용하여 패킷을 해당 목적지로만 전달
-> 무차별 모드 sniffing이 불가능
모니터링 포트(Monitoring Port) : 스위치를 통과하는 모든 패킷의 내용을 전달하는 포트
목적 : 정상적인 관리
network 장비 자체 제공
물리적으로 스위치에 접근 후, 모니터링 포트에 공격자 pc를 연결 => 모든 패킷 sniffing 가능

IP addr -> MAC addr 를 위해 내부적으로 관리하는 테이블

최대 저장 개수를 초과하면, 브로드캐스팅(Broadcasting) 모드로 전환
브로드캐스팅 모드 : 자신이 전달받은 패킷을 연결된 모든 단말기에 전달
더미 허브처럼 동작 -> 통신 속도 down
갑자기 NW 통신 속도가 down인 상황
-> 합리적 의심 = Switch Jamming

스푸핑 Spoofing : 공격자가 마치 자신이 수신자인 것처럼 "위장"
능동적 공격

ARP 스푸핑
특정 host의 MAC 주소를 자신의 MAC 주소로 위조ARP Reply 패킷을 지속적으로 전송ARP table에 host의 MAC 주소가 공격자의 MAC으로 변경공격자가 패킷을 sniffingIP 주소를 물리적인 network 주소로 대응시키기 위해 사용MAC 주소
Example.
A : (ARP request) C'IP 에 대한 C'MAC이 없는데, C'IP 사용하고 있는 사람?
C : (ARP response) It's ME.
같은 LAN, 목적지 단말이 있는 경우
데이터 전송 : A -> B
A 상황
A' ARP request = B' MAC 모르기 때문에 switch' MAC 에 요청
Switch's Broadcast = ARP request를 받으면, 자신에 접속된 모든 단말에게 ARP request를 Broadcast
B' ARP reply = Broadcast를 받은 B는 ARP reply
A' ARP table update = ARP response 전달 받은 후, ARP 테이블에 B' MAC 추가

외부 network, 목적지 단말이 있는 경우
데이터 전송 : A -> B
A' ARP request = dest MAC addr 를 Router' MAC addr로 설정
Router
source MAC addr = Router' MAC addr
dest MAC addr = B' MAC addr


스스로 Router인 것 처럼 MAC 주소를 위조한 ARP Relay 패킷 생성
ARP Reply 패킷을 broadcast
해당 NW의 모든 host로부터 패킷을 sniffing
sniffing한 패킷을 Router에게 forwarding 함으로써 탐지 회피
공격자가 스스로 또다른 Router라고 알린다 (ICMP redirect packet)
victime system의 Routing Table을 변조
packet의 흐름을 바꾼다

sniffing 하는 것을 막을 수 X, But sniffing 후 data를 볼 수 X
암호화 : sniffing에 가장 효과적인 대처 방안
HTTPS = HTTP 웹 표준 프로토콜 + SSL/TLS 암호화 통신 프로토콜
PGP, S/MIME : 이메일 환경
이메일에 암호화 관련 보안성 제공 대표적인 방식SSH : 원격 접속
user_id와 password 유출 가능VPN Virtual Private Network 가상사설망
논리적으로 전용선 이용, 물리적으로 인터넷 이용
공개망을 사용 (Internet) + 전용망을 사용하는 효과
중간에 있는 VPN 장비 = 인증, 암호화 수행 => 전용망 사용 효과
터널링 기술 Tunneling : 두 종단 End to end에 가상적인 터널 생성
VPN 통신 프로토콜 : PPTP/L2F/L2TP, IPSec, SOCKSS V5 등

Q. VPN은 물리적으로 전용선을 이용한다 (X)
Sniffing 공격자를 찾아내자, Sniffing 탐지
존재하지 않는 IP 주소에 대한 요청에 응답이 오는지 확인무차별 모드 호스트는 존재하지 않는 IP 주소에 대한 요청에도 응답
ping과 유사
존재하지 않은 IP 주소 로 ARP 요청
응답 여부로 sniffing 판단
응답 O -> ?? 찾아봐!!!
응답 X -> ?? 찾아봐!!!
존재하지 않는 IP를 대상으로 pingInverse-DNS Loopup이 오는지 확인특정 의심되는 PC + PC에 직접 접속하여 다음과 같은 명령어 실행
의심되는 PC나 서버에서 직접 실제 명령을 실행
리눅스/유닉스
ifconfig -> PROMISC 현재 호스트가 무차별 모드로 설정되어 있음 => sniffing 가능성 매우 크다
윈도우
promiscdetect