通过 DNS 发送消息的实现

4 天前
 deplives

最近工作不太饱和,闲的无聊想了一个点子: 如果在某些网络环境中,只有 DNS 协议请求能够通过,那能否通过某种特殊的渠道实现互相的消息传递。 然后研究了一下,实现了一个只通过 DNS 就可以传输文本消息的小玩具

并且搭建了一个对应的 DNS 服务器

https://gist.githubusercontent.com/bob-zebedy/6e1949cee93d8df401246a858ebfbaf0/raw/d90210ac548380aacd4d8cf602b8aaa6b870e946/dnsay.py

使用方法:下载上面的 py 脚本 python3 dnsay.py --dns-host 144.34.239.89 --group test

--dns-host 144.34.239.89 就是我搭建的特殊的 dns 服务器

--group 可以理解为聊天室,相同的 group 才能收到彼此的消息

欢迎品尝

1834 次点击
所在节点    分享创造
11 条回复
lzoje
4 天前
上上周阮一峰周报有一个用 dns 代理免费用飞机 wifi 的。
julyclyde
4 天前
古代还有 ICMP 的
python35
4 天前
之前还有 xshell 的后门就是用 dns 协议上传用户名密码 https://ti.qianxin.com/blog/articles/analysis-of-xshell-ghost/
pagxir
4 天前
这个是古早点子了,看这个 https://github.com/yarrick/iodine
wangweiggsn
3 天前
py 3.13.9, 报 ModuleNotFoundError: No module named 'dns',运行 pip install dns.resolver 报 ERROR: Could not find a version that satisfies the requirement dns.resolver (from versions: none),放弃。
xjzshttps
3 天前
我记得之前还有 dns 隧道
Greatshu
3 天前
有个叫 DCM 的木马,也是利用 DNS 通信,据说是国家队作品
deplives
3 天前
@wangweiggsn 哥,你需要的是 pip install dnslib dnspython cryptography
wangweiggsn
3 天前
@deplives 感谢,可以了,进去看了下,没人在里面说话,又退出了。
julyclyde
2 天前
@deplives 嘿嘿,挺烦这种 pip 和 import 名字不同的库
感觉他们很不讲究
chennqqi
1 天前
DNS 隧道

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1168703

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX