站内公告:

亲友传真---海外信息直接看 https://qycz.org

Main Menu

回覆帖子

发送站内短信时发生以下错误:
警告: 该贴已经至少 180 天没有更改。
除非你一定要回复,否则也许考虑发一个新贴会更好。
Note: this post will not display until it has been approved by a moderator.
Attachments: (Clear attachments)
限制: 每篇帖子 3 (3 remaining), maximum total size 8.00 MB, maximum individual size 2.00 MB
请将要删除的附件取消勾选
Click or drag files here to attach them.
进阶选项(包含帖子状态和附件)...
验证码:
请将此框留空:
三乘七等于几?(请用阿拉伯数字回答):
Shortcuts: ALT+S post or ALT+P preview

帖子总览

作者 绿之水
 - 八月 11, 2016, 07:31:37 下午
      天朝对供养它的老百姓监控技术手段实在太多太多,仅仅翻墙网民却找不到安全方法,文章列出方法还不能完全避开监控,个人认为,手机翻墙越来越险,电脑相对情况会好些。以下文章来源博讯。

         
    来源:博讯       作者:编程随想
    
    文章目录
    
    ★何为"黑暗幽灵木马"?
    
    ★这款木马是谁干的?
    
    ★六扇门为啥要搞"网络临侦"?
    
    ★哪些人需要防范"网络临侦"?
    
    ★如何对付"网络临侦"?——关键性的防范措施
    
    ★如何对付"网络临侦"?——【不够靠谱】的防范措施
    
    ★俺是如何做到"全程加密"的?
    
    ★对"全程加密"的困惑及解答
    
    ★结尾
      
    最近几个月没写技术帖,又有热心读者来催了。正好前几天有读者在博客评论中询问了"黑暗幽灵木马"(洋名叫"DCM")的相关事宜。本来想从技术层面聊聊这款木马,但是俺发现相关的分析文章已经很多了。为了不落俗套,俺换一个角度——聊聊"如何应对公安部门的网络临侦"。
    
    ★何为"黑暗幽灵木马"?
          
    先简要介绍一下这款木马的情况。已经了解的同学,请直接跳过本章节,以免浪费时间。
      
    这是4月下旬被腾讯安全团队曝光的木马。这款木马能吸引大量眼球(引发了安全界的严重关注),主要是因为它的两大特色:
    
    ◇特色之一,传播手段很特别
          
    此木马首先让人惊艳之处就是传播方式很牛逼。
      
    那些中了这款木马的电脑,并【没有】运行外来的可疑软件,就已经中招了。为啥捏?
      
    根据目前曝光的内幕以及圈内人士的分析,这款木马有一个专门的"传播系统",该系统是通过"流量注入"进行传播的。大致包括如下几种方式:
      
    1. 软件自动升级
      
    如今很多软件都有自动升级功能。所谓的自动升级就是从该软件的官网下载一个升级的安装包到本机,然后在本机运行该升级安装包。
      
    某些软件(尤其是很多国产软件)不够靠谱,它们在下载完升级安装包之后,没有进行文件的完整性检查,就直接运行了。
      
    这就给了 DCM 可乘之机——当 DCM 木马的传播系统发现你的电脑在下载某个软件的升级安装包,就会篡改这个安装包的内容,把 DCM 木马植入到安装包内部。当这个安装包下载到本机并运行之后,你就中招了。
      
    2. 软件下载
      
    很多网友经常会在网上下载一些软件。DCM 的传播系统一旦发现你的传输流量中包含了"可执行文件的下载",同样会篡改你的网络传输流量,把 DCM 植入到你下载的那个软件包中。
      
    3. 浏览器劫持
      
    如果前两种情况一直没有出现,DCM 的传播系统会采用最后这招——浏览器劫持。
      
    当受害人在浏览器中访问任何一个网站时,DCM 的传播系统会让浏览器显示一个出错的页面。该页面提示用户升级浏览器,并且包含一个升级的链接。当然,这个链接是假的。受害人一旦通过该链接下载浏览器的升级包并运行,就被植入 DCM 木马了。
    
    ◇特色之二,隐蔽性很强
          
    这里所说的"隐蔽性",不仅仅是它本身的软件隐藏得好(隐藏得好的木马多得很)。更主要是指——它非常注重隐藏"木马的操纵者"。
      
    先来说传统木马是如何汇集信息的:
      
    传统的木马在收集到信息之后,通常会发送到某个"地方"。这个"地方"可能是木马控制者自己架设的网站,也可能是木马控制者自己注册的邮箱(甚至可能是某个 SNS 帐号)。不管是哪种,汇集信息的"地方"总是与木马操控者具有某种关联性。因此,一旦木马被安全公司拿去作分析之后,就可以通过观察其行为,知道该木马用来汇集信息的"地方"是哪个。如果有可能的话,就可以据此来追踪木马的操控者。
          
    再来说 DCM 木马的独特之处:
      
    该木马收集到电脑系统的各种信息之后,会把信息压缩并分成 N 份,然后每一份打包成一个 DNS 请求,发往微软的服务器。
      
    为啥要发往微软服务器捏?千万【不要】天真地以为木马是微软做的(这个木马跟微软没半毛钱关系)。选择微软服务器是因为:
    
    1. 微软的服务器 IP 没有被 GFW 屏蔽
    
    2. 普通网民的电脑与微软服务器的通讯很频繁(因为 Windows 的"自动更新"),不容易引起怀疑
    
    3. 微软的服务器在国外,所以发往微软服务器的数据包不但会经过"城市的网络出口",还会经过"省级网络出口"和"天朝的国际出口"。所以,在这几个环节中都可以截获这些伪装的 DNS 数据包。
      
    再来说一下,为啥要选用 DNS 协议?原因如下:
    
    1. DNS 协议非常普遍,不容易引起怀疑
    
    2. 绝大部分网络环境中,防火墙都允许 DNS 数据包通过
      
    从上述介绍可以看出:为了收集信息,该木马另辟蹊径,完全没有暴露出木马控制端的任何信息。
    
    ★这款木马是谁干的?
          
    介绍完 DCM 木马的特色,俺接着来分析:谁是这款木马的始作俑者?
      
    前面说到了该木马的两大特色。其中之一是:在"收集信息"的环节中彻底隐藏了木马控制端的痕迹。但恰恰是这种隐藏手法,反而暴露了:谁才有可能是这款木马的操控者。
      
    列位看官中,如果有稍微懂点网络的,应该能看出来——DCM 木马把收集到的信息发往【墙外】的微软服务器,这个过程大致需要经过如下几个环节:
    
    1. 宽带拨号设备,比如光猫之类(这个环节不一定有,取决于具体的宽带上网方式)
    
    2. 小区的交换机(这个环节不一定有,取决于具体的宽带上网方式)
    
    3. 运营商的局端设备
    
    4. 城域网出口
    
    5. 骨干网省级出口
    
    6. 骨干网国际出口
      
    那么,木马的操纵者如何获取信息捏?显然,至少要能控制其中一个环节。然而上述这些环节都掌握在运营商(ISP)手中。运营商本身是没啥动力去搞这么复杂的一个木马。那么,谁有这个动力,并且还有足够的权威去指使运营商干这种事情捏?答案呼之欲出,那就是【六扇门】。在公安系统内部,这种搞法称之为"网络临侦"。
    
    ★六扇门为啥要搞"网络临侦"?
          
    话说如今是信息时代,体现在六扇门那儿就是:电子证据越来越多(比如"电邮、聊天记录、上网记录"都可以成为证据)。所以最近10年,信息安全行业衍生出一个细分市场叫做【电子取证】。今天咱们要聊的"网络临侦",就是电子取证的手段之一(还有其它的一些手段,以后有空慢慢聊)。
      
    "网络临侦"可以实现如下几个目的:
    
    ◇收集网络行为
          
    通过网络临侦手段,可以详细监控目标嫌疑人的上网行为。为了体现其特色,俺拿"网络临侦"与"GFW"作一个对比。
          
    部署方式不同
      
    GFW 部署在天朝的国际出口。只有当你访问境外网站,你的网络流量才会经过【国际出口】,才会被 GFW 处理。如果你仅仅是访问【墙内】网站,GFW 根本【看不到】你的流量。
      
    相反,用来做网络临侦的设备,可以直接部署在小区交换机甚至是嫌疑人家中的拨号设备中。也就是说,不论你访问国内网站还是国外网站,都会被网络临侦设备监控到。
          
    数据量不同,导致处理方式不同
      
    部署方式不同引出了另一个差异——数据量不同。
      
    GFW 面对的是全国网民的跨国网络流量,那个规模是非常非常惊人的。因此,GFW 的"协议分析模块"和"后续处理模块"就无法作太多的事情。比如说,GFW 无法把它看到的所有流量都保存下来。
      
    相反,由于网络临侦设备可以部署在一个小范围(比如小区交换机),它可以把所监控的流量全部保存下来,供日后分析。
          
    虽然网络临侦设备有上述这几种好处,但是它也有缺点:
    
    1. 无法对付【强加密】的流量
    
    如果目标网民使用强加密的方式上网,临侦设备没法破解这些加密流量,因此也就无法监控目标网民。
    
    2. 无法监控主机的行为
    
    如果你的某个行为仅仅局限在本机,与网络无关。那么单纯的网络监控是无法了解你在做啥?
          
    由于上述这2个缺点,所以临侦设备需要采用其它手段,这就是下面要聊的——收集主机行为的能力。
    
    ◇收集主机(本地)行为
          
    但是临侦设备是部署在网络传输路径中,并没有部署在本机。它如何能收集本机的行为捏?于是本文提到的 DCM 木马就出场了。前面俺提到了:DCM 木马具有专门的"传播系统"。这个传播系统,其实就是"临侦设备"。由于它的部署方式,使得它可以很容易篡改你的上网流量,从而可以在流量中植入木马。一旦得逞,木马安装到你本机,那么你的一举一动都在六扇门的监控之下了。
      
    这时候,即便你采用加密的方式上网,甚至采用多重代理上网,都于事无补了。因为木马可以直接看到你的浏览器的地址栏(知道你在访问哪个网站),木马还可以收集你输入的每一个汉字(比如装个键盘钩子既可实现)。
    
    ★哪些人需要防范"网络临侦"?
          
    大致来说,有两类人需要防范:
    
    1. 犯罪分子
    
    2. 因为政治原因被六扇门盯上的人——比如维权人士、民运人士、反党人士
          
    (本文主要是写给第二类人看的)
      
    如果你不是这两者之一,你通常不用太担心被临侦设备盯上。
    
    ★如何对付"网络临侦"?——关键性的防范措施
    
    ◇一定要加密网络流量
          
    这是最容易想到的应对招数——你一旦加密了网络传输的流量,临侦设备就【无法】对你的上网流量进行木马注入。另外一个好处是,如果你用的是加密代理,临侦设备甚至都无法知道你访问了哪些网站。关于加密网络流量,主要有2种方式:
    
    1. 网站自身提供的 HTTPS
    
    2. 加密代理    
      
    这两种方式的中,HTTPS 有如下几个【局限性】:
    
    1. 有很多网站(尤其是小型网站)不支持 HTTPS
    
    2. 如果你通过 HTTPS 访问某网站,临侦设备虽然无法看到你的真实流量的内容,但依然能知道你访问的网站是啥
    
    3. 如果浏览器的证书出现问题(比如你用了朝廷方面发行的 CNNIC 证书),那么单纯的 HTTPS 有可能遭遇"中间人攻击"(洋文叫"MITM")
    
    4. 如果浏览器存在漏洞(比如"HTTPS 降级攻击的漏洞"),临侦设备【有可能】解密单纯的 HTTPS 流量并实现注入。
          
    与 HTTPS 相比,加密代理具有的好处是:
    
    1. 不受网站本身的限制
    
    即使你访问的网站不支持 HTTPS 也没关系
    
    2. 基于加密代理访问,监控你流量的人无法知道你在访问的网站是啥
    
    临侦设备顶多看到你在访问某个代理服务器,但是【无法】知道你通过这个代理转到了哪个网站
    
    3. 即使你的浏览器证书出了问题,风险也不大
    
    临侦设备因为无法看到你的 HTTPS 流量(HTTPS 流量被包裹在外层的加密代理流量中),无法针对你进行"中间人攻击"
    
    4. 即使你的浏览器含有 HTTPS 协议的漏洞,风险也不大
    
    (类似第3条)    
      
    综上所述,"单纯依靠加密代理"比"单纯依靠网站自身的 HTTPS",要更保险。当然,两者结合更好(前提是网站要支持 HTTPS)
    
    ◇要用"强加密",不要用"弱加密"
          
    很多人都用过 VPN,俺就拿 VPN 协议来举例。VPN 的实现有很多种方式,其中的 PPTP 就是有名的"弱加密"。由于临侦设备的部署特点,它有可能解密 PPTP 协议,并获得其中的明文流量内容。
      
    考虑到大部分同学都不是信息安全圈内的,通常无法判断哪些是弱加密,哪些是强加密。所以俺再来唠叨一个多年的老建议:"基于 TOR 的多重代理"。由于多重代理是【嵌套】的关系,只要其中一重是强加密,整个就是强加密。而 TOR 肯定是强加密的。
      
    关于多重代理,俺早在 N 年前就写了教程,链接在"这里"
    
    ◇假如你不得不用明文传输,切记用"虚拟机"隔离不同的上网环境
          
    有些情况下,你不得不用明文方式上网。
      
    举个例子:比如国内的视频网站通常都采用明文传输,不支持 HTTPS。并且大多数国内的视频网站都屏蔽了境外的 IP。也就是说,当你用翻墙代理去访问国内视频网站,无法正常观看。就算你找到某个国内的代理服务器,可以解决"国外IP无法观看"的问题,但走代理终归影响性能。而看视频对网络传输性能的要求还是偏高的。
      
    上述这种情况,就使得你被迫用明文的方式进行网络传输,而这种方式就给了临侦设备可乘之机。
      
    咋办捏?俺的建议是采用虚拟机——把那些被迫使用明文传输的上网行为,都统一放到某个虚拟机(Guest OS)中。这个虚拟机就算被入侵了,至少你的物理系统(Host OS)和其它的虚拟机也不会受到影响(本文暂且不考虑"虚拟机穿透"的风险,这种的概率非常低)。
      
    没玩过虚拟机的同学,请参见俺写的系列教程《扫盲操作系统虚拟机》。
      
    使用虚拟机还有另一个额外的好处——利用快照功能自动回退到干净的状态(关于这招可以参见俺的另一篇教程:《如何用"快照"辅助安全加固、强化隐私保护》)
    
    ★如何对付"网络临侦"?——【不够靠谱】的防范措施
          
    DCM 木马曝光之后,有很多网上的文章给出了相应的防范措施,可惜很多措施都不够靠谱。俺下面分别列举,作为反面教材。
    
    ◇用 Linux 或 Mac OS 替代 Windows
          
    用 Linux 或 Mac OS 替代 Windows 会在一定程度上提升安全性。别的不提,单说六扇门的临侦系统,主要还是针对 Windows 的。因为大部分网民用的是 Windows。
      
    可惜这个措施【不彻底】。因为六扇门未来有可能开发针对 Mac OS 甚至 Linux 的入侵工具(没准现在已经有了)。
      
    因此,本措施属于"非关键性的"。
    
    ◇总是使用带校验机制的自动升级
          
    首先,这个措施实施起来比较困难。因为大部分网民是技术菜鸟,并不知道那些软件的自动升级功能含有"校验机制"。
      
    其次,这个措施是不彻底的。即使你电脑上所有的软件的自动升级都含有校验机制,但如果你没有【全程】加密,临侦设备还是可以通过其它方式对你的【明文】流量进行注入(比如篡改你正在下载的可执行文件),从而让你中招。
      
    所以,这个措施指标不治本。
    
    ◇总是检查下载的软件的数字签名
          
    (不知道何为"数字签名"的同学,可以先看《扫盲文件完整性校验——关于散列值和数字签名》)
      
    首先,并不是所有的软件的安装包都自带数字签名。如果某个安装包没有自带数字签名,你就比较难判断该安装包在下载的过程中是否被篡改了。
      
    其次,由于每次下载都要记得检查,这种细心程度大部分人是做不到滴。
      
    这个措施同样指标不治本。
    
    ◇对 DNS 协议的防范——只允许 DNS 数据包发往合法的 DNS 服务器
          
    某些文章提到了这个招数,用来限制 DCM 木马往外发送信息。这个招数是【不】靠谱滴。
      
    虽然目前 DCM 木马用的是 DNS 协议来掩盖它的发送行为。但如今 DCM 已经被曝光。它的下一个版本很可能会改用其它的方式来隐藏信息发送行为(不一定再用 DNS 协议了)。
    
    ◇禁用可疑的 CA 证书
          
    许多年前,俺就写教程普及了"CA 证书的重要性",以及"可疑证书的危险性"。
      
    不过捏,在对付网络临侦设备的时候,"禁用可疑的 CA 证书"这个招数用处不大。
      
    举例来说,假如你本机依然存在明文的上网流量,就可能被注入。而明文的上网流量,与 CA 证书没有半毛钱关系。
    
    ★俺是如何做到"全程加密"的?
          
    在本文结尾处,稍微分享一下俺的个人经验(其实这个经验,前几年已经在博客评论区分享过了)
      
    大致包括如下几个要点:
          
    1. 基于 TOR 的多重代理
      
    前面已经提到过:TOR 本身是强加密的,所以基于 TOR 的多重代理,整体而言也是强加密的。
      
    再罗嗦一下:多重代理包含了多重的加密,临侦设备非常难对其进行解密,也就谈不上"注入"了。
          
    2. 虚拟机隔离
      
    虚拟机隔离有两个好处:
    
    其一,前面讲过的——某个虚拟机被入侵不会影响到其它虚拟机
    
    其二,可以通过设置虚拟机的虚拟网卡模式,确保该虚拟机内的【所有】软件都无法【直接】联网(教程参见:原理、配置)。換而言之,就是【强制】所有的网络流量都经由多重代理。
      
    之所以要从部署方式上进行【强制】,是为了避免有些网络软件没有走代理,擅自独立联网。这种情况下就存在"流量注入"的风险。
          
    3. Guest OS 定期回退快照
      
    其实只要做到前面两点,临侦设备就很难往你的系统中植入木马了。但是为了以防万一,俺还是养成了一个好习惯——定期(大约几天)回退一次 Guest OS 的快照。
      
    如果你熟悉虚拟化软件的快照功能,自然知道俺这么干的好处是啥。
          
    4. 定期更新重要的软件/系统补丁
      
    补丁的重要性,俺在《如何防止黑客入侵》系列中已经有介绍,此处不再唠叨。
      
    俺至少对"Host OS、Guest OS、虚拟化软件、浏览器、翻墙代理"都会定期升级。
          
    5. Host OS 基本不干啥事儿
      
    (看了某读者的留言,想起来补充这条)
      
    俺平时的各种操作(上网、办公、编程 )全都在 Guest OS 中进行,大部分俺常用的软件也都是装在 Guest OS 中。Host OS 基本不干啥事儿(主要是用来运行虚拟化软件)。
      
    好处是:大大降低了 Host OS 被直接入侵的风险。Host OS 是很重要滴——万一被入侵,则所有的 Guest OS 也陷入危险之中。
    
    ★对"全程加密"的困惑及解答
          
    当年俺在博客评论区介绍"全程加密"的经验时,有热心读者提出了几个困惑。针对这些困惑,把俺当时的回复整理如下。
      
    如果你看完本文还有其它困惑,欢迎在本文下方留言。
    
    ◇困惑1
          
    疑问:
      
    如果采用全程加密,那么自己的公网 IP 对外的流量【全都是】加密流量。反而容易引起怀疑。
          
    俺的解答:
      
    公网 IP 的对外流量大致可以分两种:"在家上网"和"在公司上网"。
      
    对于"公司上网"——
    
    通常每个公司分配的公网 IP 都只有少数几个。公司中所有的人都是通过这少数几个公网 IP 对外访问。即使你采用"全程加密",但是其他同事未必会这么干(大部分网民的流量应该是以非加密为主)。所以,公司的公网 IP 对外的流量,加密的比例依然很低。
      
    对于"家庭上网"——
    
    如果你家里还有其他家庭成员在上网,你们共用一个公网出口。此时,效果等同于刚才提到的"公司上网"——你的家人显然会有一些明文的流量,所以你家的对外流量【不会】全部是密文。
    
    如果你属于"一人吃饱全家不饿"的类型,那么你可以单独开一个虚拟机专门用来做些普通的网页流量,甚至可以在该虚拟机中开个浏览器不断播放视频。这样一来,你家的对外流量中,加密流量的比例就不会这么大了。
    
    ◇困惑2    
      
    疑问:
      
    如果采用全程加密,那么在使用某些国产软件(比如 QQ)或国内网站(比如新浪微博)的时候,服务器记录的"访问者 IP"总是来自境外,反而容易引起怀疑。
          
    俺的解答:
      
    首先,如果你真的很关注安全性(尤其是隐私性),就应该尽量远离那些国产软件或国产网站提供的服务。具体原因,俺在博客中已经了唠叨很多次。
      
    如果你不得不用这些东西,还有一个办法:找一个【墙内】的代理服务器,让这个代理服务器成为你多重代理的【最后一跳】。在这种方式下,那些国内公司的服务器(比如 QQ 服务器)看到的"访问者IP"就是来自墙内了。
    
    ★结尾    
      
    写本文最大的遗憾就是:这篇博文有可能会帮到某些犯罪分子。
      
    其实俺也很无奈,因为俺首先要帮助那些"反党人士、民运人士、维权人士"对抗国保部门的监控。
      
    天朝实现政治变革的路还很长,希望有更多的"反党人士、民运人士、维权人士"能躲过国保部门的监控,为变革之路尽微薄之力。

(博讯 boxun.com) 
4401628分享: