Python 캡처 (펌)

개발 2022. 1. 17. 10:17

https://taesun1114.tistory.com/entry/Python-%ED%8C%A8%ED%82%B7-%EC%BA%A1%EC%B3%90with-pypcap

 

Python 패킷 캡쳐(with. pypcap)

python 내 패킷 캡쳐를 위한 라이브러리로 pypcap을 통해 손쉽게 캡쳐 및 가공이 가능합니다. 다만 pypcap에 대한 자료가 많지않아서 원하는 함수나 기능을 사용하기엔 제약이 있습니다 :/ pypcap installa

taesun1114.tistory.com

 

python 내 패킷 캡쳐를 위한 라이브러리로 pypcap을 통해 손쉽게 캡쳐 및 가공이 가능합니다.

다만 pypcap에 대한 자료가 많지않아서 원하는 함수나 기능을 사용하기엔 제약이 있습니다 :/

 

pypcap installation

pip install pypcap

 

※ libpcap-dev 의존성을 가지고 있으므로 pypcap 설치전에 libpcap-dev가 설치되어 있어야  함

apt-get install libpcap-dev

 

pypcap 설치 후 python 실행 > import pcap 을 통해 에러가 발생하지 않는다면 정상적으로 설치가 된 것입니다.

 

Example Code 

import pcap
import re
import dpkt
import socket

sniffer = pcap.pcap(name=None,promisc=True,immediate=True,timeout_ms=50) # name=eth, None 일경우 모든 default / promisc는 모든 eth에서 패킷 수집 
sniffer.setfilter('tcp and port 80') # set packet filter

for t, p in sniffer:
    eth = dpkt.ethernet.Ethernet(p)
    ip = eth.data
    tcp = ip.data
    try:
        if len(tcp.data) > 0:
            req = dpkt.http.Request(tcp.data)	#Request패킷만 추출
            print("----------------------------------------------------------------")
            print(req)	# 패킷 출력
            print("----------------------------------------------------------------")
    except:
        pass

 

 

'개발' 카테고리의 다른 글

Python requests 버프 캡처  (0) 2022.01.17
python 캡처2 (펌)  (0) 2022.01.17
Python logging 사용하기(펌)  (0) 2022.01.02
mysql 외부 접속 및 허용 제거 (경로 참고)  (0) 2021.11.22
php mysql 명령어  (0) 2021.11.22
블로그 이미지

wtdsoul

,