본문 바로가기

디지털포렌식(Digital forensic)/암호스토리

[파일] Scapy를 이용한 패킷 캡쳐

반응형

 

파이썬 라이브러리들 중에서 패킷을 캡쳐할 수 있는 라이브러리가 있다.

 

스카피(Scapy)

 

Scapy는 원래 Network용 packet을 위조하거나 디코딩하는 '패킷 조작'툴이다.

여러 종류의 protocol을 지원하며 packet에서 필요한 field를 수정할 수도 있고,

상세 정보를 쉽게 분석할 수도 있다.

 

스카피를 사용하기 위해서는 다음과 같이 pip install scapy를 실행하고

 

Windows에서 Scapy는 WinPcap 또는 Npcap을 사용하여 네트워크 패킷을 캡처하는데
다음의 WinPcap 웹에서 install for Windows를 통해 추가 설치를 해줘야 동작한다.

 

설치 후 실행하면 다음과 같이 패킷을 볼 수 있다.

 

 

첨부 파일은 위 cmd창에서 실행한 scapymaker.py 파일이며 아래의 코드와 동일하다.

scapymaker.py
0.00MB

 

from scapy.all import sniff

def packet_callback(packet):
    # Print a summary of the packet
    print(packet.summary())

# Sniff 10 packets and call the packet_callback function for each packet
# You can adjust the `count` parameter based on your needs
sniff(prn=packet_callback, count=10)

 

sniff는 스니핑에 사용되는 scapy 함수다.

count = 10으로 했기 때문에 10개만 capture한다.

일부 시스템에서는 접근 권한(관리자 권한)이 필요할 수 있다.

 

 

 


 

이 숫자를 더 크게 할수록
sniff되는 패킷의 수를 늘릴 수 있다.

728x90