自行设计协议相关 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cnnblike
V2EX    问与答

自行设计协议相关

  •  1
     
      cnnblike 2015-08-23 15:06:04 +08:00 via Android 5912 次点击
    这是一个创建于 3706 天前的主题,其中的信息可能已经有所发展或是发生改变。

    大家好,我是一个身居中国的爱国青年,明年应该就出去了。一想到到了美帝就要遭受到棱镜计划的窃听,一想到没法愉快的下载资源,我就深感不安,决定设计一个私有协议或者协议框架来应对可能遭受的窃听,阻断, tcp reset , dns poisoning 和 bit torrent honeypot 。
    问题来了,从被广泛使用的已经倒下的第一代 goa 设计和连名字都不能提起的刚刚倒下的第二代设计中,有哪些是值得吸收的思想?
    无状态连接?
    libev 加快运行效率?
    有没有必要设计得和 https 流量一样,然后配合端口复用让一部分包走加密一部分包访问网站上的内容,最后配合一个内容丰但富全站加密的博客,起到混淆 https 真实目的的作用?
    我把这个协议放在哪层比较好呢?类似某个已经被封杀在握手阶段的威匹恩那样搞个虚拟网卡?还是建立在第几层?

    42 条回复    2015-09-11 21:35:37 +08:00
    breeswish
        1
    breeswish  
       2015-08-23 15:15:44 +08:00   1
    使用正确的加密算法的话可以应对窃听, NSA 除外…
    pi1ot
        2
    pi1ot  
       2015-08-23 15:20:49 +08:00
    只是混淆干扰的话,保持传播和使用范围的最小化就没事了。
    cnnblike
        3
    cnnblike  
    OP
       2015-08-23 15:45:42 +08:00 via Android
    @pi1ot 或者用一整个系列的可自行选择和定制化的部分用来搭建协议?

    这样四五个公钥加密协议,几个不同层级的传输协议,配合少量胶水代码,就可以每个人自己弄一个框架出来了,比方说 rsa over udp , aes over socks ?比 ss 稍微有一点优势的方面就是人人都能维护一个完全自己定制的协议,每个协议都可以避免被封杀
    pi1ot
        4
    pi1ot  
       2015-08-23 15:48:01 +08:00
    @cnnblike 你要愿意的话直接拿 ss 代码改一下就是个新的私有协议,但是最大的成本在于有那么多系统和终端要去配合修改,我这里就在 osx , windows , android , ios 上同时使用着,都改一遍真就全栈了
    cnnblike
        5
    cnnblike  
    OP
       2015-08-23 15:49:57 +08:00 via Android
    @pi1ot 我再想想
    ljbha007
        6
    ljbha007  
       2015-08-23 17:05:33 +08:00
    ss 你定期换个密码就已经很难嗅探了 其他没必要搞了
    49
        7
    49  
       2015-08-23 17:06:24 +08:00 via Android   1
    不要惊慌…有这么多成熟的方案的嘛
    obfsproxy+ss 之类的不是神搭配嘛,弥补了 SS 无特征于现阶段之不足
    xmoon
        8
    xmoon  
       2015-08-23 17:17:15 +08:00
    可怜 shadowvpn
    cnnblike
        9
    cnnblike  
    OP
       2015-08-23 17:47:13 +08:00
    @49 我还是再去读读方校长的论文吧= =
    aku
        10
    aku  
       2015-08-23 17:47:34 +08:00 via Android
    美帝国主义必将灭亡
    最近频频展示军力,蠢蠢欲动
    这是自掘坟墓

    个人不觉得不可名之二代有什么问题
    曾经怕的是,对单个 IP 的大流量切断
    结果更狠

    问一个问题,传闻二代已被破裂,有来源吗?
    cnnblike
        11
    cnnblike  
    OP
       2015-08-23 18:41:18 +08:00 via Android
    @aku 早晚。所以我现在的设想是在 443 端口上做复用,然后用正常浏览器访问就是正常的页面,代理程序去连接就是一个 https 代理。这样只要让自己挂的网页看上去无害,而且对墙内人很有用,那么基本就可以长期稳定使用了
    dacapoday
        12
    dacapoday  
       2015-08-23 18:55:24 +08:00
    @cnnblike 这个我在 openshift 上尝试过,前置 http 正常网站,访问某个 URL ,转到 OP 的 https 连接,该 URL 为 php 代理页面。
    49
        13
    49  
       2015-08-23 19:07:29 +08:00
    @cnnblike 关于你这个 443 端口复用, HTTPS Proxy 、 SSH 、 HTTP 集中在 443 的方案我在半年前弃坑-_-#
    因为 Chrome 的一个 bug ,会导致 https proxy 在看 y2b 随机断流。不知道现在修复没有。
    dacapoday
        14
    dacapoday  
       2015-08-23 19:29:32 +08:00
    @49 同遇到 auto range 的问题,还有网盘下载 filesystem 断线无解
    cnnblike
        15
    cnnblike  
    OP
       2015-08-23 19:35:54 +08:00 via Android
    @49 现在应该已经修复了,试试 nghttpx squid http2 那一套
    49
        16
    49  
       2015-08-23 20:24:07 +08:00
    @cnnblike 我当初就是用的那一套,然后弃坑。通过定时平滑重启 nghttpx 可以大幅降低那种问题的出现概率。但是我还是弃坑了。线路是王道。
    jimages
        17
    jimages  
       2015-08-23 22:11:10 +08:00 via iPhone
    I have a question.四川电信,美帝之 2ptp 以及日本之 open 胃癖恩 都可以正常连接。没有看出来哪里被 ban 了...虽然速度慢。
    cnnblike
        18
    cnnblike  
    OP
       2015-08-23 22:46:31 +08:00
    @jimages 握手阶段特征检测,封杀速度很快,握手完你的 VPS 就进黑名单了。
    你没有进 banlist 就偷着乐把= =我在新加坡 DO ,日本 Vultr 上都被封过
    jimages
        19
    jimages  
       2015-08-23 23:01:54 +08:00 via iPhone
    @cnnblike 日本有一个月了。美帝一年了。怎么感觉捡到宝贝了。
    datocp
        20
    datocp  
       2015-08-23 23:11:54 +08:00
    do,vultr 是特例吧,上次就有一帖讨论,跟搬瓦工这种廉价 vps 简直两重世界,年初的时候 l2tp 经常的几分钟一断,断断连连,却从来没遇到进黑名单的待遇,只有基于 ddns 的域名被污染的情况发生。

    现在明明白白的用着 stunnel ,一个在地球上已经存在 15 年的软件,有 psk pki 认证方法适合证书加密在各种 ipv6 tunnel 穿越,以墙现在那种对单 ip 的 tcp reset 过程,对于多 ip 的服务器简直是弱爆了。
    bandaonanhai
        21
    bandaonanhai  
       2015-08-23 23:36:36 +08:00
    想想以前看 cctv 访谈航天基地,航天基地的工作人员说基地保密措施时有一个挺夸张的例子,两台电脑主机不能靠太近,否则,不需要任何连线,一台主机可以直接隔空无线 copy 另一台主机上的所有信息。要知道航天基地台式机没任何无线发射模块哦,别提 wifi 了。
    Lanceliel
        22
    Lanceliel  
       2015-08-23 23:40:39 +08:00
    @bandaonanhai 不夸张。这技术不新。
    msg7086
        23
    msg7086  
       2015-08-24 00:31:52 +08:00
    槽点,下载资源和 nsa 有毛关系。
    rainy3636
        24
    rainy3636  
       2015-08-24 00:38:11 +08:00
    @msg7086 只是楼主标点符号用得不好,容易歧义
    cnnblike
        25
    cnnblike  
    OP
       2015-08-24 00:45:08 +08:00
    @msg7086 "NSA",我要是直接写 GFW ,你觉得是被直接删帖?还是被马上删帖?
    NeoAtlantis
        26
    NeoAtlantis  
       2015-08-24 00:45:27 +08:00 via Android
    在美帝就用 tor 就好了
    rainy3636
        27
    rainy3636  
       2015-08-24 00:47:32 +08:00   1
    @cnnblike 大概是立即删贴
    ljbha007
        28
    ljbha007  
       2015-08-24 01:51:05 +08:00 via Android
    @Lanceliel 怎么实现的
        29
    jedihy  
       2015-08-24 08:25:47 +08:00 via iPhone
    你只要挂代理,随便选个加密就行了。版权商没有闲工夫给你玩解密的。对于你的个人生活等其他隐私, nobody give a shit.
    plqws
        30
    plqws  
       2015-08-24 08:58:03 +08:00
    现在在 V2 讨论这些可能会被挪进 Chamber 哦,原因是「根据相关法律法规和政策」
    invite
        31
    invite  
       2015-08-24 13:34:43 +08:00
    你这个协议,必然得在 IP 之上,在传输层协议之下。否则怎么兼容其他应用?
    invite
        32
    invite  
       2015-08-24 13:37:55 +08:00
    @Lanceliel 这叫什么技术?求科普。
    JamesRuan
        33
    JamesRuan  
       2015-08-24 22:34:00 +08:00
    没有私有网络,怎么加密、混淆都没有意义,你做的没有特征了,这个没有特征本身就是特征。你做的特征类似其他应用了,那这个应用也就“变成”其他应用了。

    如果 NSA 要探测你的内容,加密混淆也就换取点时间,最后还是社会工程学解决问题;如果 NSA 不想探知你的内容(更可能如此,因为节约算力),那分分钟被封锁。
    Lanceliel
        34
    Lanceliel  
       2015-08-24 22:37:00 +08:00
    @ljbha007
    @invite

    旁路攻击的方式有很多种。
    首先,如果能通过某种方式(软件后门 /人员接触 etc.)先让目标计算机感染病毒程序,那么接下来可以通过控制 LED 状态灯闪烁 /内置扬声器播放超声 /次声波由附近的计算机接收解码。或者更隐蔽的还有控制 CPU/GPU 达到特定温度然后红外成像读取之类。按照现在的技术水平,另一台主机已经不是必需品了。利用视频线传输的像素时钟调制 FM 信号或者利用内存总线调制 GSM 信号的话只要附近有个手机就能接收解码。
    如果不能事先感染目标计算机,办法也是有的。但可能比较难接触到之前已经存储的信息。比如通过键盘的电磁辐射泄漏(有线键盘或笔记本键盘也都有)可以记录所有键盘输入,监听电容电感泄漏的高频震动噪声可以记录 CPU 运算内容(搞定过 GPG 的 RSA 加密,当然现在的 GPG 版本已经增加了应对措施)。
    invite
        35
    invite  
       2015-08-25 19:23:18 +08:00
    @Lanceliel 理论上可行,但是就像你说的,如果不能事先感染目标机器,这个如果的概率非常大。在没有感染目标机器的情况下,通过监测电磁辐射泄露这些,这个前提,也应该是有一个受感染的终端可以在里面监测这些辐射吧。不过安全等级那么高的地方,进入里面办公的,手机啥的肯定是带不进去的。也就是,进去的只有人和衣服、裤子、鞋子、袜子这些。感觉真正应用起来,还是不太实际。
    fudingyu
        36
    fudingyu  
       2015-08-27 17:13:03 +08:00
    @49 有没有搭建 obfsproxy 的例子嘛?
    402645707
        37
    402645707  
       2015-09-01 21:26:11 +08:00
    @Lanceliel 果然广场舞和蹭网卡以及大量不做屏蔽措施的信号塔是中国应对每个黑科技的官方阴谋
    Lanceliel
        38
    Lanceliel  
       2015-09-02 17:08:25 +08:00
    @invite 这里面有些监听方式是可以隔墙进行的……所以理论上来说从电子设备的间距进行控制是正确的做法。你想搞的话也不需要带进去手机,只要在附近藏个线圈当天线接收信号,把数据写到 SD 卡之类的介质里,过段时间“收割”一次把数据带出来分析就够了。这还是用随手就能买到的设备可以搞定的配置。真有心想折腾的可以有更隐蔽的信号接收记录装置……
    invite
        39
    invite  
       2015-09-02 18:36:42 +08:00
    @Lanceliel 这个附近是得多近? 是那么好近的? 而且你说的隔墙, 你觉得那种地方是一般的砖头墙么? 最起码是电磁屏蔽的吧.
    Lanceliel
        40
    Lanceliel  
       2015-09-10 00:38:12 +08:00
    @invite 电磁屏蔽干不掉高频震动的噪声泄漏。有抛物面传声器的话可以 4 米外接收。
    invite
        41
    invite  
       2015-09-10 12:37:21 +08:00
    @Lanceliel 那么高级,那就加上噪音好了,搞几台放假数据的电脑。混合进去。
    Lanceliel
        42
    Lanceliel  
       2015-09-11 21:35:37 +08:00
    @invite 每台电脑的噪声不一样,能区分,但是播放类似本机特征的噪声是有用的,另外在电磁屏蔽的同时增加隔音设施应该也有用。知道原理的话反制起来不难,旁路攻击的关键在于很多人想不到是哪种途径。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1077 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 23:09 PVG 07:09 LAX 16:09 JFK 19:09
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86