mirror of
https://github.com/e1732a364fed/v2ray_simple.git
synced 2025-12-24 13:27:56 +08:00
修订文档,代码;减少发布包编译的数量;修复“包头”变成“握手包”的漏洞
根据vless/trojan的协议标准,首包必须要包头和payload一起发送,而之前的vs架构分开发送了,这会导致可探测。已在本commit修复。 使用 captive.apple.com 和 http://www.msftconnecttest.com/connecttest.txt 作为测试url,而不用baidu和qq。这样在非中国国家进行测试 也可以正常了。
This commit is contained in:
@@ -212,3 +212,19 @@ verysimple的架构是分层结构,不限定到底传输什么协议的底层
|
||||
|
||||
也许网络层的代理传输命令,可以加到 vless v1里,加一个CmdIP 即可
|
||||
|
||||
## 握手包长度混淆
|
||||
|
||||
v1 应该加一个 握手包长度混淆 功能
|
||||
|
||||
因为虽然是在tls内部,tls record的长度还是能够暴露一些信息。如果每次tls握手的首个tls record的长度都不一样,那么能好一些。
|
||||
|
||||
目前认为, 不要太过随机,比如一个小时内 每个 tls握手的首个tls record 长度都不一样,这个又会导致熵太大。
|
||||
|
||||
目前认为,每一次启动 程序,都会随机选择一个 混淆填充长度,然后固定填充这个长度。这样短时间内首个tls record长度相同,又不会让审查着 获取到任何 与协议有关的 tls record 首包长度特征。
|
||||
|
||||
tls record 最大长度是16k,再长就要分片,而 一般http请求读到的 文件很有可能超过16k,一个html文件长达几百K是很正常的。
|
||||
|
||||
但是一个http响应不仅是返回文件内容,而还有http响应头。一般一个响应头不长,也就 几十 至 几百字节。
|
||||
|
||||
只要我们先伪装http响应头来完美模拟tls record首包,再做混淆填充 vless v1的握手包,就可以达到规避 流量 特征的目的
|
||||
|
||||
|
||||
Reference in New Issue
Block a user