지난 시간때 scapy를 이용하여 간단한 스니퍼를 구현해보았다.
이번 시간에는 scapy에서 제공하는 sniff()함수를 이용하여 패킷 스니퍼를 구현해보자.
소스코드.
※ 부가 설명.
sniff()가 캡처한 패킷을 MAC 주소 계층인 데이터링크 계층부터 TCP/DUP 계층까지 보여준다.
1. packet : sniff()가 캡처한 패킷임 prn 인자로 지정된 함수의 인자로 전달함.
2. packet[0][0] : MAC 주소 계층임.
3. packet[0][1]: IP 계층임. packet[IP]로도 접근 가능함.
4. packet[0][2]: TCP, UDP, ICMP 계층임. 각각 packet[TCP], packet[UDP], packet[ICMP]로 접근이 가능함.
IP 계층의 src,dst의 값을 얻고자 한다면 위와 같이 접근하면 된다.
처음 부분이 version이고 마지막 부분이 src,dst이다.
실행 결과.
scapy에서 제공하는 sniff()를 이용하면 보다 강력한 패킷 스니퍼를 구현 할 수 있다.
'Python' 카테고리의 다른 글
Python으로 AES 구현하기 (4) | 2020.02.21 |
---|---|
python을 이용한 암호문 단독 공격 구현하기. (1) | 2020.02.06 |
scapy를 이용한 간단한 스니퍼 구현하기. (0) | 2020.02.06 |
Python을 이용한 파일 암/복호화 하기. (0) | 2020.01.16 |
르그랑 코드북 이용한 - 메시지 암호화 하기. (0) | 2020.01.16 |
댓글