鄙人从事安全行业多年, 学习了很多当偷儿(不是), 是抓偷儿的本领, 年过中年深刻明白, 给公司打工拿到的薪水那是自己应得的, 只有摸鱼领到的工资才是自己赚到的。摸鱼有益身心健康自不必多说, 本文主要分享如何安全的摸鱼。
诸如后窗偷窥, 摄像头扫视, 喝水路过, 假扮保洁偷瞄这类依赖自然光散射的招数略显低级, 真正从容的老板应该躺着老板椅上拿着三折叠奏折就把员工们看个精光, 懂得都懂. 这依赖安全公司提供的各种监控软件。其中 DNS 服务就是一种常见的简单实施, 只需要在路由器的 DHCP 服务中通告自建的 DNS 服务 IP, 然后绑定员工工位和 IP, 这样就能获取员工访问的每个链接了。
HTTPS 推广开来 我们访问的内容不是加密的吗? 事实上上网笼共分三步, 第一步查询域名对应的 ip, 第二步与 IP 协商通信密钥, 第三步发送加密信息。摸鱼者千算万算不一定算得到其中第一步是未加密的, 这一步可以泄露什么信息呢, 其实就只是域名而已, 很多时候被人听到东京的小号或者加拿大的鼓点, 就已经足够了. 都说摸鱼, 没人会讨论摸的是红鲤鱼还是利捋驴, 这一步泄露的信息是足够的, 知道你在访问 NSFW(Not safe for work)就已经足够.
如何避免被老板或老板的爪牙抓包, 是我们当代打工人不得不认真面对的问题, 本文分享如何安全的摸鱼.
由于 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 服务, 然后继续偷窥你到底摸了公司多少鱼.
不同于 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 服务地址:
https://cloudflare-dns.com/dns-query
https://one.one.one.one/dns-query
tls:///cloudflare-dns.com
tls://one.one.one.one
https://dns.google/dns-query
tls://dns.google
https://dns.quad9.net/dns-query
tls://dns.quad9.net
海外的服务器可能会明显影响你的上网速度, 除非特殊需求, 应优先考虑国内的 DNS 服务,国内的 DNS 服务商也提供了加密 DNS 服务:
https://dns.alidns.com/dns-query
tls://dns.alidns.com
https://doh.pub/dns-query
tls://dot.pub
这些免费服务的提供者基本都是广告大户, 用了它们的 DNS, 你的用户画像可能底裤都要画出来, 我会在其它文章分享即使 ip 变化仍能知道"你是你"的方法. 相较之下, 号称"赛博菩萨"的 Cloudflare 可能会稍微好点, 但它是如何利用用户的 DNS 查询数据我并不了解, 目前只是单纯的比较信任它.
DNS 作为访问互联网的第一步, 是一个很好的监控点, 除了监控, 它还可以做一些访问控制, 如过滤广告, 拦截危险网站, 拦截隐私窃取等.
以上公开的 DNS 服务仅提供域名查询, 缺少访问控制, 这是一种应该允许自定义的能力, 每个人的需求不尽相同, 有的人能忍受一点广告, 有的人一点都忍受不了, 如果广告和内容混用域名, 甚至干脆内容都不看了. 还有很多人, 甚至无法识别广告, 看了就看了.
针对讨厌广告的人分享一个提供基础去广告能力的加密 DNS 服务,
请先确认您的设备支持DoH
或DoT
:
DoH
DoH
及DoT
DoH
及DoT
DoT
DoH
Android 自 Android 9 以后开始原生支持 DNS over TLS(DoT
),2019 年以后的手机都支持。您可以通过以下方法开启:
设置
更多连接
加密 DNS
指定加密 DNS 服务
, 填入: public.adguardprivate.com
自建 DNS 服务有各种实现方式, 如 Adguard, dnsmasq, clash 等, 只有原生 DoT 是对手机性能开销 0 影响, 它不依赖任何三方应用, 不需要任何权限, 不占用任何资源, 也不会影响手机的电量。所以推荐使用原生 DoT
加密 DNS 。
Windows 11 21H2 之后的版本支持原生 Dns over HTTPS(DoH
), 您可以通过以下方法开启:
设置
网络和 Internet
以太网
DNS 服务器分配
, 点击编辑
手动
首选 DNS 服务器
IPv4 中填入: 111.229.178.206
DoH 模板
中填入: https://public.adguardprivate.com/dns-query
失败时使用未加密请求
223.5.5.5
(阿里云公共 DNS 服务), DNS over HTTS 关
, 勾选失败时使用未加密请求
.iOS 14 以上版本支持原生 Dns over HTTPS(DoH)和 DNS over TLS(DoT)加密 DNS, 您可以通过以下方法开启:
macOS Big Sur 以上版本支持原生 Dns over HTTPS(DoH)和 DNS over TLS(DoT)加密 DNS, 您可以通过以下方法开启:
如果不希望引入系统级的加密 DNS ,或者使用的 Windows 10 及以前的版本, 可以只在浏览器中设置加密 DNS, Chromium 79+的浏览器版本支持DoH
, 以下是 Chromium 系(Chrome/Edge/360/QQ 等)浏览器的设置方法:
设置
隐私和安全
安全
高级
使用安全 DNS
选择 DNS 提供商
中填入: https://public.adguardprivate.com/dns-query
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<array>
<dict>
<key>DNSSettings</key>
<dict>
<key>DNSProtocol</key>
<string>TLS</string>
<key>ServerName</key>
<string>public.adguardprivate.com</string>
</dict>
<key>PayloadDescription</key>
<string>Configures device to use AdGuard Home</string>
<key>PayloadDisplayName</key>
<string>public.adguardprivate.com DoT</string>
<key>PayloadIdentifier</key>
<string>com.apple.dnsSettings.managed.11b4d48d-8e9b-4e15-b7c1-45cb1c564c99</string>
<key>PayloadType</key>
<string>com.apple.dnsSettings.managed</string>
<key>PayloadUUID</key>
<string>e9819f0c-250e-49b7-ad89-c0db078c72f0</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</array>
<key>PayloadDescription</key>
<string>Adds AdGuard Home to macOS Big Sur and iOS 14 or newer systems</string>
<key>PayloadDisplayName</key>
<string>public.adguardprivate.com DoT</string>
<key>PayloadIdentifier</key>
<string>e0b7d7db-e0d1-4bce-bcf4-8ada45d2f5a3</string>
<key>PayloadRemovalDisallowed</key>
<false/>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>0404cb98-3621-4f97-9530-b18288633d40</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>
给员工设备装上根证书, 后边属于企业服务, 感兴趣的老板得多花些钱了.
或者把这些钱发给员工, 员工有了主人公精神, 自然就不会再摸鱼了. Maybe.
1
yiqiao 9 天前
安装后代理软件无法使用,以及如果本地开发配置指向 127.0.0.1 相关地址访问不了。
|
4
povsister 9 天前
不是,哥们,一个 DNS 泄露问题你硬是整个一篇万字文。。我都怀疑你是不是要中途突然开始丝滑连招了,结果居然就这么结束了。。
另外,如果公司老板拿着你的 nslookup 记录敲打你,这种公司有存在必要性吗。 |
5
maladaxia 9 天前
太长没看
用的着这么麻烦吗 挂个代理 dns 也是会走代理的 |
6
PolarBears 9 天前
如果你公司会审计流量你还敢用公司的网摸鱼?甚至用公司的设备摸?如果那么严又想摸鱼的话不如换个公司摸吧。
|
8
maxwellz 9 天前
IPguard:你继续,我听着呢
|
10
jqknono OP @povsister 我天天看我家的家用电器浏览了什么网站,小爱同学最爱的就是逛百度和淘宝,我的两个石头扫地机每天逛淘宝,猫砂盆也逛淘宝,我给都禁了
|
12
jqknono OP @maxwellz 这种没辙,有 dns 嗅探,IP 反查域名的企业也有能力抓,最终结果就是只有全局代理能保证不泄漏,但是流量审计又会发现异常流量,本文章方案仅限公司不装根证书的企业,装了根证书的就老老实实用手机流量摸吧
|
15
renmu 9 天前 via Android
如果使用全局 vpn,还能被察觉吗?
|
16
kandaakihito 8 天前
1. 如果电脑本身是公司资产而且被加域了或者安装了深信服,那没救;
2. 如果是自己的设备,直接开梯子全局吧,记得开 TUN 模式; |
17
danbai 8 天前
我的建议是买个服务器远程上去摸
|
18
lyxxxh2 8 天前
直接摸呗,别太过就行。
|
20
z919126592 8 天前 via Android
我的建议是带薪拉屎
|
21
yfmir 8 天前
刚好有类似痛点,咨询下大佬,下面情况有办法破么,macos 系统
1. 公司拦截了部分网站,访问后网页提示 McAFee Skyhigh ,开代理也无法访问 2. 疑似有 DNS 污染,无法使用 Clash ( Tun 模式和系统代理均无法使用,nameserver 和 default-nameserver 都配置好了),可以 ping 通节点,但是无法连接上,看日志是无法 resolve 到节点的 IP ,使用的 hy2 协议,系统 dns 也修改过了 |
22
h1298841903 8 天前
电脑自身就安装了监控软件,OCR 一分析就行了,而且正常来说,公司能访问网络都应该都黑白名单。
|
23
jqknono OP @yfmir 能够劫持网页内容的话可能是装了根证书了, 这种情况你需要确认公司是拦截了 DNS 请求, 还是拦截了 IP, 如果是拦截 IP 则无解. 如果是拦截了域名解析, 需要更换加密 DNS, 用这个 dns 查询工具:https://github.com/natesales/q, 确认加密 dns 是否可以正常获得域名解析结果.
|
24
MrVito 4 天前
啊,我也想问下大佬。
1. 我突然发现公司的网络没法访问抖音了,这种情况下我有没有办法绕过这个屏蔽呢?除了全局代理之外 2. 怎么判断公司有没有装根证书呀? |
25
jqknono OP @MrVito
1. 需要确认是域名屏蔽还是 ip 屏蔽, 浏览器换个加密 dns 试试能不能访问 2. windows 查看根证书方法, Win+R , 执行 certmgr.msc , 在 Trusted Root Cert ... 下, 看看有没有包含自己公司名相关的证书. |
26
MrVito 4 天前
@jqknono 我用了你帖子里面的 https://public.adguardprivate.com/dns-query 这个 DNS 服务器,用你回复里面的 q 那个 DNS 查询工具,q www.doubin.com 返回值是 wsarecv: An existing connection was forcibly closed by the remote host.
|
27
MrVito 4 天前
@MrVito 打错,q www.douyin.com
|
28
jqknono OP |
29
hexiaodai 4 天前 via iPhone
加一张无线网卡是不是就可以了?
|