使用域名存储任意二进制数据

2024-09-19 20:21:27 +08:00
 iqoo

花两小时写了个小玩具~ 将任意数据编码成 0123456789abcdefghijklmnopqrstuvwxyz-_. 这 39 种字符,从而可使用泛域名作为数据载荷。

演示:

https://webtun.net

测试 1:

https://ieexilte62qr8gi_3y76.webtun.net

测试 2:

http://kdogjdmfpm9p7.6d5zsei2npvtpih.tk79f4585ks94nxxo9ajk27bna85p3z4w29wa43jrivwdner9cq7nddhedeipqm.zor5dvt35zb04is4sl361pcsefqbhujln3brpwangxm.5.a14v59vq8zp-s49_s7t7-a5jhy_3m2bj9zlgd8od.m0.j7avjurm6.p5wvkbfwlflo-4_l44zavnycho6p3y0vvu3056nm0140h1da.webtun.net

测试 3:

http://vhrxs88.aonmd_1j53i6tv6lb.s.rzkobvrsrhmcxh9s4oscdwl5pmv8jznshsgmy1japb045wxz2kh1zqwqyuwaab1.3nap.wfes65.utd--5s3.webtun.net

测试 4:

http://eqh9ah1obms5ofl-v0r92s8-469-z53dbz1w3goa2zgnjmsupxkrnfn1r.eu2.7am27y1bferkctlc964qi8g88stn8u5c04pcyc1lf4wcf9kpt511dwa748lkxhy.gmn3d6ctm5msuas7utal8_5h_we5y-oc_gq6fm6icwwjpo6haa481mjlacoy3_.k19.webtun.net

由于域名每段长度必须大于 0 小于 64 ,因此边界位置不能使用点号,只能使用剩余的 38 个字符,因此总体编码率略低于 Base39 。

当然这个域名不够短,本来还可以再多存储几个字节的信息。不过短域名比较贵,暂时不折腾。

另外 HTTPS 也是个麻烦事,目前只给一级域名用上证书,其他的仍然是 HTTP 。

3624 次点击
所在节点    分享创造
30 条回复
Solix
2024-09-20 08:40:24 +08:00
已经有二维码存储二进制文件了,好像是在 github 上,利好灰产
baobao1270
2024-09-20 08:43:29 +08:00
终于遇到这个和我一样想法的人了
这个技术最合适的应用是侧信道攻击
把想要偷偷发送的数据通过域名编码,发起 DNS 查询
然后通过 DNS Log 接收数据
ShinichiYao
2024-09-20 09:25:38 +08:00
昨天刚看到一个可以把 30M 以内文件编码成二维码的工具
BadReese
2024-09-20 09:33:28 +08:00
这个还真是很有意思
chenxuuu
2024-09-20 11:55:11 +08:00
https 问题可以用泛域名证书解决,或者直接挂到 cf 得了,不用管可省事
smartiscool
2024-09-20 14:55:25 +08:00
DGA 检测分析,现在任何一个正规的网安产品都能检测出来,不要拿来做坏事哦
enderftt
2024-09-20 17:09:35 +08:00
@ShinichiYao #23 啥工具 还找得到么
ob
2024-09-20 17:28:59 +08:00
@ShinichiYao 很怀疑啥工具能让二维码存这个数量?方便共享吗?
ShinichiYao
2024-09-23 10:04:35 +08:00
LoreLiu
327 天前
@a1210968738 #14 印象中证书不能匹配多级子域名,对于 cloudflare 的边缘证书 *.domain 只能匹配 sub.domain

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

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

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

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

© 2021 V2EX