Security 一种动态编程修改数据包(以太网、IP、应用程序)的方法

Security 一种动态编程修改数据包(以太网、IP、应用程序)的方法,security,network-protocols,Security,Network Protocols,我需要准备一个能够更改第2/3/4/7层PDU(例如以太网、IP、UDP和HTTP)头字段值的应用程序(用于演示/隐写)。完美的情况是,它可以在一个节点上运行,作为路由器(第3层及以上)或网桥(第2层)。到目前为止,我只找到了像Ettercap(仅限L2)和libnetfilter_队列库(AFAIR只允许我修改IP PDU)这样的软件 我正在寻找一个库/一组库,允许我在Linux/Windows下使用java、C++、C或C++做最简单的方法。如果您能就我应该注意的位置提出任何建议,我将不胜感

我需要准备一个能够更改第2/3/4/7层PDU(例如以太网、IP、UDP和HTTP)头字段值的应用程序(用于演示/隐写)。完美的情况是,它可以在一个节点上运行,作为路由器(第3层及以上)或网桥(第2层)。到目前为止,我只找到了像Ettercap(仅限L2)和libnetfilter_队列库(AFAIR只允许我修改IP PDU)这样的软件


我正在寻找一个库/一组库,允许我在Linux/Windows下使用java、C++、C或C++做最简单的方法。如果您能就我应该注意的位置提出任何建议,我将不胜感激。

如果您在第2层捕获数据包,那么您可以自己完成其余的工作,也就是说,您可以分析数据包是否包含TCP或UDP,如果是TCP,然后是某个上层协议流量。这就是数据包捕获应用程序的工作方式。我怀疑你会找到一个可以使用的库来完成所有的分析工作。最后,我用LIbNETFieldEngQuel修改C++中的IP包,用Qt来构建GUI。在设置包修改时遇到一些初始问题后,它工作得很好。谢谢你的支持!