分类 硬核观察 下的文章

安全专家告知数据被泄露后,却接到了对方的律师函

报道,安全专家 Rob Dyke 在 2 月底发现了一个公开的 GitHub 仓库,其中包含一个网站的源代码,以及包含用户名、散列密码、电子邮件地址和 API 密钥的数据库。然而在他 3 月 1 日书面告知数据泄露的 Apperta 基金会后却收到了律师函。

Apperta 的第一反应对他表示了感谢。然而 Dyke 告诉 Apperta,他将加密保留他发现的文件的副本三个月,然后销毁它们。Dyke 说他保留这些信息是为了防止再次需要这些信息,“以防出现我所不知道的更广泛的网络事件”。Apperta 将此解释为非法复制其数据。一周后,该公司的律师写信给他,要求他销毁文件的副本。在律师交锋几周后,Apperta 明确表示要向高等法院申请针对这位安全专家的禁令。

Dyke 最终在上法庭前删除了这些数据,并提交了证明。Apperta 表示他们没有提出诉讼,Dyke 已经承诺删除数据,但同时认为 Dyke “超越了善意研究的界限,而且他这样做是不道德的”。

此事引起了网络安全界的同情,人们为 Dyke 捐赠了 15000 英镑以解决法庭诉讼。然而,我们需要思考的是,白帽子的法律边界在哪里?什么是可以做的,什么是不可以做的?

研究人员制造出仅在显微镜下可见的无线、可注射的芯片

哥伦比亚大学研究人员报告说,他们已经建立了据说是世界上最小的单芯片系统,总体积小于 0.1 立方毫米,像一只尘螨一样小,只有在显微镜下才能看到。这是一个“芯片即系统”的新想法:一个单独的芯片就是一个完整的功能电子系统。该芯片是一个整体可植入/可注射的微粒,没有额外的封装。它是在台积电制造的,并进行了纳米级的工艺修改。该团队的目标是开发可以用于皮下注射的芯片,然后用超声波将其传回体外,提供它们在本地测量的信息。目前该芯片的功能是测量体温,但该团队正在研究的可能性还有很多。

这就是几十年前科幻小说里面的场景啊,这种芯片可以在医疗方面发挥很大的作用。

Rust 编程语言庆祝六岁生日

周六,Rust 编程语言的开发者庆祝了自 1.0 版本推出以来的六周年。作为 C 语言的替代品获得了很多关注,这要归功于默认开启的代码安全功能,它带来的是更少的可被利用的内存相关错误。这种内存安全特性让不少程序员注意到了它,由此它的采用率开始了编程语言当中不可思议的火箭式上升,Stack Overflow 甚至发现它是 2020 年调查中最受欢迎的编程语言

目前采用 Rust 的最引人注目的项目之一是 Firefox 浏览器,到 2020 年 7 月,macOS 上的Firefox Nightly 有 12.31% 的代码是用 Rust 代码编写的。

虽然 Rust 语言学习起来有些难,但是在某些原本是 C/C++ 独占领域里,Rust 已经显示出了明显的优势。

Python 之父要在 Python 3.11 中将速度翻倍

在本周的美国 PyCon 语言峰会上,Python 之父 Guido 发布的一份文件,详细介绍了他要使 Python 成为一种更快的语言的野心,他承诺在 Python 3.11 中使其速度翻倍。

不过,Guido 也不敢保证一定能达成目标,只是乐观地感觉有希望。如果真的能实现,主要受益者将是那些运行 CPU 密集型纯 Python 代码的人。而对于已经用 C 语言编写的代码,如 NumPy 和TensorFlow,I/O 绑定的代码、多线程代码,以及算法效率低下的代码,不会有太大的好处。

我们真的需要更快的 Python 吗?需要更快处理的数据科学和人工智能项目,都依赖于 GPU,所以 CPU 上跑起来快不快真的没那么重要。

祝融号成功着陆火星

5 月 15 日,天问一号着陆巡视器成功着陆于火星乌托邦平原南部预选着陆区,我国首次火星探测任务着陆火星取得圆满成功。着陆巡视器与环绕器分离后,环绕器升轨返回停泊轨道,为着陆巡视器提供中继通信。着陆巡视器包括“祝融号”火星车及进入舱。后续,“祝融号”火星车将依次开展对着陆点全局成像、自检、驶离着陆平台并开展巡视探测。

恭喜我国航天航空事业取得新成就!上午有朋友问我,祝融号是否采用了开源技术?从目前公开的信息看,我们尚不知道“祝融号”所采用的技术是什么,是否涉及开源技术也不得而知。

美国政府发布行政命令,要求加强开源软件安全

5 月 12 日,美国拜登政府发布行政命令,以加强美联邦政府的网络防御,要求“在初步准则公布后的 90 天内……应发布指南,确定加强软件供应链安全的做法。”并特别提到开源软件,要求美国政府必须确保“在可行的范围内,确保产品任何部分所使用的开源软件的完整性和出处”。即提供一个软件材料清单,包含了用于构建软件的各种组件的细节和供应链关系。

Linux 基金会已经发起了诸多项目和基金会,着力于改善日益严重的开源软件安全问题。

Cloudflare 呼吁终结验证码

这种名为“CAPTCHAS”的验证码你肯定见过,它们要求用户识别某种图像,事实上被利用来训练某些公司的 AI。Cloudflare 估计平均需要 32 秒才能完成这种验证,它们在移动设备上效果不佳,还假定你对展示的物体有文化知识,往往需要某些认知能力。研究人员假设互联网用户平均每 10 天看到一次这种验证码,并将其乘以全球 46 亿互联网用户和 32 秒,那么人类每天总共花在这种验证上的时间就达 500 年。

Cloudflare 提出了一种“加密人格证明”的替代方案,基本上是通过硬件安全密钥或手机 NFC 来完成验证,Cloudflar 认为完成这一流程只需五秒钟,更重要的是,这一验证保护了用户的隐私,身份证明与用户设备没有唯一的联系。

CAPTCHAS 验证码实在太烦了,是该让这种给 AI 打白工的验证码消失了。但是 Cloudflare 是个更好的替代品吗?

微软将关闭其 Azure 区块链服务

微软对 Azure 区块链即服务(BaaS)的最初尝试始于 2015 年。近日,微软宣布将在 2021 年 9 月 10 日关闭其 Azure 区块链服务,而在今年的 5 月 10 日,就已经不支持新的部署或成员创建了。但是微软没有说明为什么关闭 Azure 区块链服务。

在我看来,这种所谓的“联盟链”,本身就是一种伪命题,是一种夹在分布式数据库和区块链公链之间的一种怪物。所以,其实真正能用起来联盟链的企业客户并不算多。

System76 发布了开源键盘

这款名为 “Launch Configurable Keyboard” 的键盘是 100% 开源的,不但其配置软件是开源的,其固件和硬件也是开源的。其配置软件支持 Linux、Windows 和 macOS。它配备了额外的键帽和拔键器,人们可以根据个人工作流程的偏好来调换按键。它只使用三种键帽尺寸,还具有新颖的分离式空格键,允许用户将其中一个空格键的键帽换成 Shift、退格键或功能键。这款键盘售价为 285 美元。

虽然看起来颜值不够高,不过如果你喜欢,你可以使用开源方式来自己定制一个。

IBM 教会 AI 翻译编程语言

IBM 的 CodeNet 旨在教人工智能如何翻译代码。它是一个庞大的数据集,包含大约 5 亿行代码,分布在 55 种以上的传统和活跃语言中 —— 从 COBOL、FORTRAN 到 Java、C++ 和 Python。这个数据集是由 4000 多个编码问题和 1400 多万个代码样本组成的,这些问题是从全球范围内几十年的编程挑战和竞赛中收集的。该数据集是以一种能够实现双向翻译的方式构建的,也就是说你可以在两种编程语言之间进行转换。除了翻译之外,CodeNet 还可以用于代码搜索、克隆检测等功能。另外,研究人员也可以将其用于运行回归研究,并有可能开发自动代码纠正系统。

看看,以后编程都像工业制品一样都由机器来生产了,程序员们将来就像手工业者一样,只能从事一些体现艺术或小众领域的手工制品了。

所有 Wi-Fi 设备皆存在 FragAttacks 漏洞

网络安全研究人员发表了一系列 Wi-Fi 设备安全漏洞,这些漏洞被统称为 FragAttacks。其中 3 个来自 Wi-Fi 标准中的设计缺陷,从最初的安全协定 WEP 到最新的 WPA3 规范都在影响范围中,也就是说,从 1997 年 Wi-Fi 发布起,这些设计缺陷已经成为 Wi-Fi 的一部分。值得庆幸的是,这些设计缺陷比较难以被利用。不过更严重的是,还有一些漏洞是由 Wi-Fi 产品中普遍存在的程序错误引起,其中几个漏洞可轻易地被恶意攻击者利用。经证实,绝大多数 Wi-Fi 设备都存在多个漏洞。

为了保护广大的用户,安全更新工作已经进行了 9 个月,现在才对外揭露漏洞信息,漏洞修补工作由 Wi-Fi 联盟和 ICASI 进行监督。

无线网络在方便的同时,也给开放攻击提供了更多机会,这让我想起来之前在单位楼下破解 Wi-Fi 的故事。

知名 BIOS 厂商 AMI 正在积极参与开源系统固件项目

尽管 AMI 专有的 BIOS 产品已被许多主板厂商所采用,但该公司也表示有向开源计算项目社区给予回馈的意向。AMI 正致力于 Linux 基金会的 OpenBMC、EDK II 和相关开源组件。开放计算项目正在继续引起主要行业参与者的兴趣,出于安全/审计的原因,开源固件在总体上继续受到越来越多的关注,因此工程师可以按照他们认为合适的方式管理固件。

虽然开源固件项目近些年来发展势头不错,也得到了英特尔的支持,但是看到一家以专有 BIOS 而知名的公司愿意参与到开源项目,可见开源已经是大势所趋。

阿里云正式发布它的首个 CentOS 兼容发行版 Anolis OS 8.2

在红帽宣布“停更” CentOS Linux 后,引来了技术圈的颇多争议,国内外涌现出多款 CentOS 8 的替代发行版,并已在日前陆续发布。

昨日,由阿里云支持的 Anolis OS 宣布发布首个正式发布版本。此次发布的 8.2 支持 x86\_64 和 aarch64 架构,搭载双内核 RHCK(RHEL 兼容内核)和 ANCK(OpenAnolis 云内核),其中 ANCK 是由社区 Cloud Kernel SIG 组基于上游 4.19 LTS 内核研发,增强了稳定、性能、隔离能力;对飞腾、海光、兆芯、鲲鹏芯片提供了完善支持;支持阿里的龙井云原生 Java 运行时;还提供了 CentOS 系统到 Anolis OS 的迁移工具。更多特性可见发行公告

阿里云宣布 Anolis OS 已经有快半年了,从目前披露的正式版本特性来看,还是值得一看的。

微软要将 Linux 工具 eBPF 引入 Windows 10

eBPF 是一项重要的性能观测和调优技术,最初来自于 BSD 的一个防火墙程序 BPF,后在 Linux 系统上衍生为扩展 BPF,即 eBPF。eBPF 对于网络过滤、分析和管理非常有用,但它的工作远不止这些。eBPF 也被用于系统调用过滤和进程上下文跟踪。它已经成为编程跟踪、系统剖析以及收集和汇总低级自定义指标的一把瑞士军刀。在更高层次上,eBPF 已经成为安全程序的基础。

微软启动了一个新的开源项目,试图将 eBPF 引入到 Windows 10 和 Windows Server 2016 及以后的版本中。这个项目将现有 eBPF 工具链和 API 作为子模块,并在其间添加一层,使其可以在 Windows 之上运行。目前该项目处于非常早期的阶段,还没有公布时间表。

好吧,微软又从 Linux 宝库中挖掘到一个好东西。

微软将威胁和漏洞管理能力引入 Linux

微软正在使 IT 专业人员能够使用该公司的端点防御产品对 Linux 设备的安全进行监控。微软的威胁和漏洞管理(TVM)可用于 Windows 和 Windows 服务器,现在也在公开预览中支持 macOS 和 Linux。TVM 允许用户审查应用程序漏洞和整个 Linux 系统的潜在错误配置,并补救任何受影响的管理和非管理设备。目前,用户可以利用这一功能在 macOS 和 Linux 中发现、优先处理和补救 30 多个已知的不安全配置。今年夏天晚些时候,TVM 也将支持 Android 和 iOS。

微软的“野心”越来越大了,不过我觉得未尝不是一件好事。

OpenSolaris 衍生品 Illumos 放弃对 SPARC 硬件的支持

虽然 SPARC 硬件和 Solaris/OpenSolaris 曾经携手并进,但随着 SPARC 的主要开发工作基本结束,甲骨文公司在几年前就已经解雇了大部分的 SPARC 工程师,已经十年没有销售 SPARC 硬件了,一些出于收藏而销售的二手硬件也非常昂贵。

衍生自 OpenSolaris 的开源 UNIX 系统 Illumos 项目没有足够的 SPARC 硬件可以使用,他们甚至缺乏一个永久性的官方的 SPARC 构建服务器。所以,在 Illumos 中继续 SPARC 架构已经不再可行。交叉编译和通过 QEMU 仿真都考虑过了,需要大量工作,且效果并不好。

好消息是,放弃对 SPARC 的支持,只专注于 x86\_64,可以做出一些很好的改进,使他们的工具链现代化。甚至可以考虑在内核、库和命令中使用 Rust 编程语言。

对于一个没有人关心的硬件,虽然告别过去有些不舍,不过,x86 和 ARM 不香么?

去年 Namecheap 托管了 1/4 的假冒英国政府的钓鱼网站

报告,2020 年期间,在所有已知的钓鱼网站中,Namecheap 公司窝藏了超过 1/4 的假扮成英国政府网站的钓鱼网站。Namecheap 平均花了 47 个小时来禁用政府主题的钓鱼网站,占已知该类钓鱼网站 28.8%;而去年此类骗局的第二大庇护者 GoDaddy 大约需要 37 来关闭它们,占 11.2%。但是 Namecheap 表示,在他们收到了滥用投诉中,只有 1/10 是正确的,只占其注册的域名的不到 1%。

就是因为响应速度太慢才会导致钓鱼网站猬集。

DragonFlyBSD 6.0 发布

继最近发布的 FreeBSD 13.0 和 OpenBSD 6.9 之后,DragonFlyBSD 6.0 作为这个很久以前从 FreeBSD 分叉出来的 BSD 操作系统也发布了最新版本 6.0。其中的一些亮点包括:对内核进行了优化,改进了内存分页,提升了性能;一个非 GPL 的新 EXT 2/3/4 文件系统驱动;更好的 EFI 帧缓存支持等等。详情可看变更公告

虽然 BSD 家族没有 Linux 家族那么耀眼,但是依然是非常重要的开源操作系统。