鄙人从事安全行业多年, 学习了很多当偷儿(不是), 是抓偷儿的本领, 年过中年深刻明白, 给公司打工拿到的薪水那是自己应得的, 只有摸鱼领到的工资才是自己赚到的。摸鱼有益身心健康自不必多说, 本文主要分享如何安全的摸鱼。
诸如后窗偷窥, 摄像头扫视, 喝水路过, 假扮保洁偷瞄这类依赖自然光散射的招数略显低级, 真正从容的老板应该躺在老板椅上拿着三折叠奏折就把员工们看个精光, 懂得都懂. 这依赖安全公司提供的各种监控软件。其中 DNS 服务就是一种常见的简单实施, 只需要在路由器的 DHCP 服务中通告自建的 DNS 服务 IP, 然后绑定员工工位和 IP, 这样就能获取员工访问的每个链接了。
HTTPS 推广开来 我们访问的内容不是加密的吗? 事实上上网笼共分三步, 第一步查询域名对应的 ip, 第二步与 IP 协商通信密钥, 第三步发送加密信息。摸鱼者千算万算不一定算得到其中第一步是未加密的, 这一步可以泄露什么信息呢, 其实就只是域名而已, 很多时候被人听到东京的小号或者加拿大的鼓点, 就已经足够了. 都说摸鱼, 没人会讨论摸的是红鲤鱼还是利捋驴, 这一步泄露的信息是足够的, 知道你在访问 NSFW(Not safe for work)就已经足够.
如何避免被老板或老板的爪牙抓包, 是我们当代打工人不得不认真面对的问题, 本文分享如何安全的摸鱼.
自行修改 DNS
由于 DHCP 通告 DNS 只是一种简单的网络检视实施, 我们也可以简单的绕过, 那就是不接受通告, 自行点开
网络
设置, 修改 DNS 为
223.5.5.5
, 这是阿里云的 DNS 服务, 污染较少, 也不会被老板怀疑.
可惜的是,
UDP:53
是一个非常透明的远古方案, 只需要在上级路由器上设置一个简单规则, 就能把所有的 DNS 请求重定向到预设的 DNS 服务器上, 这样就能轻松的劫持 DNS 请求了.
这条规则是这样的:
iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to-destination
So easy, 老板还可以假装他不知道你知道他在监控你而且修改了 DNS 服务, 然后继续偷窥你到底摸了公司多少鱼.
使用加密 DNS
不同于 HTTPS 加密的是通信内容, DNS 加密的是通信的域名, 现今已有 DNS over HTTPS(
DoH
), DNS over TLS(
DoT
), DNS over QUIC(
DoQ
) 等加密方案.
使用加密 DNS 后唯一泄露的信息将只有加密 DNS 服务器的域名.
几大 DNS 服务商均已经支持
DoH
及
DoT
, 如 Cloudflare, Google, Quad9, Alibaba, Tencent 等.
下面列举其提供的 DoH 和 DoT 服务地址:
- Cloudflare - DoH:
https://cloudflare-dns.com/dns-query
- DoH:https://one.one.one.one/dns-query
- DoT:tls:///cloudflare-dns.com
- DoT:tls://one.one.one.one
- Google - DoH:
https://dns.google/dns-query
- DoT:tls://dns.google
- Quad9 - DoH:
https://dns.quad9.net/dns-query
- DoT:tls://dns.quad9.net
海外的服务器可能会明显影响你的上网速度, 除非特殊需求, 应优先考虑国内的 DNS 服务,国内的 DNS 服务商也提供了加密 DNS 服务:
- Alibaba - DoH:
https://dns.alidns.com/dns-query
- DoT:tls://dns.alidns.com
- Tencent - DoH:
https://doh.pub/dns-query
- DoT:tls://dot.pub
这些免费服务的提供者基本都是广告大户, 用了它们的 DNS, 你的用户画像可能底裤都要画出来, 我会在其它文章分享即使 ip 变化仍能知道"你是你"的方法. 相较之下, 号称"赛博菩萨"的 Cloudflare 可能会稍微好点, 但它是如何利用用户的 DNS 查询数据我并不了解, 目前只是单纯的比较信任它.
DNS 还能做什么
DNS 作为访问互联网的第一步, 是一个很好的监控点, 除了监控, 它还可以做一些访问控制, 如过滤广告, 拦截危险网站, 拦截隐私窃取等.
以上公开的 DNS 服务仅提供域名查询, 缺少访问控制, 这是一种应该允许自定义的能力, 每个人的需求不尽相同, 有的人能忍受一点广告, 有的人一点都忍受不了, 如果广告和内容混用域名, 甚至干脆内容都不看了. 还有很多人, 甚至无法识别广告, 看了就看了.
针对讨厌广告的人分享一个提供基础去广告能力的加密 DNS 服务,
- AdGuardPrivate -
DoH
: https://public.adguardprivate.com/dns-query-DoT
: tls://public.adguardprivate.com
如何设置
请先确认您的设备支持
DoH
或
DoT
:
- Windows 11 以后的系统已经支持
DoH
- macOS Big Sur 以后的系统支持
DoH
及DoT
- iOS 14 以后的系统支持
DoH
及DoT
- Android 9 以后的系统支持
DoT
- Chromium 79 以后的浏览器内核版本支持
DoH
Android
Android 自 Android 9 以后开始原生支持 DNS over TLS(
DoT
),2019 年以后的手机都支持。您可以通过以下方法开启:
- 打开
设置
- 打开
更多连接
- 打开
加密DNS
- 选中
指定加密DNS服务
, 填入:public.adguardprivate.com
自建 DNS 服务有各种实现方式, 如 Adguard, dnsmasq, clash 等, 只有原生 DoT 是对手机性能开销 0 影响, 它不依赖任何三方应用, 不需要任何权限, 不占用任何资源, 也不会影响手机的电量。所以推荐使用原生
DoT
加密 DNS。
Windows
Windows 11 21H2 之后的版本支持原生 Dns over HTTPS(
DoH
), 您可以通过以下方法开启:
- 打开
设置
- 打开
网络和Internet
- 打开
以太网
- 找到
DNS服务器分配
, 点击编辑
1. 选择手动
2. 在首选DNS服务器
IPv4 中填入:111.229.178.206
3. DNS over HTTPS(DoH)选择: 开(手动模板)4. 在DoH模板
中填入:https://public.adguardprivate.com/dns-query
5. 不要勾选失败时使用未加密请求
6. 备选 DNS 服务器您可以选填223.5.5.5
(阿里云公共 DNS 服务),DNS over HTTS 关
, 勾选失败时使用未加密请求
.
iPhone
iOS 14 以上版本支持原生 Dns over HTTPS(DoH)和 DNS over TLS(DoT)加密 DNS, 您可以通过以下方法开启:
- 打开自带浏览器 Safari, 下载配置文件: dot.mobileconfig
- 打开设置
- 打开通用
- 打开VPN 和设备管理
- 选中安装配置文件
macOS
macOS Big Sur 以上版本支持原生 Dns over HTTPS(DoH)和 DNS over TLS(DoT)加密 DNS, 您可以通过以下方法开启:
- 打开自带浏览器 Safari, 下载配置文件: dot.mobileconfig
- 打开系统偏好设置
- 打开网络
- 选中VPN 和设备管理
- 选中安装配置文件
Chromium 系浏览器(79+)
如果不希望引入系统级的加密 DNS,或者使用的 Windows 10 及以前的版本, 可以只在浏览器中设置加密 DNS, Chromium 79+的浏览器版本支持
DoH
, 以下是 Chromium 系(Chrome/Edge/360/QQ 等)浏览器的设置方法:
- 打开 Chrome 浏览器
设置
- 打开
隐私和安全
- 打开
安全
- 滚动到
高级
- 打开
使用安全 DNS
- 在
选择DNS提供商
中填入:https://public.adguardprivate.com/dns-query
免责声明
所谓上有政策下有对策, 员工与老板的攻防不会停止, 本文分享了一点不值一提的 DNS 加密技术, 下面分享点更严格的监控方案. 读者应自行评估公司实力, 选择适合自己的摸鱼方案, 本文作者不对任何因使用本文内容导致的后果负责.
加密 DNS 的确可以隐藏目标域名, 但是隐藏不了目的 IP, 如果企业路由有 IP 审计功能, 记录了所有的连接信息, 然后利用 IP 反查域名, 还是能知道你上了什么网站. 此外, 企业资产安装了企业根证书则可以解密 HTTPS 流量, 自然也可以解密 DoH 流量, 从而知道你访问了什么网站.
代理(包括 DNS 的代理)可以隐藏真实目的 IP, 但流量审计时能看到与某 IP 交互的流量较多, 企业可能会推测你使用了代理, 如果企业不找你谈话, 这的确是最安全的一种摸鱼方式.
版权归原作者 破坏的艺术 所有, 如有侵权,请联系我们删除。