Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

not work on latest Edge #16

Open
zhengqwe opened this issue Apr 20, 2024 · 21 comments
Open

not work on latest Edge #16

zhengqwe opened this issue Apr 20, 2024 · 21 comments

Comments

@zhengqwe
Copy link

No description provided.

@jonm58
Copy link
Owner

jonm58 commented Apr 20, 2024

?

@jonm58

This comment was marked as off-topic.

@zhengqwe
Copy link
Author

?

是从Chromium 124大版本开始,浏览器发出的client hello很长,被分成了两个包,软件没有正确处理,可以用Wireshark抓包证明

@yfdyh000
Copy link

@macronut 最近在phantomsocks有遇到。zh.wikipedia.org的请求,似乎超过1500字节,导致GetSNI返回0,ttl方法无效。

@zhengqwe
Copy link
Author

zhengqwe commented Apr 21, 2024

@macronut 最近在phantomsocks有遇到。zh.wikipedia.org的请求,似乎超过1500字节,导致GetSNI返回0,ttl方法无效。

所有https请求都会这样,所有用到Chromium 124及以上大版本内核的浏览器都能复现,只能先找个旧版本应付一下了

@yfdyh000
Copy link

@macronut 最近在phantomsocks有遇到。zh.wikipedia.org的请求,似乎超过1500字节,导致GetSNI返回0,ttl方法无效。

所有https请求都会这样,所有用到Chromium 124及以上大版本内核的浏览器都能复现,只能先找个旧版本应付一下了

我不确定情况是否一样。github.com的请求似乎没超1500。最近开始不行的,我以为ttl等方法被检测了。我用Firefox也不行。

@jonm58
Copy link
Owner

jonm58 commented Apr 21, 2024

我在Windows 11 22000用R3fox 125和Supermuim122,我这里没有问题,不知道你们使用什么版本的浏览器和Windows?

@yfdyh000
Copy link

Edge 124.0.2478.67

phantomsocks 中,试着修改如下内容后,维基百科和you.com正常了。
phantomtcp/tcp.go:
fakepaylen := 1280 改为3000
if pface.Hint&HINT_MODE2 != 0 { 的else里

				interval := 1280
				packetCount := math.Ceil(float64(fakepaylen) / float64(interval))
				if packetCount > 1 {
					for i := 0; i < len(fakepayload); i += interval {
						curLen := min(i+interval,len(fakepayload))
						err = ModifyAndSendPacket(synpacket, fakepayload[i:curLen], pface.Hint, pface.TTL, count)
						if err != nil {
							conn.Close()
							return nil, nil, err
						}
						synpacket.TCP.Seq ++
					}
				} else {
					err = ModifyAndSendPacket(synpacket, fakepayload, pface.Hint, pface.TTL, count)
					if err != nil {
						conn.Close()
						return nil, nil, err
					}
				}

@zhengqwe
Copy link
Author

ghostcp也有类似的修改方法吗

@zhengqwe
Copy link
Author

zhengqwe commented Apr 29, 2024

edge地址栏输入edge://flags,将这个选项禁用就好了,这个选项是client hello变长的原因,参考这里这里这里
其他Chromium内核的浏览器也可以在flags里找这个选项

edge://flags/#enable-tls13-kyber

image

@yfdyh000
Copy link

ghostcp也有类似的修改方法吗

yfdyh000@de16def 这样修改似乎有效。

@jonm58
Copy link
Owner

jonm58 commented Apr 29, 2024

@jonm58 jonm58 closed this as completed Apr 29, 2024
@jonm58 jonm58 reopened this Apr 29, 2024
@jonm58 jonm58 closed this as completed Apr 29, 2024
@zhengqwe
Copy link
Author

zhengqwe commented Apr 30, 2024

还是不起作用,还是老老实实改flag吧
image

@jonm58 jonm58 reopened this Apr 30, 2024
@jonm58
Copy link
Owner

jonm58 commented Apr 30, 2024

问题发生了变化
R3dfox 125.0.3
image

@yfdyh000
Copy link

https://nchc.dl.sourceforge.net/ 和 github.com 能直连,测不出什么。you.com、维基百科、workers.dev 等都有效,建立连接有时要多刷新几次。

之前想说的,补丁没严格测试,不确定适合哪些场景,仅供研究参考……

@jonm58 暂时没重现这个。您试试TCP_SYN) != 0的修改改回去是否有变化。

@jonm58
Copy link
Owner

jonm58 commented May 1, 2024

https://nchc.dl.sourceforge.net/ 和 github.com 能直连,测不出什么。you.com、维基百科、workers.dev 等都有效,建立连接有时要多刷新几次。

之前想说的,补丁没严格测试,不确定适合哪些场景,仅供研究参考……

@jonm58 暂时没重现这个。您试试TCP_SYN) != 0的修改改回去是否有变化。

改回去好了
没有,下载https://nchc.dl.sourceforge.net/project/portableapps/Mozilla%20Thunderbird%2C%20P.E./Mozilla%20Thunderbird%2C%20Portable%20Edition%20115.10.1/ThunderbirdPortable_115.10.1_SimpChinese.paf.exe?viasf=1
有问题

现在在default.conf用*.sourceforge.net排除了*.*.sourceforge.net,解决问题

@yfdyh000
Copy link

yfdyh000 commented May 1, 2024

改回去好了 没有,下载https://nchc.dl.sourceforge.net/project/portableapps/Mozilla%20Thunderbird%2C%20P.E./Mozilla%20Thunderbird%2C%20Portable%20Edition%20115.10.1/ThunderbirdPortable_115.10.1_SimpChinese.paf.exe?viasf=1 有问题

没能重现SSL错误,ipv4 v6,Edge Firefox都试了。

TCP_SYN bit的修改,研究不够深,可能有bug吧,但我的电脑上不改用不了。

现在在default.conf用*.sourceforge.net排除了*.*.sourceforge.net,解决问题

没听懂怎么排除的。
method有开ttl以外的吗,可能影响。

@jonm58
Copy link
Owner

jonm58 commented May 1, 2024

w-md5的问题

@jonm58
Copy link
Owner

jonm58 commented May 1, 2024

现在在default.conf用*.sourceforge.net排除了*.*.sourceforge.net,解决问题

没听懂怎么排除的。 method有开ttl以外的吗,可能影响。

*.sourceforge.net->xxx.sourceforge.net
.sourceforge.net->xxx.sourceforge.net 和 xxx.xxx.sourceforge.net (这里为"subdomain=2"的例子)

@jonm58
Copy link
Owner

jonm58 commented May 4, 2024

Pale Moon有一些小bug,不影响使用(?)
image

@jonm58 jonm58 closed this as completed Jun 12, 2024
@jonm58 jonm58 reopened this Jul 31, 2024
@jonm58
Copy link
Owner

jonm58 commented Jul 31, 2024

#22

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants