标签 OpenSSL 下的文章

无人察觉:窃取密码的 Linux 木马已偷偷下载 3 年

安全研究人员报告,一个下载网站间隔性地向 Linux 用户提供恶意软件,盗取密码和其他敏感信息长达三年多,直到最后销声匿迹。该网站提供了一个名为 “免费下载管理器“ 的 Linux 软件。从 2020 年开始,该网站有时会将用户重定向到另外一个恶意域名,提供该应用的恶意版本,它会在目标设备上安装后门。该后门会窃取包括系统信息、浏览历史、保存的密码、加密货币钱包文件以及云服务凭证等信息。这个恶意重定向于 2022 年结束,原因不明。

消息来源:Ars Technica
老王点评:与 Windows 相比,Linux 恶意软件很少被发现,这往往让人们更加掉以轻心,现在检查一下你的 Linux 桌面,或许为时不晚。

谷歌称它的搜索引擎是最好的

在周二开庭的谷歌反垄断诉讼案上,司法部和来自美国各州和地区的 52 位总检察长指控谷歌支付数十亿美元,以换取被设置为手机和网络浏览器的默认搜索引擎,从而非法维持其垄断地位。法官称,谷歌至少在 2010 年就已成为垄断企业,如今控制着超过 89% 的在线搜索市场。谷歌的律师表示,人们选择谷歌作为浏览器和智能手机的默认搜索引擎“是因为谷歌为他们带来了价值,而不是因为他们不得不使用谷歌”。并举例,微软在 Windows 上的默认搜索引擎是必应,但用户切换到谷歌是因为它是搜索市场上更好的产品。而且,谷歌的律师表示,Safari 和 Firefox 通过默认搜索引擎交易换取收入分成,帮助了它们的创新。

消息来源:彭博社
老王点评:谷歌是不是最好的,和它是不是非法维持垄断没有关系。让我们看看这起新时代的 IT 巨头垄断案将如何走向。

OpenSSL 1.1.1 已经走到了生命的尽头

OpenSSL 1.1.1 最初于 2018 年作为开源安全通信库的长期支持版本发布。当时,其背后的团队宣称,该版本将至少支持五年,也就是到今年。要想继续获得 OpenSSL 的支持,就必须升级到 OpenSSL 3.0 LTS 或最新的 3.1 版本。但迁移到更高版本的 OpenSSL 会带来风险和危险,一些依赖 OpenSSL 的服务可能会对更新反应迟钝,尤其是那些硬编码 OpenSSL 服务的物联网组件。实际上,企业宁可花钱让 OpenSSL 维护者和作者继续使用发霉的旧代码,比如,可以购买一份针对企业的价值 5 万美元的年度支持合同。

消息来源:The Register
老王点评:作为一个安全基础组件,这么干净利索的停止服务支持,总是有些不负责任。

安卓占所有操作系统份额的 40% 以上

Statcounter 是一个网站分析服务,在 150 万个网站上安装了跟踪代码,记录每个网站的数十亿次页面浏览。据 Statcounter 最新数据,安卓占全球所有操作系统份额为 42.37%,Windows 30.11%、iOS 17.6%、OS X 6.24%、除了安卓之外的 Linux 1.04%。而就桌面市场而言,Windows 占 75.93%,OS X 15.74%,Linux 2.6%,Chrome OS 2.38%。对于移动市场,安卓占 70.96%,iOS 28.43%。

消息来源:Statcounter
老王点评:安卓的成功,也是移动操作系统的成功,也是广义上的 Linux 的成功。

英国准备立法废除传真机

传真机由施乐公司在 1964 年商业化,1980 年代起被世界各地的企业广泛使用,如今已被电子邮件、扫描仪、云端传真和即时通讯服务所取代。虽然传真机早已过时,但英国卫生服务机构仍在大量使用它,英国国家医疗服务系统现在还有数百台传真机。英国通信监管机构 Ofcom 表示它准备修订电信规则淘汰传真机。

消息来源:The Register
老王点评:之前利用互联网发送传真都被视作违法,而现今,几乎没有人用传真了。

OpenSSL 3 漏洞补丁释出,危险程度比预想要轻

由于 OpenSSL 3 出现了严重安全漏洞,原计划在 10 月底发布的 Fedora Linux 37 延迟发布。现在,OpenSSL 3 发布了补丁,修复了两个缓冲溢出漏洞。漏洞等级从之前被认为与“心脏流血”漏洞相当的“超危”降为“高危”。这两个漏洞影响所有 OpenSSL 3.x 系列,不过目前主要使用的版本 OpenSSL 1.x 不受影响。

消息来源:Phoronix
老王点评:还好,不过互联网安全需要更可靠安全的 SSL 实现。

首颗树莓派卫星完成了创纪录的飞行

第一颗使用树莓派 Zero W 作为飞行计算机的迷你卫星于 5 月重新进入地球大气层,在太空中完成了创纪录的 117 天。这颗卫星于 2022 年 1 月从国际空间站部署,是由美国犹他州立大学的大学生们开发的。它是一个立方体模块,尺寸只有 10 厘米见方,使用现成的组件建造。这颗卫星 80% 以上的软件是用 Python 编写的,并且有个装置检查其“心跳”,如果出现问题就重启解决,事实证明“重启试试”在太空同样有效。其主要目的是测试一个实验性的充气稳定系统,成功地证明了小型航天器可以在轨道上自我稳定。

消息来源:ZDNet
老王点评:看来放个卫星也没什么难的,希望以后我们自己的空间站上也可以让同学们制造卫星放出去。

微软的内部 Linux 发行版支持内核实时补丁

上个月,微软发布了 CBL-Mariner 2.0 的第一个生产版本,这个微软内部的 Linux 发行版,用于支持从微软 Azure 到 WSL 用例等服务。CBL-Mariner 2.0 上周末进行了一次相当大的月度更新,增加了 Kpatch 以支持内核补丁,以及为内核启用实时补丁。

消息来源:Phoronix
老王点评:我感觉微软的这个内部发行版不声不响的也发展的挺快,真有一天抢了后 CentOS 市场,我觉得也不会太吃惊。

刚刚发布的 OpenSSL 3.0.4 可能存在一个比心脏流血更严重的漏洞

6 月 21 日发布的 OpenSSL 3.0.4 是为了解决一个命令注入漏洞,该漏洞在之前的补丁中没有完全解决。但这个版本本身需要进一步修复,安全研究人员称,它“容易受到远程内存损坏的影响,攻击者可以轻而易举地触发它”,可以被利用来在其中一台设备上运行任意的恶意代码。如果这个缺陷可以被远程利用(现在还不确定),它可能比心脏流血漏洞更严重。好消息是这个漏洞只影响英特尔 2016 年至 2022 年初发布的带有 AVX512 的某些 x64 芯片。

消息来源:The Register
老王点评:虽然可能影响面有限,但是一旦发布新的版本就赶快升级吧。

Firefox 92 发布

Mozilla 释出了 Firefox 92。主要新特性包括:使用 HTTPS DNS 记录自动升级到 HTTPS,如果一个域名支持 HTTPS 那么在浏览器上输入该域名的 HTTP 地址将会自动升级到 HTTPS;添加了对 AVIF 图像格式的默认支持;全域色彩级支持视频播放;此外还有 bug 和安全修正等等。

其实这些都不重要,重要的是,如何挽回老用户的心。

OpenSSL 3.0 正式发布

经过许多开发快照和三年的工作,OpenSSL 发布了 3.0。OpenSSL 3.0 从之前的 OpenSSL 和 SSLeay 双许可证转为在 Apache 2.0 许可证下发布。与之前的 OpenSSL 1.1 相比,OpenSSL 3.0 具有更大的可扩展性,对陈旧代码进行了清理和废弃以及架构上的改进。它迁移到一个基于提供者的架构,支持 Linux 内核的 TLS、完全“可插拔”的 TLSv1.3 组。

OpenSSL 的上古代码终于迎来了新的更新。

ATM 机加速退场,一年淘汰 6.54 万台

短短几年,ATM 机已经从“银行业最有用的发明”逐渐没落。根据央行数据显示,截至 2021 年二季度末,ATM 机具 98.67 万台,相较同期的 105.21 万台一年减少了 6.54 万台。全国 ATM 机数量高峰时期在 2018 年末达 111.08 万台。而从 2019 年开始,ATM 数量开始缩水。

信息化带来的影响,可能现在很多人都不带钱包、现金了吧。

国产的全功能 Linux 平板电脑 JingPad A1 众筹成功

对于动手能力强的个人用户来说,确实可以尝试在手机或平板电脑上安装“适当的” Linux 发行版。但当前正在 Indiegogo 上众筹的 JingPad Linux 平板,或许是一个更切实际的选择。它的众筹价格为 549 美元,首日就达成了超过五倍的众筹目标。

它采用的是之前发布的国产操作系统 JingOS。虽然有着类似苹果 iPadOS 的外观,但 JingOS 的底层还是基于开源的 Linux 桌面。得益于成熟的 Linux 桌面,用户能够轻松体验 LibreOffice、GIMP 等常用软件,以及流行的开发者 / 系统管理工具。

看起来不错,但是感觉价格并不便宜,希望我们可以尽早做个测评分享给大家。

OpenSSL 3.0 候选版本发布

经过了十几个 alpha 版本后,OpenSSL 3.0 今天发布了候选版本,它将在下季度发布正式版本。新的版本号跳过了 2.x,直接从 1.1.x 到了 3.0。OpenSSL 3.0 已经迁移到一个基于提供者的架构,以允许更大的灵活性。完全可插拔的 TLSv1.3组,新的编码器和解码器支持,完整的证书管理协议(CMP)实现,新的 API,以及对内核 TLS 的集成支持是 OpenSSL 3.0 的许多大变化之一。

另外 OpenSSL 3.0 现在是在 Apache 2.0 许可证下授权的,而之前是采用 “OpenSSL 许可证”和 “Original SSLeay 许可证”双许可证授权的。

在得到更多的关注和支持之后,OpenSSL 开始奋起直追,从公布的特性看,应该值得这个大版本跳跃。

联想 ThinkPad 发布驱动支持在 Linux 设置 BIOS

联想发布了一个新的 Think-LMI 驱动,即将进入 Linux 主线内核。该驱动允许在支持 WMI 接口的ThinkPad 及其它联想系统上查看和改变 BIOS/固件设置。支持读取/配置的 BIOS 选项通过 sysfs 的 /sys/class/firmware-attributes/* 暴露给用户空间。该驱动预计会进入 Linux 5.14。

通过 sysfs 公开 BIOS 设置并不是一个全新的概念。从去年开始,戴尔率先为 Linux 开展了固件属性的工作。

虽然不是开源的 BIOS 和固件,但是能在 Linux 内设置感觉是一种进步。

Telnet 缺乏加密,这使得 OpenSSL 成为连接远程系统的更安全的选择。

 title=

telnet 命令是最受欢迎的网络故障排除工具之一,从系统管理员到网络爱好者都可以使用。在网络计算的早期,telnet 被用来连接到一个远程系统。你可以用 telnet 访问一个远程系统的端口,登录并在该主机上运行命令。

由于 telnet 缺乏加密功能,它在很大程度上已经被 OpenSSL 取代了这项工作。然而,作为一种智能的 pingtelnet 的作用仍然存在(甚至在某些情况下至今仍然存在)。虽然 ping 命令是一个探测主机响应的好方法,但这是它能做的 全部。另一方面,telnet 不仅可以确认一个活动端口,而且还可以与该端口的服务进行交互。即便如此,由于大多数现代网络服务都是加密的,telnet 的作用可能要小得多,这取决于你想实现什么。

OpenSSL s\_client

对于大多数曾经需要 telnet 的任务,我现在使用 OpenSSL 的 s_client 命令。(我在一些任务中使用 curl,但那些情况下我可能无论如何也不会使用 telnet)。大多数人都知道 OpenSSL 是一个加密的库和框架,但不是所有人都意识到它也是一个命令。openssl 命令的 s_client 组件实现了一个通用的 SSL 或 TLS 客户端,帮助你使用 SSL 或 TLS 连接到远程主机。它是用来测试的,至少在内部使用与该库相同的功能。

安装 OpenSSL

OpenSSL 可能已经安装在你的 Linux 系统上了。如果没有,你可以用你的发行版的软件包管理器安装它:

$ sudo dnf install openssl

在 Debian 或类似的系统上:

$ sudo apt install openssl

安装后,验证它的响应是否符合预期:

$ openssl version
OpenSSL x.y.z FIPS

验证端口访问

最基本的 telnet 用法是一个看起来像这样的任务:

$ telnet mail.example.com 25
Trying 98.76.54.32...
Connected to example.com.
Escape character is '^]'.

在此示例中,这将与正在端口 25(可能是邮件服务器)监听的任意服务打开一个交互式会话。只要你获得访问权限,就可以与该服务进行通信。

如果端口 25 无法访问,连接就会被拒绝。

OpenSSL 也是类似的,尽管通常较少互动。要验证对一个端口的访问:

$ openssl s_client -connect example.com:80
CONNECTED(00000003)
140306897352512:error:1408F10B:SSL [...]

no peer certificate available

No client certificate CA names sent

SSL handshake has read 5 bytes and written 309 bytes
Verification: OK

New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)

但是,这仅是目标性 ping。从输出中可以看出,没有交换 SSL 证书,所以连接立即终止。为了充分利用 openssl s_client,你必须连接加密的端口。

交互式 OpenSSL

Web 浏览器和 Web 服务器进行交互,可以使指向 80 端口的流量实际上被转发到 443,这是保留给加密 HTTP 流量的端口。知道了这一点,你就可以用 openssl 命令连接到加密的端口,并与在其上运行的任何网络服务进行交互。

首先,使用 SSL 连接到一个端口。使用 -showcerts 选项会使 SSL 证书打印到你的终端上,一开始的输出要比 telnet 要冗长得多:

$ openssl s_client -connect example.com:443 -showcerts
[...]
    0080 - 52 cd bd 95 3d 8a 1e 2d-3f 84 a0 e3 7a c0 8d 87   R...=..-?...z...
    0090 - 62 d0 ae d5 95 8d 82 11-01 bc 97 97 cd 8a 30 c1   b.............0.
    00a0 - 54 78 5c ad 62 5b 77 b9-a6 35 97 67 65 f5 9b 22   Tx\\.b[w..5.ge.."
    00b0 - 18 8a 6a 94 a4 d9 7e 2f-f5 33 e8 8a b7 82 bd 94   ..j...~/.3......

    Start Time: 1619661100
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
    Extended master secret: no
    Max Early Data: 0
-
read R BLOCK

你被留在一个交互式会话中。最终,这个会话将关闭,但如果你及时行动,你可以向服务器发送 HTTP 信号:

[...]
GET / HTTP/1.1
HOST: example.com

回车键两次,你会收到 example.com/index.html 的数据:

[...]
<body>
<div>
    <h1>Example Domain</h1>
    <p>This domain is for use in illustrative examples in documents. You may use this
    domain in literature without prior coordination or asking for permission.</p>
    <p><a href="https://www.iana.org/domains/example">More information...</a></p>
</div>
</body>
</html>

Email 服务器

你也可以使用 OpenSSL 的 s_client 来测试一个加密的 Email 服务器。要做到这点,你必须把你的测试用户的用户名和密码用 Base64 编码。

这里有一个简单的方法来做到:

$ perl -MMIME::Base64 -e 'print encode_base64("username");'
$ perl -MMIME::Base64 -e 'print encode_base64("password");'

当你记录了这些值,你就可以通过 SSL 连接到邮件服务器,它通常在 587 端口:

$ openssl s_client -starttls smtp \
-connect email.example.com:587
> ehlo example.com
> auth login
##paste your user base64 string here##
##paste your password base64 string here##

> mail from: [email protected]
> rcpt to: [email protected]
> data
> Subject: Test 001
This is a test email.
.
> quit

检查你的邮件(在这个示例代码中,是 [email protected]),查看来自 [email protected] 的测试邮件。

OpenSSL 还是 Telnet?

telnet 仍然有用途,但它已经不是以前那种不可缺少的工具了。该命令在许多发行版上被归入 “遗留” 网络软件包,而且还没有 telnet-ng 之类的明显的继任者,管理员有时会对它被排除在默认安装之外感到疑惑。答案是,它不再是必不可少的,它的作用越来越小,这 很好。网络安全很重要,所以要适应与加密接口互动的工具,这样你就不必在排除故障时禁用你的保护措施。


via: https://opensource.com/article/21/5/drop-telnet-openssl

作者:Seth Kenlon 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出