[Linux] tcpreplay를 이용한 네트워크 pcap 패킷 재전송 방법, 패킷 밀어넣기

패킷 재전송이나 변조의 도구에는 tcpreplay, scapy 등이 있습니다. 오늘은 tcpreplay 사용법에 대해서 알아보도록 하겠습니다.

 

패킷 재전송하는 이유

패킷을 전송하는 행위의 목적은

  • 공격 패킷, 다량의 패킷의 트래픽을 발생시키는 테스트
  • 세션이나 비정상 패킷에 대한 테스트

이 외에도 다양한 네트워크 테스트를 위해서 사용이 가능합니다. 보안 프로그램을 다루는 분들이라면 더욱이 많이 사용하시게 될 것이고, 이 방법을 알고 계신다면 아주 유용한 유틸리티가 될 것 입니다.

 

tcpreplay 설치

$ sudo apt-get install tcpreplay

To install tcpreplay on Fedora, simply run:

$ sudo yum install tcpreplay

To install tcpreplay on CentOS or RHEL 5 or earlier, firstset up RPMforge repository on your system. Then, installtcpreplay using yum.

$ sudo yum install tcpreplay

To install tcpreplay on CentOS or RHEL 6 or higher, build tcpreplay from the source, and install it manually as follows.

 

$ sudo yum groupinstall "Development Tools"

$ sudo yum install libpcap-devel

$ wget http://downloads.sourceforge.net/project/tcpreplay/tcpreplay/3.4.4/tcpreplay-3.4.4.tar.gz

$ tar xvfvz tcpreplay-3.4.4.tar.gz

$ cd tcpreplay-3.4.4

$ ./configure --enable-dynamic-link

$ make

$ sudo make install

 

 

방화벽 설정(reset 패킷 drop)

rst 패킷이 날아가지 않도록 방화벽 설정

iptables -A OUTPUT -p tcp --tcp-flags RST RST -j DROP

 

reset 패킷 방화벽 설정

 

pcap 파일 패킷 전송하기

eth0으로 packet.pcap 파일 전송

# tcpreplay -i eth0 packet.pcap

 

eth1으로 test.pcap 파일을 전송, 자세한 내용 출력

# tcpreplay -i eth1 test.pcap -v

패킷 재전송

재전송한 패킷의 간단한 정보와 성공, 실패 패킷 개수가 나타나게됩니다.

 

tcpreplay 옵션

--pps // 초당 몇개의 패킷을 보낼 것인지 --pps=100은 초당 100패킷

--mbps // 초당 얼마의 속도로 보낼 것인지 --mbps=10.0 초당 10mbps 속도

--topspeed / 가장 빠른 속도로 전

--multiplier / 속도 조절 0.5라면 원래 속도의 절반

-h / 사용법 출력 (헬프 메뉴)

--listnics / 사용 가능한 인터페이스 출력

-i / 패킷 전송 인터페이스 설정

-j / 패킷 전송 인터페이스 설정

-v / 전송하는 패킷 정보 출력

-l / 반복 횟수 설정

-p / 패킷 전송 pps 설정

-t / 가능한 빨리 전송 

 

최대 가능한 전송 속도로 전송하기

# tcpreplay --topspeed --intf1=eth0 sample.pcap

# tcpreplay -i eth0 --topspeed test.pcap

 

[IT/리눅스(Linux)] - 리눅스 tc Traffic Control 사용 방법 포트 미러링 방법

 

리눅스 tc Traffic Control 사용 방법 포트 미러링 방법

Traffic Control 줄여서 TC는 네트워크 트래픽을 제어하는 유틸리티 패키지입니다. TC는 네트워크 대역폭 제한, 패킷 필터링, 대기 시간 및 패킷 손실 제어 등 다양한 기능을 수행할 수 있습니다. 오늘

coconuts.tistory.com

[IT/리눅스(Linux)] - 리눅스 서버 부하 및 행 문제 해결방법 8가지

 

리눅스 서버 부하 및 행 문제 해결방법 8가지

리눅스 서버에 성능 이슈로 인해서 가장 먼저 체크 해봐야 할 사항은 어떤 것들이 있을까요? 오늘은 리눅스의 대표적인 성능 체크 툴을 사용하여 리눅스 문제 점을 빠르게 알아보도록 하겠습니

coconuts.tistory.com

 

댓글

Designed by JB FACTORY