Catalin Cimpanu 发布的文章

Firefox 浏览器背后的 Mozilla 基金会正在考虑对沃通(WoSign)及被其秘密收购的 StartCom(著名的 StartSSL 即其旗下产品)这两个 CA 一年内新签发的所有 SSL 证书进行封杀。

Mozilla 的工程师是在对这两个 CA 签发了一系列可疑的 SSL SHA-1 证书进行调查之后,宣布了这个禁令。

这两家 CA 试图规避 SHA-1 停用政策

该问题主要是因为各大主要浏览器厂商共同决定从 2016 年 1 月 1 日开始就停止接受采用陈旧的 SHA-1 签名算法的证书。而 Mozilla 指责沃通今年还在签发 SHA-1 签名的证书,并将签发日期倒填成去年 12 月份。

虽然 Mozilla 也允许一些其它的 CA 在 2016 年 1 月 1 日之后继续签发 SHA-1 证书,比如说赛门铁克,但是他们仅允许那些通过了复杂的审批流程的 CA 这样做,而显然沃通没有得到同意。

沃通秘密收购了 StartCom

此外,沃通似乎在否认其收购了以色列 CA 公司 StartCom。Mozilla 说,沃通已经于 2015 年 11 月 1 日百分百地收购了 StartCom。而另一方面,据奇虎 360 称,它共计持有 84% 的沃通股份。但是这些信息沃通此前都予以否认或拒绝发表意见。

此外,在 Mozilla 披露的技术细节中显示,StartCom 已经开始使用沃通的基础架构来签发新的证书了。而且,StartCom 也和沃通一样在 2016 年采用了倒填日期的手段来签发 SHA-1 证书。Mozilla 的安全工程师也展示了这种违例的案例细节。

Mozilla 的调查发现,一个和 GeoTrust CA 合作了多年的付费处理机构 Tyro 突然在 6 月中旬使用 StartCom 部署了一个 SHA-1 签名的证书,而此前该机构从未和 StartCom 有过合作。该证书看起来是在 2015 年 12 月 20 日签发的,而在同一个日期 StartCom 签发大量的 SHA-1 证书。Mozlla 发现这些证书部署于 2016 年中,这很不正常,这显然是采用倒填日期来规避 SHA-1 停用的策略。

这些问题以及其它的更多问题让 Mozilla 决定在至少一年内不再信任沃通和 StartCom 的 SSL 证书。

或许会永久封杀

Mozilla 说这个临时封杀仅针对这两个公司最新签发的证书,不影响已经分发给他们的客户的证书。如果这两个公司在一年的封杀后没有通过一系列的检查,Mozilla 将准备封杀这两个公司的所有证书。

“许多人都在盯着 Web PKI 安全体系,如果发现了这样的倒填(不管是什么原因),Mozilla 会立即永久地取消对沃通和 StartCom 根证书的信任。”该报告中说。

此外,Chrome 和其它产品的对它们的封杀也在计划中。“其它的浏览器厂商和根证书存储运营者也会做出他们自己的决定,我们在这个文档中摆出了这些信息,以便他们了解我们做出这个决定的原因,并可以据此做出他们的决定。”Mozilla 说。

Linux 用户又有一个木马需要苦恼了,就像以往一样,这些坏蛋大多部署在被劫持的 Linux 系统上,并在接受到命令后发起 DDoS 攻击。

发现了这件事的 Dr.Web 的安全研究人员说,木马似乎是通过 破壳漏洞 Shellshock 感染的这些 Linux 机器——现在仍然有很多设备没有补上这个漏洞。

该木马被命名为 Linux.DDoS.93,它首要会修改 /var/run/dhcpclient-eth0.pid 这个文件,并通过它在计算机启动时运行。如果该文件不存在,就会自己创建一个。

当该木马运行起来以后会进行初始化,它会启动两个进程,一个用于与 C&C (控制)服务器通讯,另外一个用于确保木马的父进程一直运行。

该木马启动 25 个子进程进行 DDoS 攻击

当控制该木马网络的攻击者发起攻击命令时,这个木马会启动 25 个子进程来进行 DDoS 攻击。

当前,该木马可以发出 UDP 洪泛(针对随机或特定端口),TCP 洪泛(简单的包,或给每个包随机增加至多 4096 字节的数据)和 HTTP 洪泛(通过 POST、GET 或 HEAD 请求)。

而且,该木马还能自我更新、自我删除、终止自己的进程、ping、从 C&C 服务器下载和运行文件。

当它发现某些名字时会关闭

这个木马还包括一个功能,如果在扫描计算机内存并列出活动的进程时发现如下字符串会关闭自己:

privmsg
getlocalip
kaiten
brian krebs
botnet
bitcoin mine
litecoin mine
rootkit
keylogger
ddosing
nulling
hackforums
skiddie
script kiddie
blackhat
whitehat
greyhat
grayhat
doxing
malware
bootkit
ransomware
spyware
botkiller

这些字符串大多数与信息安全领域有关,似乎是为了防止安全研究人员的反向工程研究,或者是为了避免感染该恶意软件作者自己的机器。

在感染过程中,该木马也会扫描它的旧版本,并会关闭旧版本然后安装一个新的。这意味着这是一个自动更新系统,该木马的最新版本总是会出现在被感染的机器上。

Linux 是过去一个月以来最热门的木马攻击平台,在最近 30 天内,安全研究人员已经发现、分析和曝光了其它五个 Linux 木马: RexPNScanMiraiLuaBotLinux.BackDoor.Irc

开源正在走向胜利,虽然这一天或许会来的晚一点,但是开源终将胜利。在网络安全社区里,尽管许多公司以商业软件的方式牢牢把握着自己的代码不放,但是也有很多安全方面的开源项目可供专业的安全人员使用。

搜寻这些安全相关的开源软件最好的地方显然是 GitHub。你可以使用该网站上的搜索功能来找到这些有用的工具,但是有一个地方可以让你找到那些安全方面最流行的项目,那就是 GitHub 的展示区,可能知道它的人不多。

从 2014 年开始,GitHub 展示区就会按照分类陈列这些最流行的项目。在展示区中,项目以其所获得的 星标数 stars 排名,这个列表会不断更新当前最流行的项目。

展示区包含的“安全”分类中包含了 24 个项目,这里我们列出了在 GitHub 上排名前十的安全项目。

1. osquery - 来自 Facebook

osquery 将操作系统表示为一个高性能的关系型数据库。这可以让你通过基于 SQL 的查询来获取操作系统数据。通过 osquery,将运行中的进程、加载的内核模块、打开的网络连接、浏览器插件、硬件事件或文件哈希等抽象为 SQL 数据表。

2. Metasploit Framework - 来自 Rapid7

Metasploit Framework 是一个针对远程目标主机开发和执行漏洞利用代码的工具。

3. Infer - 来自 Facebook

Facebook Infer 是一个静态分析工具。用它来分析 Objective-C、Java 或 C 代码,可以列出其中潜在的缺陷。在代码上传到手机设备之前,可以用 Infer 来找到那些致命缺陷,可以防止出现崩溃或性能下降。

4. Brakeman - 来自 PresidentBeef

Brakeman 是一个开源的静态分析工具,它可以检查 Ruby on Rails 应用的安全漏洞。

5. Radare2 - 来自 Radare 项目

Radare 是一个取证工具,是一个可编程的命令行十六进制编辑器,可以打开磁盘文件。它也支持二进制分析、反汇编代码、调试程序、连接到远程 gdb 服务器等等功能。

6. OS X Auditor - 来自 Jean-Philippe Teissier

OS X Auditor 是一个自由的 Mac OS X 计算机取证工具,它可以解析各种类型的文件,获取其中的可疑内容。

7. BeEF - 来自 BeEF 项目

BeEF 简单的来说就是一个 浏览器利用框架 Browser Exploitation Framework 。它是一个针对浏览器的脆弱性测试工具。

8. Cuckoo - 来自 Cuckoo Sandbox 项目

Cuckoo Sandbox 是一个自动的恶意软件动态分析系统。简单的来说,就是你可以将任何可疑的文件丢给它,只需要几秒钟,Cuckoo 就可以给出在隔离的环境中执行的大致结果。

9. Scumblr - 来自 Netflix

Scumblr 是一个 Web 应用,它可以周期性地进行检查,并根据检查结果采取不同的处置方法。

10. Moloch - 来自 AOL

Moloch 是一个开源的、大规模的,抓包、索引并存储进数据库的系统。它提供了一个简单的 Web 界面,可以用来查看、检索和导出所捕获的数据包。它支持 API,可以直接下载 PCAP 数据和 JSON 格式的会话数据。Moloch 并不是用来替换 IDS 的,而是用来配合它们以标准的 PCAP 格式存储并索引所有的网络数据,从而可以快速访问。Moloch 可以跨系统部署,并可以处理高达每秒 10 Gb 的流量。

以上就是现在 GitHub 上最流行的安全相关的开源项目。你可以经常去展示区看看有无新的流行项目出现。

微软终于发布了 TypeScript 2.0 的第一个 RC 版本。TypeScript 是一个简化版的 JavaScript 语言,被大量用于各种 Web 项目,包括下面提到的著名的 AngularJS 框架。

TypeScript 2.0 中主要的特性是“ 标签结合 tagged unions ”,这个特性可以将两个不同的数据结构联合到一起。你可以把它想象成将一个圆圈和一个方块放一起,这个隐喻来自微软解释标签结合的博文中。

支持标签结合的语言包括 C++、 Scala、 F#、Rust 和 Swift 等等。支持这种特性的原因是,标签结合可以改进类型安全,并减少经常困扰开发者的类型错误。

而另外一方面,Google 也有一些动作……

Google 已经谈论 AngularJS 2.0 很久了。很多人都期望 Google 能在去年底发布 2.0 的稳定版,不过我们听说,就算是到了今年年底也不会见到稳定版。

不过,也快了!Google 今天宣布发布了 Angular 2.0 RC6,支持国际化(I18N)、更多的表单功能,并由于对 Ahead of Time (AoT) 的兼容和支持 ES6 2015 模块而改进了性能。

同时 Google 也宣布发布了 Angular Material 1.1,这是一个 AngularJS 的 UI 组件包。Angular Material 2.x 当前还处于 alpha 阶段,看起来会在 AngularJS 2.0 发布之后才会面世。当前,Angular Material 2.x 已经从 6 个组件增加到了 18 个组件了。

美国 国家标准和技术协会 National Institute of Standards and Technology (NIST)发布了《 数字身份验证指南 Digital Authentication Guideline (DAG)》的最新草案,其中暗示将来会禁用基于短信的 双因子认证方案 Two-Factor Authentication (2FA)。

数字身份验证指南 Digital Authentication Guideline (DAG)》是一系列用于软件商构建安全服务的规则,也被政府和私人机构用于评估其服务和软件的安全性。

NIST 的专家们一直不断地更新该指南,以便应对 IT 领域的快速变化。

基于短信的双因子认证仍然可以用,但是不会太久了

最新的《数字身份验证指南》草案,NIST 正式地不建议公司继续使用基于短信的认证,甚至说将来考虑在该指南中将基于短信的双因子认证视作不安全的。NIST 在该草案中说:

“如果使用基于公共移动电话网络的短信作为带外验证,验证者必须验证其预注册的手机号码是基于移动网络的,而非 VoIP(或者其它基于软件的),然后才能发送短信到预注册手机号码。修改预注册手机号码时如果没有双因子验证是不能进行的。不推荐使用短信进行带外验证,本指南的将来版本中将不再允许这种方式。”

NIST 的指南当中认为基于短信的双因子认证是不安全的,因为用户不会总是带着电话。

在该指南中,推荐软件应用应该使用令牌和软件加密验证器,这可能是手机应用或硬件设备的形式,但是就像手机一样,也可能被偷走或“临时借走”。但该指南认为这种风险是可接受的,而不像令牌或软件加密验证器那样,短信在 VoIP 服务之下是一个影响到了联合信任因子的缺陷。

短信是不安全的,特别是在 VoIP 连接下

因为一些 VoIP 服务允许劫持短信,所以 NIST 建议厂商在基于短信的双因子系统在发送短信验证码之前,对使用 VoIP 连接的访问进行特别检查。

短信是一个广泛使用的不安全协议,仅在上周,Context Information Security 的安全研究人员就披露了又一起依赖于短信协议而危及到了其用户和设备的攻击。随着对这种攻击类型的越来越多的研究,软件厂商、公司以及用户会逐渐认识到应该换到更安全的验证方式上。

当前的 NIST 指南仍在讨论之中,但是基本上可以确定,该指南的将来版本不会再将使用基于短信的认证方式推荐为带外验证的安全方式。

生物识别技术是一个新兴发展方向

在该指南草案中,也提到了生物特征识别技术在特定条件下是可以作为一个验证方式的:

“因此,对生物识别技术的验证是支持的,只需要遵循如下准则:生物识别技术应该与其他(你知道的或你拥有的)认证因子配合使用。”

世界上编程方面的最大的出版商 Packt Publishing 最近对 11000 名访客进行了调查,根据调查结果,Python 和 JavaScript 是当今最流行的编程语言,而 Java 紧随其后,排名第三。

调查内容包括开发者使用的编程语言、喜欢的框架、薪酬信息等。调查显示,如果就编程人员每天都要使用的语言来看,当今前10名的编程语言排名是 Python、JavaScript、Java、PHP、HTML(虽然不算编程语言)、 C#、SQL、CSS(也不算) 、C++ 和 R。

从之前的类似调查中可以发现,所有的调查均显示 Python 和 JavaScript 得到了极大流行。

Packt Publishing 的调查发现,编程人员薪水和以上排名完全不同,诸如 bash、Perl 和 Scala 语言编程人员获得的年薪平均超过了 8 万美元,甚至 Bash 编程语言人员的薪酬达到了 10 万美元,而 PHP 和 C 语言编程人员年薪几乎没有到达 4 万美元。

而在 Web 开发人员使用的工具方面,AngularJS 取得了第一,其次是 Facebook 的 React.js 框架、Node.js、Docker、Laravel、 Bootstrap、WordPress 和 AWS。

过去几年最流行的新编程语言排行榜当中,毫无疑问 Swift 高居榜首,其次是 C#、Go、Rust 和 Elixir。

新的框架方面, Docker 也如预期的那样得到第一,Apache Spark 和 AWS 分列二、三名。

更多的调查结果,可以看看 Packt Publishing 的报告(需注册)。