另外一个有趣的思路,测试 IP 特定端口是否被屏蔽的方法 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
AlphaTauriHonda
V2EX    宽带症候群

另外一个有趣的思路,测试 IP 特定端口是否被屏蔽的方法

  •  1
     
  •   AlphaTauriHonda 2022-06-09 01:28:19 +08:00 5342 次点击
    这是一个创建于 1226 天前的主题,其中的信息可能已经有所发展或是发生改变。
    之前发的文章并不能测试单个端口是否被屏蔽。因为 DNS 污染通常不会在非 53 端口上触发,t/857393 这篇的 Suplement 1 是有误的。能在非 53 端口或者 53 端口 TCP 模式下触发污染的域名有限,而且不是很多。

    对于测试单个端口,这个构造 DNS 请求的方法不太好用。https://ping.sx/dig 这个工具对于非 53 端口的 DNS 支持有些问题,在其他端口没有开启 DNS 服务的情况下依然给出了结果。应该还是请求的 53 端口,那个自定义端口的设置没什么用。

    同样,用这个方法甚至不需要拥有 IP 或者在上面开任何服务。

    对于单个端口的测试,我们可以通过构造一个包含被审查的 S N I 的 HTTPS 请求来触发 RESET ,同时检测有没有收到伪造的 RESET 来判断端口是否被墙。这个 RESET 在访问 1-65535 端口都会被触发。当然这只是目前的状况,情况有一定可能会变化。

    随便找一个很短,被屏蔽的域名。www.bbc.com

    找一个被墙端口的 IP ,对照两个没有被墙端口的 IP 。
    就以 8.8.8.8 为例。8.8.8.8 的 443 端口被墙了,但是用来对照的 9.9.9.9 ,204.79.197.200 没有被墙 443 端口。


    9.9.9.9 ,204.79.197.200 的 443 端口都没有一片红。


    8.8.8.8 被墙了 443 端口。

    用 cURL 来构造触发 RESET 的请求。
    curl --resolve 'www.bbc.com:443:9.9.9.9' https://www.bbc.com
    OpenSSL SSL_connect: Connection reset by peer in connection to www.bbc.com:443

    curl --resolve 'www.bbc.com:443:204.79.197.200' https://www.bbc.com
    OpenSSL SSL_connect: Connection reset by peer in connection to www.bbc.com:443
    测试没有被墙相应端口的 IP ,可以正常收到伪造的 RESET 。

    curl --resolve 'www.bbc.com:443:8.8.8.8' https://www.bbc.com
    Failed to connect to www.bbc.com port 443: Connection timed out
    用被墙了相应端口的 IP ,会出现 time out 错误,不能收到伪造的 RESET 。

    如果要检测其他端口把这段命令里的 443 换掉就好了。
    curl --resolve 'www.bbc.com:想检查的端口:被测 IP' https://www.bbc.com

    测试 IP 的特定端口是否被屏蔽,目前只能在墙内使用 cURL 构造请求,应该没有什么方便的线上工具可以用。
    21 条回复    2022-06-11 16:58:20 +08:00
    zhengxinhn
        1
    zhengxinhn  
       2022-06-09 01:46:51 +08:00
    点个赞
    learningman
        2
    learningman  
       2022-06-09 02:08:58 +08:00 via Android   1
    明天我来写个 CLI 工具试试
    mikeluckybiy
        3
    mikeluckybiy  
       2022-06-09 02:13:31 +08:00 via Android   1
    mark 一下,挺高大上的思路,需要个好的工具
    myki
        4
    myki  
       2022-06-09 08:08:56 +08:00
    mark ,火钳刘明
    inprtx
        5
    inprtx  
       2022-06-09 08:41:12 +08:00 via Android
    没必要 sni ,直接 curl ip:port -v 就能知道,http ok,tcp reset ,tcp reject ,tcp dorp ,四种状态
    GuuJiang
        6
    GuuJiang  
       2022-06-09 09:08:30 +08:00 via iPhone   1
    @inprtx 你没有理解 op 的目的,结合着 op 的上一篇帖子看,是利用墙内部不同模块之间的优先级,所以人为制造一个满足被墙条件的场景是必需的
    zgc27wo
        7
    zgc27wo  
       2022-06-09 11:59:09 +08:00
    bbc,嘿嘿
    AlphaTauriHonda
        8
    AlphaTauriHonda  
    OP
       2022-06-09 12:48:38 +08:00
    @zgc27wo 因为这域名是真的短。刚才想到一个更短的。
    dw.com Deutsche Welle
    AlphaTauriHonda
        9
    AlphaTauriHonda  
    OP
       2022-06-09 13:02:03 +08:00
    @learningman 十分感谢!

    @inprtx 用这个方法不需要拥有 IP 或者在上面开任何服务。

    @GuuJiang 差不多就是这样。利用墙会发出伪造包的特性,构造能触发伪造的请求,主动探测被测试 IP 或者特定端口是否被墙。
    pP3PSMpkBvucn8nx
        10
    pP3PSMpkBvucn8nx  
       2022-06-09 13:51:34 +08:00 via Android
    @AlphaTauriHonda 你昨天发的那个 rdrc.mnd.gov.tw 的帖子呢? rdrc.mnd.gov.tw 在赵安法实施之前就没法连上了,而且 traceroute 的过程中是在中华电信 hinet 的路由上中断的。
    pP3PSMpkBvucn8nx
        11
    pP3PSMpkBvucn8nx  
       2022-06-09 13:53:50 +08:00 via Android
    @AlphaTauriHonda 还有就是美国那些.mil 域名的网站用香港本地的 name server 也是解析不出来的,这甚至在反修例之前就已开始了,是懂王命令军队这样做的
    pP3PSMpkBvucn8nx
        12
    pP3PSMpkBvucn8nx  
       2022-06-09 14:02:09 +08:00 via Android
    @AlphaTauriHonda 还有就是你的那个香港网络审查页面上的网站都能打开,是因为你使用的 dns 解析服务器都是 8888 8844 之类的,香港现在屏蔽网站的方法是让 HKT 、HKBN 这些 isp 在家庭宽带访问的属于 isp 的 dns 解析服务器里面直接加入一条篡改域名解析结果的记录
    AlphaTauriHonda
        13
    AlphaTauriHonda  
    OP
       2022-06-09 14:10:56 +08:00 via iPhone
    @mensheviks 这个问题看起来是不让说,虽然我发的是技术问题。
    不要发和本帖没有相关性的回复。
    在之后才连不上的。
    被审查的*.*.*.67 和没有被审查的*.*.*.125 都是在中华电信的路由之后就没有回应。是因为这 IP 的 /24 都屏蔽了 ICMP ,同时 AS4782 的上游只有 HiNet ,当然会在 HiNet 之后就没有回应。
    AlphaTauriHonda
        14
    AlphaTauriHonda  
    OP
       2022-06-09 14:13:39 +08:00 via iPhone
    @mensheviks 不要在本帖下连续问不相关的问题。www.v2ex.com/t/858294 说的是大陆的。和的有什么关系?
    pP3PSMpkBvucn8nx
        15
    pP3PSMpkBvucn8nx  
       2022-06-09 14:32:58 +08:00 via Android   1
    @AlphaTauriHonda 能否去这里说? t/785097
    AlphaTauriHonda
        16
    AlphaTauriHonda  
    OP
       2022-06-09 14:54:40 +08:00
    @mensheviks 好。我看不到整个 go/flamewar ,只能单独看到这个网址。
    learningman
        17
    learningman  
       2022-06-09 16:06:54 +08:00   1
    https://github.com/Zxilly/knockknock
    写好了,但是现在应该只能在 Windows 上用。。。我等下琢磨下跨平台的怎么判断
    learningman
        18
    learningman  
       2022-06-09 19:46:32 +08:00   1
    Ok ,跨平台的修好了,binary 可以从 Release 下
    但是 Windows Defender 会报毒,我不打算修了,应该是引入了 syscall 的原因
    AlphaTauriHonda
        19
    AlphaTauriHonda  
    OP
       2022-06-10 00:43:51 +08:00
    h4wklee
        20
    h4wklee  
       2022-06-10 15:24:33 +08:00 via Android
    楼主觉得嘉斯利还有机会去大红牛吗
    AlphaTauriHonda
        21
    AlphaTauriHonda  
    OP
       2022-06-11 16:58:20 +08:00
    @h4wklee Sergio Pérez 刚续签。我觉得难了。
    开车不行,还是上网有意思。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2623 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 14:20 PVG 22:20 LAX 07:20 JFK 10:20
    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