ISP 可以用哪些手段检测到用户在使用路由器共享网络?用户可以规避吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
acess
V2EX    问与答

ISP 可以用哪些手段检测到用户在使用路由器共享网络?用户可以规避吗?

  •  1
     
  •   acess 2015-02-10 17:31:44 +08:00 11852 次点击
    这是一个创建于 3896 天前的主题,其中的信息可能已经有所发展或是发生改变。
    背景:LZ大学生一枚,使用南京电信校园宽带
    尝试过这个,但是碰到TCP连接重置,甚至短时间封号等问题,暂时没有看到过警告网页:
    http://tieba.baidu.com/p/3300824382?pn=1
    怀疑电信有共享检测,但不确定
    所以现在来问一下众V友,用了路由可能会暴露什么特征。

    LZ能想到的:
    最明显的,经过路由,TTL-1,但这个可以用iptables改。
    以前还有人弄过iptables ipid模块
    这两个都对LZ无效
    应用层,现在web明文登录的不少,cookies,user agent貌似都可能被分析,但这个不太好规避,电信大概也不会去检测吧。
    还有可能暴露什么特征呢?用户又如何规避?
    LZ试过一次猎豹wifi,至少它对TTL有处理,拨号的机器和wifi客户端ping里的TTL都是一样的。
    第 1 条附言    2015-02-12 18:28:44 +08:00
    有位朋友说,拿一台linux的机器让电信客服倒腾,居然拿到了免客户端的账号……好强大……

    LZ觉得这条路无望,只得转向技术方面……
    而且,就算免了客户端,电信仍然可以部署共享检测。
    电信搞客户端的目的就是不让共享,但封共享不止这一种手段。

    更重要的,LZ希望得知,在技术方面,用户能做到什么程度。

    现在已知的检测手段及应对方法:

    1.TTL,经过一个路由就-1
    应对办法:iptables改掉

    2.IPID,路由后每一个机器都会在数据上呈现一条上升的线
    应对方法:iptables IPID模块,改掉它(网上找到的IPID模块有两种模式,不知道应该用pace 1还是chaotic?也许是pace 1吧,这里我还没弄懂)

    3.MAC地址
    真的会检测这个么?NAT出去全是一个MAC地址啊。而且没听说用户不能换电脑啊……可能MAC地址上有制造商的信息吧。变化频繁可能也会被盯上。
    应对办法:克隆MAC地址。openwrt等linux系统的,用GNU macchanger

    4.TCP timestamp
    原理似乎是:每台机器的时钟都不一样,各有偏差,这反映到TCP timestamp中。(很奇怪,ccseven提供的PPT说还需要依靠统计规律?)
    应对方法:
    a.同步时间
    缺陷:android等系统可能对此支持不好,比如电信的CDMA会强制同步电信的时钟,移动会同步移动的时钟。可能的应对办法:使用软件同步,或者GPS同步
    b.在路由上丢掉timestamp(http://blog.csdn.net/dog250/article/details/18959401)
    缺陷:兼容性未知,可能丢掉了timestamp会成为新的特征。

    5.应用层的检测,如:
    a.HTTP user-agent(个人觉得不太靠谱,但ISP可能不惜误报也要部署)
    b.Windows Update(我去,这也行)
    c.MSN等IM登录的账号数(如果加密了协议就不行,估计不靠谱)
    d.HTTP session cookie(LZ不太懂这方面,但这个应该跟着HTTP明文传输了,而且绝大多数学生都会使用一些不加密的应用,比如QQ空间)
    其他更猥琐的手段……

    6.“主动探测”,如SNMP
    原理:貌似是相当于间谍软件,植入到NAT后面进行探测
    疑问:SNMP?上网的机器不支持怎么办?难道客户端里面有SNMP支持?

    其他:希望众V友补充修正!

    “万能”的应对方法:
    1.加密代理,如VPN
    原理:我全加密了,看你还检测个毛线
    缺陷:
    a.可能加密代理本身就是一种特征
    b.哪里去找VPN服务器?免费或公共VPN隐私存在隐患;租VPS国内很贵,国外也不算便宜,流量还要绕道回国,产生延迟、丢包、撞墙等问题;自设VPN比较麻烦,而且很多地方的ISP限制上行速度
    c.上面一条说了,延迟明显增大,可能会丢包,速度可能受限,打网游的不愿意用这个也许可以设置只让部分流量,如TCP 80通过VPN传输来解决
    2.本地socks5代理
    原理:重新包装,消除不同机器协议栈暴露的特征(LZ外行,理解有误请纠正!)
    缺陷:
    a.需要应用支持也许可以采用redsocks之类软件弥补
    b.不加密,对付不了应用层的检测
    疑点:据某百科对网络尖兵的描述,可以查出用户在私设代理!?

    其他:希望众V友补充修正!
    33 条回复    2018-10-31 18:13:55 +08:00
    my623
        1
    my623  
       2015-02-10 17:59:07 +08:00
    通过user-agent. 检测到两个不同的UA就会封锁 请搜索 网康科技
    weisoo
        2
    weisoo  
       2015-02-10 18:03:11 +08:00
    @my623 如果是这样的话,我一台电脑装多个浏览器也不行了?
    9hills
        3
    9hills  
       2015-02-10 18:03:46 +08:00
    在阿里云/青云等做个shadowsocks,然后全局shadowsocks好了。。流量特征全部抹平
    sandideas
        4
    sandideas  
       2015-02-10 18:05:56 +08:00 via Android
    用两个路由器可破。。
    ScotGu
        5
    ScotGu  
       2015-02-10 18:22:03 +08:00
    @sandideas +1 双路由的确挺好用,我在大学就这么干。
    my623
        6
    my623  
       2015-02-10 18:27:50 +08:00
    @weisoo 根据类型来的,比如说同时出现桌面浏览器和移动浏览器,同时出现两个不同品牌手机的浏览器。 校园网不安全,如果不缺钱,最好不要用。别折腾了,得不偿失。
    fchypzero
        7
    fchypzero  
       2015-02-10 18:54:46 +08:00
    @sandideas 没想通,怎么破法?求教。
    acess
        8
    acess  
    OP
       2015-02-10 18:58:01 +08:00
    @fchypzero 第一个路由拨上宽带,它的LAN口接第二个路由WAN口,第二个路由设置WAN口为DHCP,LAN口网段与第一个不同
    这样就经过了2层NAT
    很奇怪,这样真的有效么?
    acess
        9
    acess  
    OP
       2015-02-10 19:04:57 +08:00
    @9hills 这两个网费都好贵啊
    sandideas
        10
    sandideas  
       2015-02-10 19:07:32 +08:00
    @acess 可以试试。。
    ccseven
        11
    ccseven  
       2015-02-10 22:46:44 +08:00   1
    @acess 华为SIG非法共享接入监控解决方案20051223

    http://wenku.baidu.com/link?url=xU4GYye80AtlSIaU4BY5ixm5u2EC1-P4WhBYr87DoIgvS0TwyH62KIec8ZSuTw9Y01JXVvvXGQS0PO_kkIXzjKmlncAlw4h4n-EXQFpIYlG

    某市某运营商该项目就是华为SIG方案!不要问我怎么知道的 ( ̄ ̄)"
    ccseven
        12
    ccseven  
       2015-02-10 22:47:30 +08:00
    准确点说 整个省都是!
    weisoo
        13
    weisoo  
       2015-02-10 22:50:36 +08:00
    @my623 对网站开发者来说,同时开几个类型的浏览器很常见,那不要活了?
    extreme
        14
    extreme  
       2015-02-10 23:03:39 +08:00
    @sandideas 路由器连接上网了,算一个上网终端,第二个路由使用前一个路由器上网,算第二个上网终端。
    sandideas
        15
    sandideas  
       2015-02-11 00:15:42 +08:00
    @extreme 那你会不会用电脑连接路由器上网呢
    extreme
        16
    extreme  
       2015-02-11 00:34:20 +08:00
    @sandideas 你是不是没在自己的电脑上用过PPPOE?
    电信肯定是想你们都用Modem,然后唯一与Modem连接的主机再通过PPPOE上网。
    wohenyingyu01
        17
    wohenyingyu01  
       2015-02-11 00:52:51 +08:00
    以前我们学校是加密PPPOE的密码,即输入的密码与真实的密码不一致,要安装专用客户端才能解密拨号,于是路由器用不了,而且该客户端会禁用电脑上其他的网络适配器防止共享。于是一大堆算号器应欲而生,百度河南网通在线算号器有真相。
    acess
        18
    acess  
    OP
       2015-02-11 01:01:39 +08:00
    @ccseven 感谢分享,虽然资料看起来有点老
    这个PPT上说的传输层的检测有IPID和TCP时间戳,还有TTL(若理解有误请轻拍)
    IPID和TTL都能用iptables改,但是IPID要费点事(编译模块)
    TCP时间戳呢?有办法搞定这个么?

    另外这个PPT似乎反映出一点:被封是不定时的,情况可能在一周内都会有很大变化,取决于电信那边操作者的心情。(扑朔迷离,用起来提心吊胆,威慑效果也更好)

    另外,还有没有其他传输层可以做的检测?有没有办法规避?

    @my623 我觉得电信不会BT到查User Agent,至少不会作为主要手段。
    对于主要目标:多台电脑共享,检测结果又不准(也许大家都是一样的系统,一样的浏览器)
    可以查到你的手机平板也跟着上网了,但封这个没多大意思啊,归根到底就一个人在用,流量又不会多大。就算逼人用数据流量,也未必用的是电信的。
    但我记得有一次被封很像是被查User Agent了。只出现过一次,那时拿ChinaNet这个wifi热点来共享,身边人拿出手机连上使用,很快就连接被重置了。那次之后就没有这种现象了。

    要是分析流量到如此地步,也许只有在外面搭一个VPN,使用加密连接才能绕过了。
    acess
        19
    acess  
    OP
       2015-02-11 01:16:08 +08:00
    @wohenyingyu01 已经有人做了拨号器,帖子里说了,和算号器应该等效。
    根据网上的分析,和自己的使用感觉,这个客户端的制作还是蛮低劣的,应该不会有太复杂的东西。
    比如连上任何wifi,这个客户端都会提示你连了电信校园wifi,而且这时关掉客户端,wifi就会断线。
    www.f-young.cn也是这样,正常点进去下载客户端,会发现下载页面就是连接出错的警告页面(请卸载猎豹云云)
    但是网络明显受到人为干扰。照这样说,还是电信在通过分析流量来检测共享。
    sandideas
        20
    sandideas  
       2015-02-11 01:37:42 +08:00 via Android
    @extreme 用无线路由器A拨号,然后在无线路由器A的Lan口和另外一个无线路由器B的wan口接起来。所有电脑都通过一个无线路由器B上,无线路由器B接在拨号的无线路由器A上面。
    sandideas
        21
    sandideas  
       2015-02-11 01:38:30 +08:00 via Android
    好像检测的东西叫做网络尖兵。。楼主可以去了解下
    extreme
        22
    extreme  
       2015-02-11 01:48:09 +08:00
    @sandideas 算了,不浪费时间和你解释了,你是无法理解的。
    sandideas
        23
    sandideas  
       2015-02-11 02:08:51 +08:00 via Android
    @extreme 真奇怪你这人,我这种方法是我实打实试出来的。什么叫我无法理解。
    我在学校的时候用的是联通的网,可以用无线路由器拨号,但是如果两台电脑同时连一个无线路由器,就会提示多个用户使用。所以必须是一个无线路由器外面再套一个无线路由器,这样随便怎么连联通都检测不出来。
    不知道你扯那么多什么意思,你试过么。。
    好好说话,有谁是无法理解的。真的是。
    无线路由器就不能通过猫来拨号了?还是什么的?我电脑可以通过无线路由器来连接上网,路由器连接路由器就算第二个终端从而不能上网了?
    extreme
        24
    extreme  
       2015-02-11 02:13:41 +08:00
    @sandideas 那是因为你ISP限制的终端数不是一。
    extreme
        25
    extreme  
       2015-02-11 02:18:03 +08:00
    @sandideas 按照你说的,你ISP限制的终端数是二(为什么是二,恐怕是检测方法的原因),达到三就执行相应的措施。
    如果限制的是二,你这方法理论上根本不可行。
    extreme
        26
    extreme  
       2015-02-11 02:20:59 +08:00
    @extreme 居然打错字了:
    按照你说的,你ISP限制的终端数是二(为什么是二,恐怕是检测方法的原因),达到三就执行相应的措施。
    如果限制的是一,你这方法理论上根本不可行。
    acess
        27
    acess  
    OP
       2015-02-11 02:51:31 +08:00
    @extreme 这里讨论的是电信是如何得知这个终端数的,还有用户能采取什么方法规避
    一般路由NAT出去,就像是一台机在上网,除非抓包仔细分析
    如果两层路由都没有搞定流量的特征,那么两层NAT和一层NAT我觉得效果没啥区别,所以我怀疑双路由的效果(如果有效,我觉得可能是其中一个的固件有反制措施,掩盖了一些流量特征)
    另外ISP貌似也可能采取主动探测(SNMP之类),但这个我觉得就是利用埋设好的后门,这肯定需要电信强制用户使用自己的设备,比如校园无线盒子、光猫之类的。但这意义不大,因为可以在这个设备后面再接路由。
    acess
        28
    acess  
    OP
       2015-02-11 02:54:08 +08:00
    @sandideas 很奇怪,为什么一层会被封,两层就不会了,我很好奇联通是怎么检测的。
    acess
        29
    acess  
    OP
       2015-02-11 02:58:16 +08:00
    找到一个貌似是去掉TCP Timestamp的办法:
    http://blog.csdn.net/dog250/article/details/18959401
    看起来还得稍加折腾,和ipid一样需要编译模块
    但好处是编译一次应该就可以共享出来,大家一起用了。

    另外这样即使有效也不是长久之计如果大家都有timestamp,就你没有,这也算特征吧。最好能伪造一个

    如果理解有误请轻喷。
    invite
        31
    invite  
       2015-02-11 09:25:06 +08:00
    @acess 如果检测IPID这些,那么你用一台电脑做代理当路由器使,这样不是检测不到了?
    sadpencil
        32
    sadpencil  
       2017-08-27 23:20:50 +08:00
    IPID 和 timestamp 确实是比较难防,但是,ISP 如果根据这种手段检测的话,会误伤虚拟机
    有了虚拟机这个借口,似乎就不用担心 NAT 封锁了
    Benson1212
        33
    Benon1212  
       2018-10-31 18:13:55 +08:00
    @my623 我们学校的就是网康科技的设备,有什么办法防封吗?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2751 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 11:45 PVG 19:45 LAX 04:45 JFK 07:45
    Do have faith in what you're doing.
    ubao 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