当前位置: 首页 > 知识库问答 >
问题:

如何在TCP会话中实现源代码伪造?

万俟沛
2023-03-14

这个想法是两台不同的机器(在两个不同的NATs后面)连接到公共服务器。

他们试图与这样的公共服务器建立TCP连接...那么神奇的事情就可能发生在数据流的处理过程中!在此会话期间更改整个TCP/IP堆栈上的源和dest地址。

目标--将第三部分作为代理排除在进一步的交流之外...

共有1个答案

晁璞
2023-03-14

首先,您需要一个服务器,对等方将向其发送数据或其他东西,以便让其知道服务器需要向其发送syn-ack。

然后,首先对等方A发送一个TTL值低的包到对等方B的地址,这样它在中间被丢弃,不到达B的NAT。它将继续发送此数据包,直到服务器收到一个带有syn-ack的数据包,该数据包包含B的源地址(源伪造)。A会与服务器握手,但A会认为他在与B握手。

完全相同的事情发生在B。B将与服务器握手,但会认为这是与A完成的。在双方握手完成后,A和B之间的数据传输开始作为P2P连接。

 类似资料:
  • “会话”接口有两个方法,在Scala中,由于类型擦除,它们被简化为具有相同的签名: 试图实现它们会产生错误: 错误:双重定义:第199行的方法createstoredprocedurecall:(procedureName: String,resultset mappings:string *)org . hibernate . procedure . procedure call和方法creat

  • EasySwoole支持自定义tcp长链接。 设置监听 在Event.php的beforeWorkerStart事件监听链接。 $listener = $server->addlistener("0.0.0.0",9502,SWOOLE_TCP); //混合监听tcp时 要重新设置包解析规则 才不会被HTTP覆盖,且端口不能与HTTP SERVER一致 HTTP本身就是T

  • 问题内容: 我正在尝试使用after伪元素向网站添加一些效果。 和样式表: 我看到正在应用.product-show .readMore.less的样式,但是当我从Chrome(最新版本)/ MacOS检查站点时,在HTML块中看不到::after表示法。我读到一些较旧的浏览器有时会出现问题,但是我认为,如果我正确定义样式,我应该至少可以看到:: after伪元素表示法。我究竟做错了什么? 问题答

  • 我已经思考了很长时间关于“隐藏在Java中的实现”。嗯,我知道这是不可能的(至少在理论上),但是有一些库(例如ZIP文件)需要隐藏一些代码(因为如果任何人都能看到代码,他们将能够在不知道密码的情况下打开fe。zip文件)。 我知道有一种方法可以创建web服务,但使用某些库的应用程序可能是离线应用程序,因此web服务不可能对所有内容都适用。 你能帮我把它弄明白吗?

  • 如何在maven pom中做到这一点.xml当我在单个模块中运行mvn干净安装时? 编译主源代码 调用源代码中的主类,该源代码被编译以生成另一个源代码 组1和2并再次执行编译 在打包阶段,原始源代码和生成的源代码应该在jar中

  • 本文向大家介绍Python实现TCP通信的示例代码,包括了Python实现TCP通信的示例代码的使用技巧和注意事项,需要的朋友参考一下 使用socket实现tcp通信,需导入socket模块 1、服务端 主要步骤: (1)创建socket:socket.socket(family=AF_INET, type=SOCK_STREAM, proto=0, fileno=None) family:AF_