arch7819
火狐狸
火狐狸
  • UID30890
  • 注册日期2009-10-29
  • 最后登录2011-02-19
  • 发帖数153
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
阅读:12162回复:16

[原创]翻墙firefox : gappproxy https 免去证书对话框.

楼主#
更多 发布于:2010-09-24 17:38
话说我在隔壁发了个技术贴可惜应者寥寥..... 这里发一个看看...

看最近 GAppProxy 更新了, 顺手给它打个补丁.

你需要以下工具:
python2.6+ 必须, 最好是2.7 (http://www.python.org/)
openssl 0.9.8+ (http://www.openssl.org/)
GAppProxy src (http://code.google.com/p/gappproxy/)
注意由于我是修改了GAppProxy的源码而实现的,
所以要享受此功能必须要有Python(也就是exe版暂时享受不到了)

声明及严重警告:
本文出于技术学习与交流目的发布.
其实现具有严重的安全风险, 请不明相关原理者谨慎使用.
由此产生的损失, 请自行承担, 本人概不负责.

正文:
由于天朝GFW的存在, 现在上个外国网站时不时就是无响应, 连接重置之类, 所以翻墙软件是必备工具.
公认最强的翻墙利器是TOR, 安全性最强, 抗干扰强, 抗攻击能力极强, 但是速度慢.
国内流行的GAppProxy, 使用Google的GAE平台提供自建服务器.
速度快,安全性无, 抗攻击弱, 抗干扰为零(UA都变了还谈啥干扰),正好与TOR互补.

用GAppProxy就是要它的速度, 安全性是其次, 所以每次添加证书很让人不胜其烦.
(提醒:一个正常的浏览器必须要这样步骤, 这是严重的安全风险, 必须得到用户的确认)
本方法通过自建CA对GAppProxy的HTTPS内容进行认证, 从而达到欺骗浏览器而免去证书提示的目的.

实现步骤:
1.建立GAppProxy的运行环境(略).

2.下载openssl,将openssl加入PATH, 并为系统添加环境变量 OPENSSL_CONF = .\openssl.conf
win下, openssl官方只有源码可下, *nux应该有自带的.
附件的openssl.rar 是我编译的openssl1.0.0a debug-VC-WIN32, 配置文件是 cygwin 的.
PS: 最好是将 openssl.exe openssl.conf 放到 system32 目录, 自己上网下的记得下配置文件.

3.下载附件patch.rar 并解压到 localproxy 目录 (proxy2.py 应该和 proxy.py 在同一个目录)
导入 ssl2 目录的 _ca.cert 到 "证书机构" (工具-选项-高级-加密-查看证书-证书机构-导入)
执行 proxy2.py 启动 GAppProxy (exe版GUI里的那些设置在proxy.conf里)

另: 为了提示安全风险, 已修改proxy2.py 使用低加密方式建立连接以提醒浏览器(需要Python2.7),
firefox 的about:config 中需要设置 security.ssl3.rsa_des_sha 为 true
并应用以下CSS: #urlbar[level="low"]{background:rgba(255,192,192,0.<!-- s8) --><img src="{SMILIES_PATH}/icon_cool.gif" alt="8)" title="Cool" /><!-- s8) -->!important;}
如果是Python2.6.x , 须到 proxy2.py 中 删除{, ciphers="LOW" }(无花括号)

又: 默认已经禁止了mail.google.com经过GAppProxy, 以免全局启用的时候去访问gmail.

再次提醒:
GAppProxy 实现HTTPS 和TOR 之流不同, 其本质上是MITM攻击, HTTPS相当于HTTP, 没有任何的安全性.
所以千万不要在网银, 邮件之类高安全需求的HTTPS站点开启GAppProxy.
 
由于本压缩包的内容任何人皆可获得,
为了防止不良网站使用其中的SSL证书实行欺骗,
强烈建议自己再生成一份替换掉原有的证书文件(_server.key,_ca.key,_ca.cert).
(执行generateCerts.bat, 或者懂得用openssl 的话自己生成)
用生成的文件替换 ssl2 目录下的同名文件.
同时删除 ssl2 目录下所有不是以 _ 开头的 .cert 文件.

卸载:
从"证书机构中" 删除 fakeCA 项目.

最后再声明:
本方式有严重的安全风险, 如果不明原理请谨慎使用.
它将导致任何经过GAppProxy 的HTTPS站点在网络上传输的内容却是HTTP, 却在表面上看不出异常.

话说: 怎么上传附件?! 点新增毫无反应.
附件名称/大小 下载次数 最后更新
patch-1.0.100923.0-gappproxy2.0.0.zip (12KB)  83 2010-09-24 18:02
arch7819
火狐狸
火狐狸
  • UID30890
  • 注册日期2009-10-29
  • 最后登录2011-02-19
  • 发帖数153
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
1楼#
发布于:2010-09-24 17:38
上传不了openssl. 不管了

话说一开始有GAppProxy的时候我就给它打了补丁, 然后用得很舒服, 以至于都不知道有更好的东西出现.....

这次svn上发现新版本于是顺手打的补丁
arch7819
火狐狸
火狐狸
  • UID30890
  • 注册日期2009-10-29
  • 最后登录2011-02-19
  • 发帖数153
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
2楼#
发布于:2010-09-24 17:38
貌似是 *uix 下的...

话说我又把 wallproxy 给 patch 了
现在在加载 12000 条规则测试 , 目前感觉良好.

每个url 测试耗时 7ms, 规则15000条, 2000条正则规则, 执行得比abp 还快....
性能太好, 本来想再加一层 cache 的看起来都不用了.
arch7819
火狐狸
火狐狸
  • UID30890
  • 注册日期2009-10-29
  • 最后登录2011-02-19
  • 发帖数153
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
3楼#
发布于:2010-09-24 17:38
我 patch 了 autoproxy 的性能

svn 上的版本我提交了, checkout 就是了 ...

优化普通规则应该没什么问题,
程序对正则规则也能优化,
但是别写得太复杂,
太复杂的我自己都没测试( 比如嵌套的获取, 反向引用)
游客

返回顶部