Skip to main content

标 题: Re: 技术探讨下我鳖彻底封死VPN/SS的可行性

发信人: fantasist (fan), 信区: PDA
标  题: Re: 技术探讨下我鳖彻底封死VPN/SS的可行性
发信站: BBS 未名空间站 (Tue Jan 24 23:12:45 2017, 美东)

GFW封锁手段可不止这一种。RST一般在出现于浏览明文http网页时检测关键字的审查方
式。
更高级的手段是https证书过滤,比如用在wikipedia上,只开放http访问,这样知道屁
民在看什么页面,如果发现看的是64事件,直接RST。
还有人为制造连接不稳定,让用户主动放弃转而使用国内的服务。这招当年在google上
用过,就是15分钟能正常访问,15分钟连不上。我估计效果不好,现在应该不用了吧。
最高级的手段是深度包检测,连machine learning都用上了。已知VPN协议L2TP PPTP之
类的都逃不过,未知VPN协议认不出来也没关系,反正过段时间就把连接一掐。

SSH使用难度比较大,所以很少有被封的情况,但使用密码登陆有被中间人攻击的可能
。比如你在美国的路由上架了sshd daemon,回国后直接SSH美国的IP,再输用户名密码
登陆。由于正常情况下两边没有预先共享的公钥,GFW发现你在试图SSH时可以伪装成一
个服务器,把它自己的公钥发给你,你的用户名密码如果用它的公钥加密,就直接暴露
了。所以自己架SSH服务器一定要只允许用ssh key登陆,并预先存好对方的公钥,达到
完美的安全性。

当然啦,以后土共可以强迫跨境连接把私钥交给它,实行白名单实时审查制,那民间就
不太可能有翻墙的能力了。
【 在 cxu123 (NY) 的大作中提到: 】
: 可以在两端用防火墙把gfw伪造的RST包丢弃了,不知道有人试过没有。


发信人: xczheng (Colin), 信区: PDA
标  题: Re: 技术探讨下我鳖彻底封死VPN/SS的可行性
发信站: BBS 未名空间站 (Wed Jan 25 03:31:01 2017, 美东)

这个就像猫捉老鼠的游戏,看谁的手段高。目前来说,这几种不被发现的可能性较大:
1. openvpn + stunnel. DPI 看不出是openvpn协议, 在tcp上就是加密的bytes
2. openvpn + Obfuscation. 让openVPN加马赛克,服务器和终端都要改。
3. ss(shadowsocks). 就是sock5 + AES encryption for payload, 这个目前不错。这
个不是vpn协议,而是proxy协议,所以系统的全局proxy设置要改。

GFW除了DPI以外,还有模式识别, 比如openvpn+stunnel完成一次TLS handshake以后
,到真正destination,  比如https://www.facebook.com, 还有一次TLS handshake,
通过看TCP包的大小和次序,一般可以估计的到是vpn的traffic. GFW和alphaGo一样,
在不断的学习中(machine learning), 有漏洞有时会自动补上。
所以最终看是看谁的技术牛了。



Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...