
ShadowNet v11.1.0
ShadowNet 是一个匿名路由协议,它强制所有系统范围的连接都通过 Tor,同时实现类似 Mixnet 的技术并强化操作系统。
非常感谢 Jesus 让这个项目获得关注!趁还来得及,转向 Jesus 吧。:) 祂爱你
为了进一步增强你的隐私和安全;在你的主机操作系统上使用 ShadowNet,并在虚拟机中运行 Whonix 来浏览网页。或者你可以使用 GhostBox。(由反监控机构发布的一款沙盒工具)
在此处 Git-clone GhostBox:https://github.com/antisurveillanceagency/GhostBox
在此处下载 Whonix:https://www.whonix.org/ (请使用像 KVM 这样的安全虚拟机软件)
🛡️ ShadowNet:流不变匿名协议(Tor + Mixnet 技术)
不再像普通 tor 那样依赖混入人群来实现匿名,现在保持独特性才是真正的匿名!
适用于 Kali Linux/Parrot OS(其他 Linux 发行版)
安装:
chmod +x 777 *
sudo bash setup.sh
gcc -static shadownet.c -o shadownet -lm
sudo ./shadownet (start/stop)
异步混淆层:
ShadowNet 是一个高级网络加固框架,可将标准工作站转变为“一个人的私有 Mixnet”。通过强制所有系统流量经过一个同步的、时间混淆的、大小统一的隧道,它消除了国家级对手用来去匿名化用户的行为元数据。 🛡️ 核心进化特性
ShadowNet 强制所有系统级流量经过 Tor,同时实现类似 Mixnet 的技术(受 Nym 启发)。
- 异步消息队列(SFQ)/抖动 随机化延迟/重排序和混洗
ShadowNet 用随机公平队列(Stochastic Fairness Queuing)取代标准的线性数据包释放。
逻辑:数据包不再以可预测的“滴答”式投递,而是被哈希到多个内部“桶”中,并使用混洗算法释放。抖动还会随机延迟启动连接/断开连接的时间,NSA 不会知道你何时首次连接到 ShadowNet、何时断开连接,这一切都被延迟了。抖动同样也应用于掩护流量。
优势:它摧毁了时序关联攻击。通过重新混洗每个数据包的内部顺序,它确保到达你入口节点的数据节奏永远不会与离开出口节点的数据节奏相匹配。
- 多层诱饵握手
ShadowNet 在建立其主要安全隧道时,会创建一个“TLS 噪声底”(通过 tor 的掩护流量)。
逻辑:在初始化时,协议会与高流量、“安全”的全球域名(Google、Yahoo、Medium)执行后台握手。
- 硬件时钟漂移模拟
ShadowNet 超越了“完美时间同步”,转而模拟物理硬件的不完美性。
逻辑:使用 adjtimex,协议会向系统时钟引入微小的随机振荡(漂移)。
优势:虚拟机和自动化机器人通常拥有“完美”的毫秒级精确时钟。真实的物理笔记本电脑存在微小振动,会导致时间漂移。模拟这种漂移可防止时钟偏差指纹识别,使你的机器看起来像真实的物理设备,而不是一个匿名化实例。
- 随机数据包大小 针对每个突发和每个单独数据包的时序。(逐包与逐突发)
对于离开你计算机的每个突发,现在都会为其中每个数据包分配不同的数据包大小。(这击败了指纹识别链路)
优势:在线路上传输的每一个数据“切片”在物理上都是相同的。观察者无法区分 1KB 文本消息和 10MB 文件传输,因为每个数据包“信封”的重量都完全相同。
- 随机化 Loopix-poisson 恒定比特率(CBR)整形(100kbps-5mbit)(掩护流量)-> 每会话通过 Tor P2P 网络发送
无论你的实际活动如何,ShadowNet 都会维持一个有纪律的 100kbps-5mbit 脉冲。每个会话都会为你分配一个固定值。
逻辑:如果你处于空闲状态,协议会维持 loopix-poisson 掩护流量。如果你处于活动状态,它也会维持相同的掩护流量。
优势:你的网络特征始终保持为 loopix 一致的掩护流量。对手无法看到流量中的“尖峰”,而这些尖峰本可表明你何时正在积极使用计算机、何时处于空闲状态。
🛡️ 反取证与防泄漏保护 6. “WebRTC 杀手”防火墙
WebRTC 是现代浏览器中 IP 泄漏的主要途径。ShadowNet 实施严格的 UDP 拒绝策略。
优势:它阻止所有非 DNS 的 UDP 流量。由于 WebRTC 需要随机 UDP 端口来发现你的“真实”IP,这条防火墙规则有效地“致盲”了浏览器泄漏你身份的能力。
- 操作系统指纹变形(ttl=128)
ShadowNet 修改内核的默认 IP 行为,以模拟标准 Windows 工作站。
逻辑:将“生存时间”(TTL)从 64(Linux)改为 128(Windows),并禁用 TCP 时间戳。
优势:你成为数十亿 Windows 用户中的“大海捞针”。对于自动化网络传感器而言,你的流量看起来来自标准家用 PC,而不是专门的隐私操作系统。
- 安全分布式时间同步(时间匿名化)
零泄漏代理:停止/掩盖 systemd-timesyncd、chrony 和 ntp。
- 易失性内存与熵扰乱
内存清除:停用后,脚本会丢弃系统缓存并清除易失性元数据,不在 RAM 中留下会话的“残留”。
- 熵 IAT(数据包发送之间的不可预测时序)
由于抖动已经以随机时间发送数据包,为了进一步增强抖动,加入了熵 IAT,使得在数据包发送之间,它们永远不会以相同的随机顺序发送(从而使它们发送的随机化变得不可预测)。已为离开机器的每个突发、启动/断开延迟、MAC 地址更改和 DNS 请求添加。
- 时间抖动:
现在,你计算机主板内的晶体不会向 NSA 这样的全球监控对手泄露网络硬件信息,例如其品牌或型号。突发中的每个数据包都有一个熵 IAT 延迟,这进一步削弱了他们的追踪方法。已为离开你机器的每个突发以及每个单独发送的数据包添加熵 IAT。这为每个数据包的时序增加了随机延迟。
- 基于会话的别名固定:
现在,每个会话你都会被分配以下别名之一
Alias-Fixed -> 在整个会话期间,你将被分配一个随机选取的类似 sphinx 的固定数据包
- 麦克风/摄像头 终止 + 卸载:
防止远程音频/视频监控。
传感器 卸载模块:
防止基于振动的键盘记录。
BIOS 锁定 chattr +i:
防止固件级恶意软件(Bootkit)。
电源锁定 Governor:
更改 掩盖 CPU 频率侧信道。
-
类似 Loopix Mixnet 的技术:
作为熵 IAT 延迟、数据包重排序和混洗的额外辅助而添加。
🚀 快速开始
安装依赖:sudo ./setup.sh
初始化 ShadowNet:sudo ./shadownet (start/stop)
验证匿名性:检查你的 IP 并运行 WebRTC 泄漏测试。
停用:sudo ./shadow.sh stop(将系统恢复到原始状态)。
注意:ShadowNet 专为高延迟、高安全环境设计。通过优先考虑流不变性而非速度,它提供了针对世界上最先进流量分析系统的保护。
终止开关已启用!默认阻止所有非 tor 流量!如果浏览时连接失败,你的互联网将被切断。这将防止 IP 泄漏。
MAC 地址欺骗:为每个会话随机欺骗 MAC 地址。
诊断测试:
- 抖动与 SFQ 随机化测试
这验证内核正在主动重排序数据包,以打破基于时序的关联(打破你数据的“节拍器”)。
命令: Bash
tc -s qdisc show dev wlo1
ping -c 20 127.0.0.1
应查找的内容:输出必须显示 qdisc sfq 且 perturb 10sec。检查 sent 和 backlog 统计信息;如果它们递增,则“混洗”引擎正在运行。此外,当你尝试 ping 命令时,它应返回随机化的延迟时序。
- TLS 噪声底稳定性(“嗡鸣”测试)
这确认体积掩盖足够高,可以隐藏你实际的浏览尖峰。
命令: Bash
nload (interface)
Parrot 的 Wifi 接口通常是 'wlo1',对于 Kali linux 则是 'wlan0'
目标:在空闲时监控“Outgoing”速率。它应维持高于 5-20mbit 的稳定基线。
- 随机数据包大小
这确保每个传出数据包的大小看起来都是随机的,从而击败“数据包大小指纹识别”。
命令: Bash
sudo tcpdump -i (interface) -n -c 20 'host 1.1.1.1'
目标:输出中的每个数据包都必须显示随机长度。空闲时长度出现任何偏差都意味着“随机钳制”已被破坏。
- 时间匿名化(时间指纹)
验证你的硬件没有泄露唯一的 CPU 时序或运行时间数据。
命令: Bash
cat /proc/sys/net/ipv4/tcp_timestamps && ping -c 3 127.0.0.1
目标:tcp_timestamps 必须返回 0。ping 必须返回 ttl=128,以匹配 Windows 模拟签名。
- MAC 身份完整性
确保第 2 层欺骗确实在硬件上处于活动状态。
命令: Bash
cat /sys/class/net/wlo1/address && ethtool -P (interface)
目标:第一个地址(活动)不得与第二个地址(永久)匹配。
- 易失性 RAM(反取证):
ls -l /tmp/shadownet_mac.bak && df -h /tmp
这应返回 cannot access/not found
主权要求:备份文件必须存在于 /tmp 中。注意:使用 df -h /tmp(不带末尾斜杠)来验证它是否挂载为 tmpfs,以便在断电时立即擦除。
- 终止开关完整性:
启动 shadownet 工具
在终端 1 中运行:
while true; do curl --connect-timeout 2 -s https://check.torproject.org/api/ip | grep -oE "\b([0-9]{1,3}.){3}[0-9]{1,3}\b" || echo "BLOCK ENGAGED"; sleep 1; done
# 在终端 2 中运行:
sudo systemctl stop tor
如果你看到 tor ip,它会继续刷屏,只需关闭 tor,你就会看到它显示 'BLOCK ENGAGED'。当它在突然故障/断开后阻止你的 ip 泄漏时,你就知道终止开关正在工作
2. WebRTC 与本地 IP 泄漏测试(浏览器级别)
这验证你的浏览器无法被“诱骗”通过 JavaScript 泄露你真实的本地 IP 或硬件 MAC。
命令:当 ShadowNet 处于活动状态时,在你的终端中运行以下命令,查看系统“认为”唯一有效的路由是什么:
Bash
ip route get 1.1.1.1
目标:它应显示流量通过 127.0.0.1 或你指定的 TRANS_PORT 网关路由。
验证:打开你的浏览器并访问泄漏测试网站(如 browserleaks.com/webrtc)。在 WebRTC Local IP 下,它应显示 "N/A"、"Timed out" 或 Tor 内部 IP(10.x.x.x)。它绝不能显示你真实的本地 IP(192.168.xxx.xxx)