스니프( Sniff )
Packet sniffing
- 남의 패킷을 가로채는 공격기법들
- ARP Spoofing (ARP를 속여서 가로채는 것)
= ARP Cache Poisoning 공격 기법
- MITM ( Man In The Middle ) 중간자 공격
우리가 쓰고 있던 덤프 프로그램을 스니퍼 프로그램으로 만들어 보겠다.
우선 필요한건
1. 장치명을 매번 입력받는것
2. 원하는 패킷만을 보길 원한다.
-> 소스코드를 수정하면서 확인했었다.
이다.
먼저, 실행인자를 이용해볼 것이다.
예를 들어
(ipconfig /all 옵션)
ipconfig 뒤에 붙는 옵션처럼
원하는 필터링의 옵션을 추가할 것이다.
스니핑 프로그램을 제대로 만들기 위해
먼저 패킷덤프 프로그램을 쓸모있게 만드는게 필요하다.
필요한 인자를 받아서 옵션을 만들것이다.
-> sys, optionparse 모듈이 파이썬에 이미 있다.
우리는 이것을 이용할 것이다.
(파이썬3의 optparse 모듈)
파이썬3의 optparse 모듈
인자를 받는 모듈을 이용해서
옵션을 5개 추가해 보았다.
옵션처리 방식(닉스계열 (유닉스, 리눅스))
#> python sniffer.py -t 192.168.3.88
-p ARP
-s (출발지 IP)
-d (도착지 IP)
#> python sniffer.py --protocol ARP
--target (긴옵션)
* 필터링 룰을 넣어줄 것이다.
option
-s : 출발지 ip 주소
-d : 도착지 ip 주소
-a : 출발지와 도착지 상관없이 필터링
-p : 확인하고자 하는 프로토콜 타입
-m : 동작모드(덤프/스니프)
(옵션 설정 코드)
(옵션이 입력된 것을 확인했다.)
-h 의 도움말 옵션까지 추가해 그럴싸한
프로그램으로 만들생각이다.
(usage를 추가하고 -h 인자를 추가한 코드)
(python test.py -h 를 입력하면 옵션이 나온다.)
우선
ARP 만 출력하는 모습을 보이겠다.
옵션 -p ARP 를 입력하면
ARP 만 나오게 하는 코드이다.
(옵션을 추가해서 조건을 걸은 코드)
(실행화면)
실행화면을 보면
ARP 패킷만 덤프되는 것을 확인 할 수 있었다.
'Hacking > Network Hacking' 카테고리의 다른 글
Network Hacking - ICMP (0) | 2016.12.31 |
---|---|
Network Hacking - 스니퍼 프로그램만들기(2) (포워딩) (0) | 2016.12.30 |
Network Hacking - ARP Cache Poisoning(2) (0) | 2016.12.28 |
Network Hacking - ARP Cache Poisoning (2) | 2016.12.27 |
Network Hacking - ARP (Address Resolution Protocol) (0) | 2016.12.23 |