跳至主要内容

深入理解GFW:DNS污染

原文地址是深入理解GFW:DNS污染,帖子写于2009年,对作者表示感谢

翻墙新手们往往遇到这样的问题:我明明已经设置了socks代理为127.0.0.1:xxxx,为什么还是上不去youtube?这时经验丰富的翻墙高手就会告诉你:firefox需要设置network.proxy.socks_remote_dns为true,也就是远程解析域名。这是怎样一回事呢?为什么要远程解析?这就涉及到了GFW的DNS污染技术。
DNS(Domain Name System)污染是GFW的一种让一般用户由于得到虚假目标主机IP而不能与其通信的方法,是一种DNS缓存投毒攻击DNS cache poisoning)。其工作方式是:对经过GFW的在UDP端口53上的DNS查询进行入侵检测,一经发现与关键词相匹配的请求则立即伪装成目标域名的解析服务器(NS,Name Server)给查询者返回虚假结果。由于通常的DNS查询没有任何认证机制,而且DNS查询通常基于的UDP是无连接不可靠的协议,查询者只能接受最先到达的格式正确结果,并丢弃之后的结果。对于不了解相关知识的网民来说也就是,由于系统默认使用的ISP提供的NS查询国外的权威服务器时被劫持,其缓存受到污染,因而默认情况下查询ISP的服务器就会获得虚假IP;而用户直接查询境外NS(比如OpenDNS)又可能被GFW劫持,从而在没有防范机制的情况下仍然不能获得正确IP。然而对这种攻击有着十分简单有效的应对方法:修改Hosts文件。但是Hosts文件的条目一般不能使用通配符(例如*.blogspot.com),而GFW的DNS污染对域名匹配进行的是部分匹配不是精确匹配,因此Hosts文件也有一定的局限性,网民试图访问这类域名仍会遇到很大麻烦。

观测DNS污染

“知己知彼,百战不殆”。这一节我们需要用到前面提到的报文监听工具,以及参考其DNS劫持诊断一节。在Wireshark的filter一栏输入udp.port eq 53可以方便地过滤掉其他无关报文。为了进一步减少干扰,我们选择一个并没有提供域名解析服务的国外IP作为目标域名解析服务器,例如129.42.17.103。运行命令nslookup -type=A www.youtube.com 129.42.17.103。如果有回答,只能说明这是GFW的伪造回答,也就是我们要观测和研究的对象。

伪包特征

经过一番紧密的查询,我们可以发现GFW返回的IP取自如下列表:
4.36.66.178
203.161.230.171
211.94.66.147
202.181.7.85
202.106.1.2
209.145.54.50
216.234.179.13
64.33.88.161
关于这八个特殊IP,鼓励读者对这样两个问题进行探究:1、为什么是特定的IP而不是随机IP,固定IP和随机IP各自有什么坏处;2、为什么就是这8个IP不是别的IP,这8个IP为什么倒了GFW的霉?关于搜索这类信息,除了www.google.com之外,www.bing.com有专门的搜索IP对应网站的功能,使用方法是输入ip:IP地址搜索。www.robtex.com则是一个专门收集域名解析信息的网站。欢迎读者留下自己的想法和发现:lol:。
从Wireshark收集到的结果分析(实际上更好的办法是,将结果保存为pcap文件,或者直接使用tcpdump,由tcpdump显示成文本再自行提取数据得到统计),我们将GFW发送的DNS污染包在IP头部的指纹特征分为两类:
  • 一型:
    • ip_id == ____(是一个固定的数,具体数值的查找留作习题)。
    • 没有设置“不分片”选项。
    • 没有设置服务类型。
    • 对同一对源IP、目标IP,GFW返回的污染IP在上述8个中按照给出的顺序循环。与源端口无关、与源IP目标IP对相关。
    • TTL返回值比较固定。TTL为IP头部的“Time to Live”值,每经过一层路由器这个值会减1,TTL为1的IP包路由器将不再转发,多数路由器会返回源IP一条“ICMP time to live exceed in transit”消息。
  • 二型:
    • 每个包重复发送3次。
    • 没有设置“不分片”选项。
    • 设置了“保障高流量”服务类型。
    • (ip_id + ? * 13 + 1) % 65536 == 0,其中?为一个有趣的未知数。ip_id在同一个源IP、目标IP对的连续查询之间以13为单位递减、观测到的ip_id的最小值和最大值分别为65525(即-11,溢出了!)和65535。
    • 对同一对源IP、目标IP,GFW返回的污染IP在上述8个中按照给出的顺序循环。与源端口无关、与源IP目标IP对相关。
    • 对同一对源IP、目标IP,TTL返回值时序以1为单位递增。TTL在GFW发送时的取值有64种。注:源IP接收到的包的TTL被路由修改过,所以用户观测到的TTL不一定只有64种取值,这是由于网络拓扑变化的原因导致的。一型中的“比较固定”的“比较”二字也是考虑到网络拓扑偶尔的变化而添加的,也许可以认为GFW发送时的初始值是恒定的。
(以上结果仅保证真实性,不保证时效性,GFW的特征随时有可能改变,尤其是时序特征与传输层特征相关性方面。最近半年GFW的特征在很多方面的变化越来越频繁,在将来介绍TCP阻断时我们会提到。)
还可以进行的实验有:由于当前二型的TTL变化范围是IP个数的整数倍,通过控制DNS查询的TTL使得恰好有GFW的返回(避免动态路由造成的接收者观察到的TTL不规律变化),观察IP和TTL除以8的余数是否有对应关系,在更改源IP、目标IP对之后这个关系是否仍然成立。这关系到的GFW负载平衡算法及响应计数器(hit counter)的独立性和一致性。事实上对GFW进行穷举给出所有关于GFW的结果也缺乏意义,这里只是提出这样的研究方法,如果读者感兴趣可以继续探究。
每次查询通常会得到一个一型包和三个完全相同的二型包。更换查询命令中type=Atype=MX或者type=AAAA或者其它类型,可以看到nslookup提示收到了损坏的回复包。这是因为GFW的DNS污染模块做得十分粗制滥造。GFW伪造的DNS应答的ANSWER部分通常只有一个RR组成(即一条记录),这个记录的RDATA部分为那8个污染IP之一。对于二型,RR记录的TYPE值是从用户查询之中直接复制的。于是用户就收到了如此奇特的损坏包。DNS响应包的UDP荷载内容特征:
  • 一型
    • DNS应答包的ANSWER部分的RR记录中的域名部分由0xc00c指代被查询域名。
    • RR记录中的TTL设置为5分钟。
    • 无论用户查询的TYPE是什么,应答包的TYPE总是设置为A(IPv4地址的意思)、CLASS总是设置为IN。
  • 二型
    • DNS应答包的ANSWER部分的RR记录中的域名部分是被查询域名的全文。
    • RR记录中的TTL设置为1天。
    • RR记录中的TYPE和CLASS值是从源IP发送的查询复制的。
其中的术语解释:RR = Resource Record:dns数据包中的一条记录;RDATA = Resource Data:一条记录的数据部分;TYPE:查询的类型,有A、AAAA、MX、NS等;CLASS:一般为IN[ternet]。

触发条件

实际上DNS还有TCP协议部分,实验发现,GFW还没有对TCP协议上的DNS查询进行劫持和污染。匹配规则方面,GFW进行的是子串匹配而不是精确匹配,并且GFW实际上是先将域名转换为字符串进行匹配的。这一点值得特殊说明的原因是,DNS中域名是这样表示的:一个整数n1代表以“.”作分割最前面的部分的长度,之后n1个字母,之后又是一个数字,若干字母,直到某次的数字为0结束。例如www.youtube.com则是"\x03www\x07youtube\x03com\x00"。因此,事实上就可以观察到,对www.youtube.coma的查询也被劫持了。

现状分析

  • 4.36.66.178,关键词。whois:Level 3 Communications, Inc. 位于Broomfield, CO, U.S.
  • 203.161.230.171,关键词。whois:POWERBASE-HK位于Hong Kong, HK.
  • 211.94.66.147,whois:China United Network Communications Corporation Limited位于Beijing, P.R. China.
  • 202.181.7.85,关键词。whois:First Link Internet Services Pty Ltd.位于North Rocks, AU.
  • 202.106.1.2,whois:China Unicom Beijing province network位于Beijing, CN.
  • 209.145.54.50,反向解析为dns1.gapp.gov.cn,新闻出版总署的域名解析服务器?目前dns1.gapp.gov.cn现在是219.141.187.13在bjtelecom。whois:World Internet Services位于San Marcos, CA, US.
  • 216.234.179.13,关键词。反向解析为IP-216-234-179-13.tera-byte.com。whois:Tera-byte Dot Com Inc.位于Edmonton, AB, CA.
  • 64.33.88.161,反向解析为tonycastro.org.ez-site.net, tonycastro.com, tonycastro.net, thepetclubfl.net。whois:OLM,LLC位于Lisle, IL, U.S.
可见上面的IP大多数并不是中国的。如果有网站架设到了这个IP上,全中国的Twitter、Facebook请求都会被定向到这里——好在GFW还有HTTP URL关键词的TCP阻断——HTTPS的请求才构成对目标IP的实际压力,相当于中国网民对这个IP发起DDoS攻击,不知道受害网站、ISP是否有索赔的打算?
我们尝试用bing.com的ip反向搜索功能搜索上面那些DNS污染专用IP,发现了一些有趣的域名。显然,这些域名都是DNS污染的受害域名。
  • 例如倒霉的edoors.cn.china.cn,宁波中国门业网,其实是因为edoors.cn被dns污染。一起受害的还有chasedoors.cn.china.cn,美国蔡斯门业(深圳)有限公司。
  • 还有*.sf520.com,似乎是一个国内的游戏私服网站。www.sf520.com也是一个私服网站。可见国内行政体系官商勾结之严重,一个“国家信息安全基础设施”竟然还会用来保护一些网游公司的利益。
  • 此外还有一些个人blog。www.99tw.net也是一个游戏网站。
  • 还有www.why.com.cn,名字起得好。
  • 还有www.999sw.com 广东上九生物降解塑料有限公司生物降解树脂|增粘母料|高效保水济|防洪 邮编:523128……这又是怎么一回事呢?不像是被什么反动网站连坐的。还有人问怎么回事怎么会有那么多IP结果。
  • www.facebook.comwww.xiaonei.com,怎么回事呢?其实是因为有人不小心把两个地址连起来了,搜索引擎以为这是一个链接,其实这个域名不存在,但是解析的时候遭到了污染,就以为存在这个域名了。
  • 倒霉的www.xinsheng.net.cn——武汉市新胜电脑有限公司,因为www.xinsheng.net被连坐。

DNS劫持的防范和利用

之前我们已经谈到,GFW是一套入侵检测系统,仅对流量进行监控,暂没有能力切断网络传输,其“阻断”也只是利用网络协议容易被会话劫持Session hijacking)的弱点来进行的。使用无连接UDP的DNS查询只是被GFW抢答了,真正的答案就跟在后面。于是应对GFW这种攻击很自然的想法就是:
根据时序特性判断真伪,忽略过早的回复。
通常情况对于分别处于GFW两端的IP,其RTT(Round-trip time,往返延迟)要大于源IP到GFW的RTT,可以设法统计出这两个RTT的合适的均值作为判断真伪的标准。另外由于GFW对基于TCP的DNS请求没有作处理,于是可以指定使用TCP而不是UDP解析域名。也可以通过没有部署GFW的线路没有被DNS污染的NS进行查询,例如文章一开始提到的“远程解析”。但黑体字标出的两个条件缺一不可,例如网上广为流传的OpenDNS可以反DNS劫持的说法是以讹传讹,因为到OpenDNS服务器的线路上是经由GFW的。
本质的解决办法是给DNS协议增加验证机制,例如DNSSEC(Domain Name System Security Extensions),客户端进行递归查询(Recursive Query)而不查询已经被污染了的递归解析服务器(Recursive/caching name server)。然而缺点是目前并非所有的权威域名解析服务器(Authoritative name server)都支持了DNSSEC。Unbound提供了一个这样的带DNSSEC验证机制的递归解析程序。
另外GFW的DNS劫持还可能被黑客利用、带来对国际国内互联网的严重破坏。一方面,GFW可能在一些紧急时刻按照“国家安全”的需要对所有DNS查询都进行污染,且可能指定污染后的IP为某个特定IP,使得全球网络流量的一部分直接转移到目标网络,使得目标网络立刻瘫痪。当然我们伟大的祖国郑重承诺“不率先使用核武器”…另一方面,GFW将伪造的DNS返回包要发送给源IP地址的源端口,如果攻击者伪造源IP,会怎样呢?将会导致著名的增幅攻击:十倍于攻击者发送DNS查询的流量将会返回给伪源IP,如果伪源IP的端口上没有开启任何服务,很多安全配置不严的系统就需要返回一条ICMP Port Unreachable消息,并且将收到的信息附加到这条ICMP信息之后;如果伪源IP的端口上开启了服务,大量的非法UDP数据涌入将使得伪源IP该端口提供的服务瘫痪。如果攻击者以1Gbps的速度进行查询,一个小型IDC(DNSpod被攻击事件)甚至一个地域的ISP也会因此瘫痪(暴风影音事件)。攻击者还可能设置TTL使得这些流量恰好通过GFW产生劫持响应,并在到达实际目标之前被路由丢弃,实现流量“空对空不落地”。攻击者还可能将攻击流量的目标IP设置伪造成与伪源IP有正常通信或者其他关联的IP,更难以识别。这样实际上就将一个国家级防火墙变成了一个国家级反射放大式拒绝服务攻击跳板
最为严重的是,这种攻击入门难度极低,任何一个会使用C语言编程的人只要稍微阅读libnet或者libpcap的文档,就可能在几天之内写出这样的程序。而GFW作为一套入侵防御系统,注定缺乏专门防范这种攻击的能力,因为如果GFW选择性忽略一些DNS查询不进行劫持,网民就有机可乘利用流量掩护来保证真正的DNS通信不被GFW污染。尤其是UDP这样一种无连接的协议,GFW更加难以分析应对。“反者道之动,弱者道之用。”

参考文献

  1. 闫伯儒, 方滨兴, 李斌, 王垚. "DNS欺骗攻击的检测和防范". 计算机工程, 32(21):130-132,135. 2006-11.
  2. Graham Lowe, Patrick Winters, Michael L. Marcus. The Great DNS Wall of China. 注:这篇文章虽然试图通过统计特性了解GFW,但由于实验条件控制不佳、实验结果观察不细致,加上缺乏对GFW的整体观,故没有提供什么有意义的结论。然而美国同学的这种科学态度与实验精神值得我们学习和思考。事实上,这篇文章仍然提供了珍贵的历史资料,读者不妨按照本文逻辑来分析这篇参考文献。阅读过这篇文献的敏感的读者还将在我们后续的文章中看到熟悉的数字。
  3. KLZ毕业. 入侵防御系统的评测和问题. 注:本文对DNS污染包的分类就是从这篇文章的分类继承而来。

Popular posts from 产品随想的博客

产品随想 | 陪读《乔布斯传》:1-17章

乔布斯经典照片集 坐在麗莎電腦旁。他說:「毕加索曾說:「好的藝術家懂得模仿,佛大的藝術家善於偷取。」因此,窃取偉大的點子沒有什麼好羞耻的。 與蓋茲在電話中達成協議:「比爾,謝謝你支持蘋果。因為你的支持,世界將變得更美好。」 1997年蘋果在波士頓舉行的麥金塔世界大會,蓋茲透過衛星連線在巨大的螢幕上出現。質伯斯說:「我真是笨死了,竟然讓蓋兹以這種方式現身。他讓我看起來好沙小。」 ──时刻自省 前言 The people who are crazy enough to think they can change the world are the ones who do. 只有那些瘋狂到以為自己可以改變世界的人, 才能改變這個世界。 這麼些年來,賈伯斯說起話來的認真與專注態度,著實打動不少人。我們一直保持連絡,即使在他被逐出蘋果之後,我們還有來往。每次他有新產品要推出時,像 NeXT 電腦或皮克斯 (Pixar)的電影,他就會來找我。他常帶我去曼哈頓下城一家壽司店用餐,講起他的產品,渾身散發出光和熱,眉飛色舞的說這是他登峰造極之作。我喜歡這個人。 ──对自己产品深深的爱 他的堅持教我疑惑。人人都知道賈伯斯不道餘力捍衛隱私, 而且我不知道他是否看過我寫的任何一本傳記。我還是不敢立刻答應,只說或許再等等。然而到了 2009年,我接到他太太蘿琳. 鮑威爾打來的電話。她直截了當說:「如果你還想為史帝夫寫傳,最好趕快動筆。」這是他第二次因病向公司請長假。我坦言他早在2004 年得知自己罹患胰臟癌的時候就曾主動邀我寫傳,但我當時對他罹癌的事一無所知。蘿琳解釋說,他們盡量保密,因此當時根本沒幾個人知道。他是在動手術的前夕打電話給我的。 ──和Make Something Wonderful对照起来看 他還說,自從他回到蘋果重新掌權,這十二年來是他創造新產品的高峰期,但他還有更重要的目標,也就是效法惠普的惠立和普克(David Packard),締造一家創新動力無限的公司,進而超越惠普。 ──苹果公司才是乔布斯最得意的产品 他說:「我一直認為,自己是個偏向人文的孩子,但我也喜歡電子的東西。後來,我讀到寶麗來(Polaroid)創辦人蘭德 (Edwin Land)曾說過,一個人能站在人文和科學的交會口,兼容贯通,才是真正的人才。在那當下,我决定要當這樣的人。」他似乎在暗示我,這可以做為傳...

零碎思考 | 關於LLM的閱讀筆記

  通向AGI之路:大型语言模型(LLM)技术精要   https://zhuanlan.zhihu.com/p/597586623 拆解追溯 GPT-3.5 各项能力的起源   https://yaofu.notion.site/GPT-3-5-360081d91ec245f29029d37b54573756 清晰明瞭 A Closer Look at Large Language Models Emergent Abilities   https://yaofu.notion.site/A-Closer-Look-at-Large-Language-Models-Emergent-Abilities-493876b55df5479d80686f68a1abd72f 試圖說明LLM的涌現能力] 如何利用GPT-4打造高效智能信息收集神器   https://lpcv.org/fwc/a/MzU0MDk3NTUxMA==/2247483868/1 學習思路 GPT-4编码教程,如何用AI构建和宣传我的Midjourney网站增强插件   https://op7418.zhubai.love/posts/2254193381183922176 AUTOMATIC1111 GUI: A Beginner’s Guide   https://stable-diffusion-art.com/automatic1111/ 其實就是AI界的雲渲染,挺有意思的 Midjourney还是Stable Diffusion: 你应该选哪个?   https://zhuanlan.zhihu.com/p/617157677 看到作者下方的“註冊會計師”,中國太卷了 树莓派4B刷OpenWrt做路由器的经验+踩坑   https://zhuanlan.zhihu.com/p/451788328 關注其中的坑點 doc.openwrt.cc   https://doc.openwrt.cc/

《Becoming Steve Jobs》Chapter 13 Stanford

Steve was a natural performer who elevated business presentations to something close to high art. But what made him fidgety this day was the prospect of addressing the Stanford University graduating class of 2005. University president John Hennessy had broached the idea several months earlier, and after taking just a little time to think it over, Steve had said yes. He was offered speaking engagements constantly, and he always said no. In fact, he was asked to do so many commencement addresses that it became a running joke with Laurene and other friends who had college or graduate degrees: Steve said he’d accept one just to make an end run around them and get his PhD in a day, versus the years and years it had taken them. But in the end, saying no was simply a question of return on investment—conferences and public speaking seemed to offer a meager payoff compared to other things, like a dazzling MacWorld presentation, working on a great product, or being around his family. “If you loo...

产品随想 | 周刊 第115期:2024.5.16 Great libraries build communities

Loop   https://github.com/MrKai77/Loop Loop is a macOS app that simplifies window management for you! 我的电视 my-tv   https://github.com/lizongying/my-tv 我的电视 电视直播软件,安装即可使用 When we think about this technology, we need to put human dignity, human well-being—human jobs—in the center of consideration. ————Fei-Fei Li Author Talks: Dr. Fei-Fei Li sees ‘worlds’ of possibilities in a multidisciplinary approach to AI   https://www.mckinsey.com/featured-insights/mckinsey-on-books/author-talks-dr-fei-fei-li-sees-worlds-of-possibilities-in-a-multidisciplinary-approach-to-ai Randy Ubillos   https://apple.fandom.com/wiki/Randy_Ubillos Randall Hayes "Randy" Ubillos is the original software engineer behind Adobe Premiere and Final Cut Pro. 影响全球视频制作的男人, Reminders MenuBar   https://github.com/DamascenoRafael/reminders-menubar Simple macOS menu bar application to view and interact with reminders. Developed with SwiftUI and using Apple Reminders as a source. Bad libraries build colle...

产品随想 | 周刊 第86期:Next Generation of AI

  gerev   https://github.com/GerevAI/gerev AI-powered enterprise search engine 聚合了Confluence,Slack,Jira等非常多的平台,还是很不错的 假如有个定位在C端的产品,能让用户自己来定义来源,就更好了,maybe是alist的思路(精准搜索已经被everything承接了) Dalai   https://github.com/cocktailpeanut/dalai Run LLaMA and Alpaca on your computer. 对计算机硬件的要求,并不高 Chatbox   https://github.com/Bin-Huang/chatbox Your Ultimate Copilot on the Desktop. Chatbox is a desktop app for GPT-4 / GPT-3.5 (OpenAI API) that supports Windows, Mac & Linux. Tune-A-Video   https://github.com/showlab/Tune-A-Video Tune-A-Video: One-Shot Tuning of Image Diffusion Models for Text-to-Video Generation Given a video-text pair as input, our method, Tune-A-Video, fine-tunes a pre-trained text-to-image diffusion model for text-to-video generation. Diffusion的本质是模仿和乐高式的重新拼接 Jensen Huang — NVIDIA's CEO on the Next Generation of AI and MLOps   https://wandb.ai/wandb_fc/gradient-dissent/reports/Jensen-Huang-NVIDIA-s-CEO-on-the-Next-Generation-of-AI-and-MLOps--Vmlldz...

認知香港-梁啟智推薦書目

///// 推 薦 書 單 在 這 邊 ///// 1.《香港簡史》,高馬可,2021,蜂鳥。 2.《香港人之香港史 1841-1945》,蔡榮芳,2000,牛津大學出版社。 3.《穿梭太平洋︰金山夢、華人出洋與香港的形成》,冼玉儀,2019,中華書局。 4.《被遺忘的六日戰爭:1899年新界鄉民與英軍之戰》,夏思義 ,2014,中華書局。 5.《香港六七暴動始末》,程翔,2018,牛津大學。 6.《地下陣線:中共在香港的歷史》,陸恭蕙,2011,香港大學出版社。 7.《香港80年代民主運動口述歷史》,馬嶽 ,2012,香港城市大學。 8.《我是記者:六四印記:六四30》,2019,香港記者協會-人民不會忘記基金。 9.《胸懷祖國 : 香港「愛國左派」運動,趙永佳,呂大樂,容世誠,2014,牛津大學出版社。 10.《勾結共謀的殖民權力》,羅永生,2015 ,牛津大學出版社。 11.《殖民無間道》,羅永生,2017,牛津大學出版社。 12.《中國香港 : 文化與政治的視野》,強世功,2008,牛津大學出版社。 13.《中國天朝主義與香港》,陳冠中,2012,牛津大學出版社。 14.《變局下的徘徊 : 從戰後到後九七香港教會社關史論 》,邢福增,2018,印象文字。 15.《回歸人心——極權臨近的香港文化經濟學》,許寶強,2018,牛津大學出版社。 16.《香港, 鬱躁的家邦 : 本土觀點的香港源流史》,徐承恩,2019,左岸文化。 17.《彭定康英文自傳》,彭定康。 18.《許家屯香港回憶錄(上.下)》,許家屯,1993,聯經出版公司。 19.《大江東去——司徒華回憶錄》,司徒華,2011,牛津大學出版社。 20.《拱心石下——從政十八年》,吳靄儀,2018,牛津/啟思。 21.《相遇》,周保松,2008,牛津大學出版社。 22.《受苦與反抗:陳健民.獄中書簡》,陳健民,2022,聯經出版公司。 23.《破解香港風威權法治:傘後與反送中以來的民主運動》,黎恩灝,2021,新銳文創。 24.《特區選舉:制度與投票行為》,蔡子強,馬嶽,陳雋文,2021,香港城市大學。 25.《二十道陰影下的自由:香港新聞審查日常》,區家麟,2017,中文大學出版社。 26.《香港第一課》,梁啟智,2019,春山。 27.《管治香港:英國解密檔案的啟示》,李彭廣,...

产品随想 | 周刊 第59期:中华人民共和国史

Products anti-anti-AD   https://github.com/Mosney/anti-anti-AD 为什么不应使用antiAD去广告列表,以及选择更多优秀的替代品 很多此类域 Diffusion Bee   https://github.com/divamgupta/diffusionbee-stable-diffusion-ui Diffusion Bee is the easiest way to run Stable Diffusion locally on your M1 Mac. 门槛好高... M1 Aloud   https://aloud.area120.google.com/ Aloud is part of Area 120, Google’s in-house incubator for new products and services. 除去现在的自动生成CC字幕外,探索直接将视频的音轨,变换为其它语言,Google牛逼! Citizenship Consciousness & Privacy 董乐山   https://zh.wikipedia.org/zh-sg/董乐山 简介很短,但足以看到时代对他的残酷 《第三帝国的兴亡》 中华人民共和国史   https://cup.cuhk.edu.hk/chinesepress/promotion/prc_sample/index.htm 第一卷 断裂与延续──中华人民共和国的创建(1949-1952)(即将出版) 杨奎松 (估计审查,也没机会了) 第二卷 向社会主义过渡 ── 中国经济与社会的转型(1953-1955) 林蕴晖 第三卷 思考与选择 ── 从知识分子会议到反右派运动(1956-1957) 沈志华 第四卷 乌托邦运动──从大跃进到大饥荒(1958-1961) 林蕴晖 第五卷 历史的变局──从挽救危机到反修防修(1962-1965) 钱庠理 第六卷 「砸烂旧世界」──文化大革命的动乱与浩劫(1966-1968) 卜伟华 第七卷 新秩序和新冲突──从中共九大到林彪事件(1969-1971) (即将出版) 高华(作者去世,应该没有机会了) 第八卷 难以继续的「继续革命」 ──从批林到批邓(1972-1976...

Markdown学习笔记

学习帖来自简书,这是我的笔记, 献给作者的Markdown新手指南 # 一级标题    #数量决定标题层级 - 文本    列表格式

产品随想 | 周刊 第85期:e-Residency与数字游民

  David Shambaugh   https://www.google.com/search?q=David+Shambaugh 中国问题研究专家,著作极多 郭玉闪   https://zh.wikipedia.org/wiki/郭玉闪?useskin=vector 中国公共知识分子 我只想好好观影   github.com/BetterWorld-Liuser/autoMovies 刘煜辉:中国资本市场灵魂出窍 最有活力的公司几乎不在A股   https://finance.sina.com.cn/stock/marketresearch/2017-06-23/doc-ifyhmtek7705574.shtml 回看17年的专家讲话,还是挺有水平的,挺多都认可 纽约文化沙龙   https://www.youtube.com/@user-cu2hl5tf6y/videos 视频质量出奇的高,推荐 透视中国政治by吴国光、程晓农 备忘下,貌似评价挺好的一本书 CAPI China Chair Wu Guoguang (吴国光 / 吳國光)   https://www.youtube.com/playlist?list=PLIt1szHhnm_Hso3jGUbfGpnEAbsPOuEVV 因为热爱中国,我们越要看懂中国 AI Canon   https://a16z.com/2023/05/25/ai-canon/ in this post, we’re sharing a curated list of resources we’ve relied on to get smarter about modern AI. We call it the “AI Canon” because these papers, blog posts, courses, and guides have had an outsized impact on the field over the past several years. 希望中国的投資機構,也能有更多的分享與輸出,提升整個社會的認知 Cantonese Font 粵語字體   https://visual-fonts.com/zh/...

产品随想 | 周刊 第114期:AT THE INTERSECTION OF ART AND TECHNOLOGY

Adeus   https://github.com/adamcohenhillel/ADeus An open source AI wearable device that captures what you say and hear in the real world and then transcribes and stores it on your own server. You can then chat with Adeus using the app, and it will have all the right context about what you want to talk about - a truly personalized, personal AI. 开源的个人语音AI硬件 Upscayl   https://github.com/upscayl/upscayl Upscayl - #1 Free and Open Source AI Image Upscaler for Linux, MacOS and Windows. Kotatsu   https://github.com/KotatsuApp/Kotatsu Manga reader for Android AntiAntiDefraud   https://github.com/MinaMichita/AntiAntiDefraud Stop uploading my installed app list! Miui! Hide My Applist   https://github.com/Dr-TSNG/Hide-My-Applist An Xposed module to intercept applist detections We don’t read and write poetry because it’s cute. We read and write poetry because we are members of the human race. And the human race is filled with passion. And medicine, law, business, engineerin...