月兔网络编程学习
ForSSHe的黑暗面
2018-12-18 月兔


    SSH是Secure SHell的缩写,是一种通过加密网络链接远程连接计算机和设备的网络协议。它通常用于使用文本模式控制台管理Linux服务器。SSH是系统管理员管理虚拟、云或专用及租用Linux服务器的最常用方式。



    几乎所有Linux发行版中嵌入的都是OpenSSHportable版本。攻击者用来维护受感染Linux服务器上持久性的一种流行方法是对已安装的OpenSSH服务器和客户端进行后门处理。基于OpenSSH创建恶意软件很受欢迎有几个原因:



    · 它不需要在受感染的计算机上打开新的TCP端口。 SSH已经存在并且可以从互联网上访问。



    · OpenSSH守护程序和客户端能以明文形式查看密码,为攻击者提供窃取凭据的可能性。



    · OpenSSH源代码是开源的,可以轻松创建“自定义”(后门)版本。



    · OpenSSH的目的旨在使其难以实现中间人攻击以及窥探用户的活动。攻击者可以利用此功能在受感染服务器上进行恶意活动时保持警惕。



    为了更好的对抗Linux恶意软件威胁,ESET研究人员继续寻找已知和未知的野外OpenSSH后门。我们从之前一项研究工作Operation Windigo开始。在该白皮书中,我们详细描述了Windigo的多个恶意软件组件以及它们如何协同工作。其核心是Ebury,这是一个OpenSSH后门和凭证窃取程序,安装在全球数以万计的受感染Linux服务器上。



    最初在Operation Windigo一文中未讨论过的东西,ESET研究人员在会议上讨论过,那就是这些攻击者在部署自己的后门(Ebury)之前试图检测其他OpenSSH后门的方式。他们使用自己开发的Perl脚本,其中包含40多个不同后门的特征。


@sd = gs( 'IN: %s@ \(%s\) ', '-B 2' );
@sc = gc( 'OUT=> %s@%s \(%s\)', '-B 1' );
if ( $sd[1] =~ m|^/| or $sc[0] =~ m|^/| ) {
    print
      "mod_sshd29: '$sd[0]':'$sd[1]':'$sd[2]'\nmod_sshc29: '$sc[0]':'$sc[1]'\n";
    ssh_ls( $sd[1], $sc[0] );
}


    在Windigo Perl脚本中找到的样本特征,用于检测OpenSSH后门。



    当查看这些特征时,我们很快意识到我们没有匹配脚本中描述的大多数后门的样本。与我们相比,恶意软件运营商实际上拥有更多关于野外SSH后门的知识和样本。为应对这种情况,我们开始使用他们的特征搜索错失的恶意软件样本。这有助于我们找到安全行业以前不了解的样本,并报告详细的研究结果。



今天,ESET研究人员正在发表一篇论文,重点关注21个野外OpenSSH恶意软件家族。虽然其中一些后门已经在网上进行了分析和记录,但直到现在还没有对大多数后门进行分析。本文的目的是概述当前的OpenSSH后门环境。这是一项长期研究项目的结果,涉及编写规则和检测,部署定制蜜罐,分析样本以及分析不同的恶意软件家族。



揭开黑暗的面纱



    在Windigo研究之后不久,我们将上述Perl脚本中的签名特征转换为YARA规则(现在可在 GitHub上获得),并使用它们从我们的各种feed中查找可能的新恶意软件样本。我们收集了三年来的新样本,筛选出误报后,得到了几百个木马化的OpenSSH二进制文件。着重分析了在不同后门中使用一组共同特征。其中两个特点脱颖而出:



    · 21个家族中的18个具有凭证窃取功能,可以窃取客户端和服务器使用的密码和/或密钥。



    · 21个家族中的17个具有后门模式,允许攻击者以隐秘且持久的方式连接回受感染的计算机。



    有关这些OpenSSH后门的常见功能的更多详细信息,请参阅白皮书。



    在对收集的样本进行分析的同时,我们建立了一个定制的蜜罐架构(在白皮书中详细介绍)以扩展我们的结果。该想法是使用从样本逆向工程的传输技术向攻击者提供(即故意泄漏)凭证。这将允许我们在攻击者感染服务器后观察其行为,并希望获得最新的样本。



     将我们的被动狩猎与YARA规则集以及蜜罐相互结合起来,可让我们深入了解攻击者的活跃程度以及他们的技能组合。



1.jpg




    这张图片总结了这项研究中的OpenSSH后门系列。我们的一些读者肯定会认出这些名字与星球大战中的行星相对应。请注意,它们与ESET的检测名称不对应;它只是在研究中识别它们的便捷方式。他们的检测名称和各种IoC数据在白皮书和GitHub IoC repository中提供。



评估一个家族的复杂性可能是主观的。我们试图尽可能客观,并根据以下几个因素进行分类:



· 存在传输技术 – 存在C&C服务器、网络协议、传输或存储中的加密等。



· 提供OpenSSH附加功能模块的实现 – 附加命令,加密货币挖掘等。



· 使用加密或混淆来使分析更加困难。



每个家族在完整的报告中都有自己的完整描述,但银河系代表仍然有一些特点:



· 根据我们的样本集,代码复杂性对于最近的家族来说越来越重要。



· 我们收集了较旧和较简单(通常是现成的)家族的更多样本。这可以解释为:更复杂的更难以检测并且不太普遍。



几个有趣的“行星”



从技术角度来看,我们发现的一些后门并不是特别新颖或有趣。但是,有一些例外情况表明,一些攻击者正在投入大量精力来维护他们的僵尸网络。



其中之一是Kessel。 Kessel因其与C&C服务器的多种通信方法脱颖而出。它实现了HTTP,raw TCP和DNS。除了要求窃取凭证外,C&C服务器还能够发送其他命令,例如从受感染的机器下载或上传文件。与其C&C服务器的所有通信也都是加密的。C&C服务器也很新:域名在2018年8月注册。



2.jpg




     另一个这样的例子是Kamino。通过对样本的分析,我们发现此威胁已经存在很长时间并且在混淆技术和使用方面有长足发展。据ESET研究人员在2013年所记录,它首先被一项据称利用DarkLeech恶意软件重定向流量的犯罪活动所使用。有趣的是,它与多年后由一个名为Carbanak的组织对俄罗斯银行的攻击所使用的后门相同,上述研究由Group-IB提供。从犯罪软件到更有针对性的攻击的这种转变是有趣的。人们很容易认为这两种攻击来自同一个群体,但也可以通过原作者将其代码出售给多个犯罪集团来解释。



    白皮书中还提供了Chandrila(在密码中传递数据)和Bonadan(加密货币挖掘功能)的详细分析。



缓解和检测



    由于我们分析的数据主要针对提取的恶意软件样本,因此难以识别其原始感染媒介。技术可能包括:使用受害者使用受感染的SSH客户端后窃取的凭据,暴力破解或利用服务器公开的存在漏洞的服务。



    任何上述攻击媒介都可能在未来的攻击中使用,因此应遵循旨在防止系统受到感染的良好做法:



    · 使系统保持最新状态。



    · 支持SSH的基于密钥的身份验证。



    · 禁用远程root登录。



    · 使用SSH的多因素身份验证解决方案。



    ESET产品将分析的OpenSSH后门检测为Linux / SSHDoor变体。此外,我们使用的YARA规则集可以帮助对潜在样本进行分类。白皮书提供了有关使用Linux软件包管理器验证OpenSSH文件的更多详细信息,以验证已安装的可执行文件的完整性。



总结



    通过这项研究,我们希望能够揭示OpenSSH后门以及一般的Linux恶意软件。正如通过代码复杂多样所观察到的那样,一些攻击者只是简单的重用可用的源代码,而其他攻击者则真正的努力付诸实践。此外,通过自定义蜜罐进行的主动搜索表明,攻击者仍处于活动状态,并且在部署后门时非常谨慎。



    阅读完论文后,你可能会觉得现在有比以前更多的Linux恶意软件,并呈现上升趋势。我们认为情况并非如此:一直存在的Linux恶意软件,但由于缺乏可视性,它会长时间处于盲区。



    仍有许多悬而未决的问题:这些家族的普遍程度如何?攻击者如何使用受感染系统?除了窃取凭据外,他们还使用其他技术进行传播吗?



    ESET研究人员认为,系统管理员和恶意软件研究人员可以在对抗服务器端恶意软件方面互相帮助。如果有关于我们描述(或未描述)后门的其他详细信息,或者有任何疑问,请随时通过threatintel@eset.com与我们联系。



    完整的白皮书:https://www.welivesecurity.com/wp-content/uploads/2018/12/ESET-The_Dark_Side_of_the_ForSSHe.pdf



欢迎关注月兔网络微信公众号“yuetunetwork”(づ ̄3 ̄)づ╭❤~



gzh.jpg


发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容