每日HackerNews RSS

## Postgres 查询取消:安全检查 当你中断一个 Postgres 查询(通常使用 Ctrl-C),一个“CancelRequest”会被发送到服务器。这并非通过现有的、可能已加密的连接进行,而是通过一个使用特殊协议标识符的*新*连接进行。Postgres 使用进程 ID 和在初始连接握手期间交换的密钥来识别此请求。 令人惊讶的是,`psql` 以*明文*发送此 CancelRequest,即使原始查询连接已完全加密。这是一个已知问题,自 Postgres 17 起,底层 `libpq` 库中已有修复方案。然而,`psql` 尚未采用它。 这种明文传输存在安全风险:潜在的拒绝服务 (DoS) 攻击,攻击者可以重放取消请求,以及历史上,对 4 字节密钥进行暴力破解的漏洞(通过协议更新,允许使用更大的密钥已解决)。 像 Elephantshark 这样的 Postgres 网络流量监控工具突出了这些问题。虽然 Elephantshark 现在可以处理取消请求,但 `psql` 更新之前,未加密取消的根本问题仍然存在。建议使用 Postgres 18 和最新的协议版本,使用 VPN,或在修复方案实施之前避免在 `psql` 中使用 Ctrl-C。

## Postgres 查询取消:一段“临时”的历史 一篇最近的文章强调了 Postgres 命令行界面 (CLI) 处理查询取消(通过 Ctrl+C)方式的复杂性和某种程度上的“临时”性。它没有使用干净的带内信号,而是依赖于 TCP “紧急数据”——最初 intended 用于简单的信号传递,而非可靠的取消操作——来中断正在运行的查询。 这种方法源于 Postgres 的历史和最初的单线程架构,在那种架构下,中断一个进程需要像 SIGURG 这样的信号。虽然有效,但由于代理和现代网络配置可能存在的问题,紧急数据现在被认为不可靠。它也带来了安全问题,因为取消“密钥”是明文发送的。 现代解决方案涉及专用线程和更强大的协议,但在 Postgres 中实现这些需要大量的重构。文章详细介绍了正在进行的工作以解决这个问题,包括转向线程取消机制,但即使这样也引入了复杂性。 这场讨论揭示了像 Postgres 这样长期存在的系统中,向后兼容性、架构限制和安全最佳实践之间的紧张关系,说明了历史设计选择如何成为长期的挑战。

请启用 JavaScript 并禁用任何广告拦截器。

对不起。

## 低成本硬件漏洞利用:摘要 David Buchanan 详细描述了一种在2011年笔记本电脑上成功进行的硬件故障注入漏洞利用,展示了在Linux上从用户到root的本地权限提升(LPE)。核心思想是:使用简单的压电烧烤点火器作为电磁故障注入器(EMFI),在DDR内存总线上诱发错误。 通过将电线焊接到内存总线上的一个数据引脚(DQ26)上,并点击附近的点火器,Buchanan可靠地在内存操作期间翻转位。这使他能够破坏页表条目,从而获得对物理内存的读/写访问权限。然后,他通过用shellcode替换`su`二进制文件的初始页来“毒化”页缓存,在下次调用该程序时获得root访问权限。 该漏洞利用依赖于对内存缓存、虚拟内存和转换后查找缓冲区(TLB)的理解。用页表填充大部分物理内存增加了成功故障注入的可能性。 虽然该漏洞利用目前仅限于特定的笔记本电脑配置,但Buchanan建议其原理广泛适用于其他系统(DDR4/5,ARM),并探讨了潜在的应用,例如绕过反作弊软件、Android安全检查,甚至针对任天堂Switch。他强调了自动化故障硬件的可能性,以及对ECC缓解和虚拟机监控程序突破的进一步研究。

## 用打火机获取Root权限? Hacker News上最近的一篇帖子讨论了利用低科技手段——打火机——获取电子设备(特别是ARM平台甚至任天堂Switch)的Root权限的研究。该技术通过诱发电磁干扰(EMF)尖峰,导致内存中的位翻转来利用漏洞。 虽然原始研究在评论中没有详细说明,但用户讨论了各种方法,包括使用高速多路复用IC来获得更可控的故障。一位用户成功利用了任天堂Switch内核,但由于内存加密,相同的方法不适用于Switch 2。 讨论很快转向了对较早、更简单黑客的怀旧回忆——从用打火机闪光利用自动售货机的红外端口,到物理操纵电话亭进行免费通话。许多评论员强调了人为因素是最容易利用的漏洞,并提到了XKCD漫画中的安全问题。该帖子还引发了关于使用笔记本电脑做饭以及不同地区对“路由器”和“rooter”发音的幽默讨论。

## SpiceCrypt:破解PSpice加密,实现仿真器互操作性 Cadence的PSpice对SPICE模型文件进行加密,以保护供应商的知识产权,限制其仅能在PSpice仿真器中使用。这限制了工程师在NGSpice、Xyce和PySpice等开源工具中使用合法获取的模型。为此,SpiceCrypt——一个Python库和CLI工具——已发布,用于解密这些文件,恢复互操作性。 PSpice使用六种加密模式,其中模式4是独特的,因为它结合了用户提供的密钥。然而,模式4的密钥推导中存在一个关键缺陷:由于AES-256加密的实现方式,它有效地将密钥空间减少到仅32位。SpiceCrypt通过在几秒钟内暴力破解4字节的用户密钥来利用这一点,并使用加密文件中已知的明文前缀进行验证。 一旦恢复了初始密钥,就可以提取完整的用户密钥,从而破坏所有用其加密的文件。根本原因可追溯到可能出现的复制粘贴错误,即仅使用密钥的一部分进行AES加密,而不是预期的完整32字节密钥。 SpiceCrypt支持所有PSpice加密模式和LTspice格式,并能自动检测加密类型。它可在PyPI上获取,并提供Python API用于程序化使用,旨在促进互操作性,同时尊重合法模型获取。

## 答案引擎优化 (AEO) 的兴起 过去二十年,“在谷歌上排名”定义了在线可见性。现在,一场转变正在进行中,用户越来越多地转向由人工智能驱动的“答案引擎”,如 ChatGPT 和 Perplexity,以获取直接答案,预计到 2026 年将使传统搜索量减少 25%。 这需要一种新的方法:**答案引擎优化 (AEO)** – 专注于成为这些人工智能工具引用的*可信来源*,而不仅仅是获得高排名。 与列出链接的搜索引擎不同,答案引擎会综合信息并生成回复,有时会引用来源。 关键的 AEO 策略包括强大的**结构化数据**(使用 schema.org 清晰定义内容和身份)、引人注目的**元描述**(作为人工智能评估的简洁摘要)以及深思熟虑的 **robots.txt 策略**(决定是否允许人工智能爬虫访问)。 优先考虑清晰、结构良好的内容,并具有强大的**实体识别**(链接作者、专业知识和联系方式)也至关重要。 虽然 SEO 仍然相关,但 AEO 强调被*引用*,而不仅仅是*排名*,承认“零点击搜索”的日益增长的趋势,在这种趋势中,答案会直接提供,绕过网站点击。 最终,AEO 不是为了玩弄系统,而是为了面向人类和机器受众的清晰沟通。

对不起。

## GoGoGrandparent:赋能老年人独立生活 GoGoGrandparent是一家快速发展且盈利的初创公司,正在革新数字照护方式。他们通过简化访问共享出行(Uber、Lyft)、杂货配送(Instacart、DoorDash)等必需服务,弥合了老年人和残疾人在使用科技方面的差距——提供管家式体验。 GoGoGrandparent的创立源于帮助自己祖父母的个人使命。他们解决了老年人日益增长的难题,即难以管理这些“自助”应用程序,尤其是在更新支付信息或追踪行程等任务上。他们的目标是成为日常需求的“管理层”,从而帮助人们更长时间地保持独立生活。 GoGoGrandparent拥有一支完全远程的工程团队,目前正在招聘经验丰富的Node.js和Vue.js开发者来扩展他们的平台。他们提供对架构和产品方向的掌控权,以及在未来几年老年人口显著增长的情况下,直接影响快速增长的用户群体的机会。他们秉承着自由和希望的愿景,帮助人们在任何年龄段都能过上充实而有意义的生活。

对不起。

## 协作的幻象 本文探讨了现代职场“协作”的悖论,认为它常常阻碍真正的生产力。作者借鉴历史研究——从二战步兵研究表明只有一小部分人积极参与,到早期计算机领域的观察——强调了一种持续的模式:少数人推动结果,而大多数人提供“结构性支持”。 科技行业的回应是优先考虑团队合作,通过Slack和Jira等工具,但讽刺的是,这反而创造了一种*模拟*参与的系统。透明度被误认为是进展,包容性被误认为是责任。这导致了过多的会议、无休止的文档,以及专注于*看起来*很忙而不是*真正*高效。 核心问题是责任的扩散。个人回避所有权——以及潜在的失败——更喜欢群体共识的安全感。作者认为,真正的进步源于个人责任和明确的权威,然后才是团队合作的合理化。我们需要重新回到信任个人、接受个人责任,并认识到持续的可见性并不等于产出。

## 铁罐电话:延迟拥有智能手机的复古解决方案 越来越多的父母选择延迟给孩子购买智能手机,这催生了对替代通讯方式的需求。铁罐电话应运而生,这是一款基于WiFi的“固定电话”,在洛杉矶的艾丽森·贝内特一家这样的家庭中越来越受欢迎。贝内特正在拥抱“90年代”的生活方式——MP3播放器、DVD租赁,现在还有铁罐电话,为她8岁的孩子提供社交联系,而无需智能手机带来的弊端。 铁罐电话由西雅图的三位父亲创立,为孩子们提供一个封闭的网络,让他们可以在设定的时间拨打预先批准的联系人,优先考虑安全和家长控制。最初的原型,用烙铁和带绳电话制作而成,受到了渴望独立沟通的孩子们的欢迎。 自2025年初推出以来,该公司已售出数万台设备,并筹集了350万美元,迎合了孩子们对社交自主性的渴望以及对儿童心理健康的担忧。铁罐电话旨在弥合“没有手机”和“完全智能手机”之间的差距,培养独立性,甚至重振被遗忘的电话礼仪。

对不起。

## 美国运通支付网络:两次零停机迁移 美国运通成功地将其关键任务支付网络迁移了两次——首先迁移到新的微服务架构,然后迁移到新的 Kubernetes 基础设施,两次迁移均未中断任何实时交易。这是通过分阶段方法实现的,优先考虑零停机和功能对等。 核心策略围绕着一个集中的“全球事务路由器”(GTR),用于管理长连接和路由流量。第一次迁移包括三个阶段:引入 GTR,使用“影子流量”(将实时数据回放至新平台)验证逻辑,最后是“金丝雀路由”——逐步将实时流量百分比转移到新系统。 第二次迁移利用已建立的 GTR 进行 Kubernetes 环境之间的金丝雀路由,通过严格的测试和基础设施即代码,确保一致的性能和弹性。一个关键的推动因素是能够在出现问题时快速回滚到之前的系统。 主要经验教训包括强大流量控制的重要性、优先考虑回滚能力、投资于全面的可观察性,以及影子流量用于验证的价值。最终,耐心和严谨的方法对于在两次复杂迁移过程中保持网络的可靠性至关重要。

对不起。

## 色彩调和抖动:总结 本次探索深入研究了图像抖动——为了补偿量化过程(减少颜色数量)中的颜色损失而添加有意的噪声。虽然简单的随机噪声会引入不需要的纹理,但更智能的方法旨在保留细节。 **有序抖动** 使用预定义的阈值图,比随机噪声更有效地分配扰动,并且易于并行化。**误差扩散抖动** 分析图像,将量化误差分布到相邻像素,以获得更平滑、更自然的外观,但它是串行的并且可能导致伪影。 将这些应用于全彩调色板显示误差扩散在保留颜色信息方面表现出色。然而,通过缩放扰动,可以使用**规则调色板**(均匀分布的颜色)来改进有序抖动。对于**不规则调色板**,需要更高级的方法。 像**N候选方法**(使用概率矩阵)和**N最近**和**N凸**算法等技术提供了解决方案,平衡了质量和速度。**Knoll算法**和**重心坐标**(使用Delaunay三角剖分或自然邻域插值)提供了更高的质量,但计算量大。 伽马校正和阈值矩阵的选择(Bayer、半色调、蓝噪声)也会显著影响结果。作者提供了一个C库和进一步探索的资源,强调算法复杂度、性能和视觉质量之间的权衡。

对不起。

更多

联系我们 contact @ memedata.com