Tcpreplay的使用手册

这篇具有很好参考价值的文章主要介绍了Tcpreplay的使用手册。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一. 简介

Tcpreplay是一系列工具的总称,包括tcpreplay、tcprewrite和tcpprep等工具,这也是Tcpreplay的第一个字母大写的原因。它用来在Unix系统或类Unix系统上重放网络包。这些包是由tcpdump、ethereal和wireshark等软件抓取到的,即pcap格式的数据包。
正因为Tcpreplay有重放数据包的功能,所以它常被用来模拟IDS攻击等测试环境,被广泛地用来测试防火墙和IDS工具的安全性。

二. 安装方法

  1. 文件下载
    官方网站下载http://prdownloads.sourceforge.net/tcpreplay/tcpreplay-3.3.2.tar.gz?download
  2. 安装
    解压文件.[Nsos5 work]# tar -xf tcpreplay-3.3.2.tar.gz
    进入文件夹.[Nsos5 work]# cd tcpreplay-3.3.2
    依次键入:./congfigure
    make
    make install
    安装完成后便会多出三个工具,可以依次健入:tcpreplay –V
    tcpprep –V
    tcprewrite -V
    查看相关版本信息.

三. 工具集介绍

1. tcpprep

tcpprep用于将pcap数据包分解为客户端和服务器端。
Tcpprep所支持的模式:
• Auto/Bridge
• Auto/Router
• Auto/Client
• Auto/Server
• IPv4 matching CIDR
• IPv4 matching Regex
• TCP/UDP Port
• MAC address

在auto/bridge模式下,tcpprep根据clinet和server的行为分析数据包.
client行为如下定义:
• 发送一个 TCP Syn 包到另外一台主机
• 发送一个 DNS 请求
• 收到一个 ICMP 端口不可达
Server行为如下定义:
• 发送一个 TCP Syn/Ack 包到另外一台主机
• 发送一个 DNS 应答
• 发关一个 ICMP 端口不可达

例::
tcpprep --auto=bridge --pcap=input.pcap --cachefile=input.cache
如果数据包中有任何一个包无法分类.tcpprep将报错.在分类完后,服务器端到客户端的数据包率将被设置为此数据包的数据率,客户端到服务器端的数据率将会是它的两倍.不然.你也可以用ratio参数修改它.ratio对每一种模式都是有效的。
例如:
tcpprep --auto=bridge --pcap=input.pcap --cachefile=input.cache --ratio=3.5
在auto/router模式下,首先是按auto/bridger模式的方法标记出client和server.对于存在那些未标记的主机.通过分析其与其它主机的数据包,将其划分到相同的子网,并标记为与其子网内其它主机相同的标记。
例:
tcpprep --auto=router --pcap=input.pcap --cachefile=input.cache
在auto/client模式下,其分类标准与auto/birdge相同,只不过对于那些被标记为client的IP.其只对ip 的第一个行为做判断,而不是每一次都做判断。
例:
tcpprep --auto=client --pcap=input.pcap --cachefile=input.cache
auto/server与auto/client相似.不同在于它是对被标记为server的ip做处理.
在Cidr模式下.用户手动给出server所在的网段.而不像在auto模式下由tcpprep来区分。
例::
Tcpprep --cidr=10.0.0.0/8,172.16.0.0/12 --pcap=input.pcap --cachefile=input.cache
在Regex模式下.用户给出能匹配server的正则表达式。
例:
tcpprep --regex=“(10|20)…*” --pcap=input.pcap --cachefile=input.cache
在port模式下,用端口号来区分server 和client.默认情况下,0—1024端口为server端所有.1024以外为client所有.当然.你也可以在自己/etc/services中划分服务器端口.
tcpprep --port --services=/etc/services --pcap=input.pcap --cachefile=input.cache
在mac模式下.由用户指定那些mac为服务端mac。
例:
Tcpprep --mac=00:21:00:55:23:AF,00:45:90:E0:CF:A2 --pcap=input.pcap --cachefile=input.cache

参数include的使用:

在include下.可以指定所要处理的数据包。
Tcpprep --auto=bridge --include=S:10.0.0.0/8,192.168.0.0/16 --pcap=input.pcap --cachefile=input.cache
//只处理源IP在10.0.0.0/8,192.168.0.0/16网段的数据包。
tcpprep --include=D:10.0.0.0/8,192.168.0.0/16 --pcap=input.pcap --cachefile=input.cache
//只处理目的IP在10.0.0.0/8,192.168.0.0/16网段的数据包。
Tcpprep --auto=bridge --include=B:10.0.0.0/8,192.168.0.0/16 --pcap=input.pcap --cachefile=input.cache
//只处理目的IP和源IP都在10.0.0.0/8,192.168.0.0/16网段的数据包。
Tcpprep --auto=bridge --include=E:10.0.0.0/8,192.168.0.0/16 --pcap=input.pcap --cachefile=input.cache
//处理只要源IP或者目的IP在10.0.0.0/8,192.168.0.0/16网段的数据包。
Tcpprep --auto=bridge --include=P:1-5,9,15,72- --pcap=input.pcap --cachefile=input.cache
//处理指定编号1到5,9,15,72到结尾处的这些数据包。
Tcpprep --auto=bridge --include=F:“tcp port 22” --pcap=input.pcap --cachefile=input.cache
//只处理协议为tcp的端口号为22的据包。

参数Exclude的使用:

Exclude和include使用相似,功能相反…只举一例.其它类推。
例如:
Tcpprep --auto=bridge --exclude=S:10.0.0.0/8,192.168.0.0/16 --pcap=input.pcap --cachefile=input.cache
//只处理源IP不在10.0.0.0/8,192.168.0.0/16网段内的数据包.
在使用tcpprep工具时,我们还可以给所得的cache文件加一些注释。
例:
tcpprep --auto=bridge --pcap=input.pcap --cachefile=input.cache --comment=“This is our evil packet pcap”
使用如下命令查看注释.
tcpprep --print-comment=input.cache
查看每个数据包的状态.
tcpprep --print-stats=input.cache
查看每个数据包的数据.
tcpprep --print-info=input.cache
更多详细信息.请查看: http://tcpreplay.synfin.net/trac/wiki/tcpprep

2.tcpreplay

1、重放pcap包,并指定速率和loop次数:
[root@A ~]# tcpreplay -i eth1 -M 10 -l 0 /home/demo/LSDK/LSDK.pcap
以速率10Mbps,0为无限次循环进行重放

指定一个网口.将数据包全部重放到指定网口上.例:
tcpreplay --intf1=eth0 sample.pcap
tcpreplay支持以不同速度发送数据包.可用如下命令:
tcpreplay --topspeed --intf1=eth0 sample.pcap
//以最快的速度发送数据包
tcpreplay --mbps=10.0 --intf1=eth0 sample.pcap
//以10M每秒的速度发送数据包
tcpreplay --multiplier=7.3 --intf1=eth0 sample.pcap
//以原有速度的7.3倍速发送数据包
tcpreplay --multiplier=0.5 --intf1=eth0 sample.pcap
//以原有速度的半速发送数据包
tcpreplay --pps=25 --intf1=eth0 sample.pcap
//以每秒25个包的速度发送数据包
tcpreplay --oneatatime --verbose --intf1=eth0 sample.pcap
//以一次一个包的速度发送数据包(debug时很有用)
Tcpreplay支循环重放数据包.命令如下.
tcpreplay --loop=10 --intf1=eth0 sample.pcap
//得放10次
tcpreplay --loop=0 --intf1=eth0 sample.pcap
//无限循环重放,直到Ctrl+C结束.
Tcpreplay支持在两个网口之间重放数据包.命令:
tcpreplay --cachefile=sample.prep --intf1=eth0 --intf2=eth1 sample.pcap
//cachefile为由tcpprep生成.

更多详细信息.请查看: http://tcpreplay.synfin.net/trac/wiki/tcpreplay

3.tcprewrite

Tcprewrite至少需要两个参数.infile指定需要编辑的pcap文件,outfile,指定输出的pcap文件名.例: tcprewrite --infile=input.pcap --outfile=output.pcap
Tcprewrite支持的输入文件的网络类型:
• Ethernet
• Cisco HDLC
• Linux SLL
• BSD Loopback
• BSD Null
• Raw IP
Tcprewrite支持的输出文件的网络类型:
• Ethernet (enet)
• Cisco HDLC (hdlc)
• User defined Layer 2 (user)
修改目的主机MAC和源主机MAC:
tcprewrite --enet-dmac=00:55:22:AF:C6:37 --enet-smac=00:44:66:FC:29:AF --infile=input.pcap --outfile=output.pcap
修改由tcpprep分析server和client端数据包的源mac目的mac,例:
tcprewrite --enet-dmac=00:44:66:FC:29:AF,00:55:22:AF:C6:37 --enet-smac=00:66:AA:D1:32:C2,00:22:55:AC:DE:AC --cachefile=input.cache --infile=input.pcap --outfile=output.pcap
//第一个目的MAC和源MAC为server端,第二个为client端.
删除和添加802.1q VLAN tag信息:
tcprewrite --enet-vlan=del --infile=input.pcap --outfile=output.pcap//删除
cprewrite --enet-vlan=add --enet-vlan-tag=40 --enet-vlan-cfi=1 --enet-vlan-pri=4 --infile=input.pcap --outfile=output.pcap//添加
修改IP地址:
tcprewrite --endpoints=10.10.1.1:10.10.1.2 --cachefile=input.cache --infile=input.pcap --outfile=output.pcap –skipbroadcast
//将源IP替换为10.0.0.1,将目的IP替换为10.0.0.2, –skipbroadcast忽略广播包.
修改网段IP地址:
tcprewrite --pnat=10.0.0.0/8:172.16.0.0/12,192.168.0.0/16:172.16.0.0/12 --infile=input.pcap --outfile=output.pcap –skipbroadcast
//将10.0.0.0/8网段的IP替换与172.16.0.0/12.将192.168.0.0/16网段的IP替换为172.168.0.0/12.
随机生成源IP:
tcprewrite --seed=423 --infile=input.pcap --outfile=output.pcap
修改端口号:
tcprewrite --portmap=80:8080,22:8022 --infile=input.pcap --outfile=output.pcap
//将端口80修改为8080,将端口22修改为8022.

参考:

http://tcpreplay.synfin.net/trac/wiki/tcprewrite文章来源地址https://www.toymoban.com/news/detail-861405.html

到了这里,关于Tcpreplay的使用手册的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络安全(黑客)学习手册

    网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 一是市场需求量高; 二则是发展相对成熟入门比较容易。 需要掌握的知识点偏多, 外围打点能力 钓鱼远

    2024年02月15日
    浏览(17)
  • 网络工程师 - 面试手册

    网络工程师主要负责企业或组织的网络基础设施建设、维护和优化。他们需要确保网络的稳定运行,以支持组织内部的通信和业务需求。网络工程师通常需要掌握计算机网络原理、网络设备配置和故障排除等方面的知识。 计算机科学或相关专业的学士学位; 熟悉TCP/IP协议、

    2024年02月06日
    浏览(23)
  • Ubuntu 网络配置指导手册

    从Ubuntu 17.10 Artful开始,Netplan取代ifupdown成为默认的配置实用程序,网络管理改成 netplan 方式处理,不在再采用从/etc/network/interfaces 里固定 IP 的配置 ,配置写在 /etc/netplan/01-network-manager-all.yaml 或者类似名称的 yaml 文件里;Ubuntu 18.04发布后,Ubuntu和Debian又移除了以前的ifup/ifdo

    2024年02月16日
    浏览(10)
  • 网络安全(黑客)—自学手册

    网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 一、是市场需求量高; 二、则是发展相对成熟入门比较容易。 需要掌握的知识点偏多(举例): 对于国

    2024年02月04日
    浏览(31)
  • 黑客学习手册(自学网络安全)

    黑客泛指IT技术主攻渗透窃取攻击技术的电脑高手,现阶段黑客所需要掌握的远远不止这些。 其实,网络信息空间安全已经成为海陆空之外的第四大战场,除了国与国之间的博弈,国内企业与企业间也有显著的明争暗斗现象。  网络安全黑客技术是无论国家还是企业都是越来

    2024年02月15日
    浏览(16)
  • 网络安全—0基础入门学习手册

     前言 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。     无论网络、Web、移动、桌面、云等哪个领域,都有攻与防两面性,例如 Web 安全技术,既有

    2024年02月09日
    浏览(12)
  • 网络安全(黑客技术)学习手册

    网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 一、是市场需求量高; 二、则是发展相对成熟入门比较容易。 需要掌握的知识点偏多(举例): 外围打

    2024年02月11日
    浏览(16)
  • 网络安全工程师 - 面试手册

    网络安全和渗透测试工程师负责确保企业网络系统和应用程序的安全性。他们通过模拟黑客攻击来发现和修复潜在的安全漏洞,同时也负责制定和实施网络安全策略。这一岗位需要具备丰富的网络安全知识,以及熟练的渗透测试技能。 评估和修复网络安全漏洞,提高网络系统

    2024年02月02日
    浏览(29)
  • 网络安全——XSStrike中文手册【自学笔记】

    python版本 =3.4 操作系统 Linux (Arch, Debian, Ubnutu), Termux, Windows (7 10), Mac 选项:-u或--url 选项:--data 【一所有资源获取,点击这里一】 1、很多已经买不到的绝版电子书 2、安全大厂内部的培训资料 3、全套工具包 4、100份src源码技术文档 5、网络安全基础入门、Linux、web安全、攻防

    2024年02月07日
    浏览(14)
  • arkime安装配置手册--开源网络回溯系统

    什么是Arkime Arkime(以前叫Moloch)是一个大规模的开源索引数据包捕获和搜索系统。 Arkime增强了您当前的安全基础设施,以标准PCAP格式存储和索引网络流量,提供快速的索引访问。为PCAP浏览、搜索和导出提供了直观简单的web界面。Arkime公开了API,允许直接下载和使用PCAP数据

    2024年02月09日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包