Linux服务器应急事件溯源报告

小博博 · 2016/02/18 17:43

Author:Inn0team

0x00 目录

  • 关于目标环境的中间进度检测报告
  • 一:情况概述
  • 二:取证情况
    • 2.1 目标网络情况
    • 2.2 针对xxx服务器中间件的检测
    • 2.3 针对xxx服务器进程及端口的检测
    • 2.4 发现攻击者的攻击操作
  • 三:溯源操作
    • 3.1 关于攻击者的反向检测
  • 四:攻击源确定
    • 4.1 确定攻击入口处
  • 五:安全性建议

关于目标环境的中间进度检测报告

0x01 情况概述


监控软件监控到服务器存在异常的访问请求,故对此服务器进行安全检查。

通过提供的材料发现内网机器对某公网网站存在异常的访问请求,网络环境存在着异常的网络数据的访问情况。针对其服务器进行综合分析发现了病毒文件两例,内网扫描器两例,通过以上的发现证实服务器已被黑客入侵。

0x02 取证情况


2.1 目标网络情况

下文中的内网内ip以及公网ip为替换后的脱敏ip。

IP 所属 操作系统
1.168.xxx.xxx 某业务员服务器 Linux2.6.32 x86_64操作系统
192.168.0.0/24 DMZ区 Linux&windows
10.10.0.0/24 核心区 Linux&windows
  防火墙  

2.2 针对xxx服务器中间件的检测

监测存在异常的服务器开放了80端口和21端口,安装了tomcat中间件。首先进行tomcat中间件的排查,查询得知服务器对外开tomcat文件夹路径为/home/XXX/tomcat/XXX _tomcat ,查询tomcat未使用弱密码:

图1:tomcat未使用默认弱口令

针对tomcat部署服务进行检查,未发现可疑部署组件:

图2:未发现可疑的部署组件

图3:未发现可疑的host配置

2.3 针对xxx服务器进程及端口的检测

针对目标服务器进行了进程以及端口的检测,发现了可疑现象入下图所示:

图4:发现可疑占用情况

发现可疑现象后查找“l”所在的路径,入下图所示:

图5:发现可疑文件路径

在/dev/shm路径下发现存在“l”与“conf.n”文件

图6:找到可疑文件

将“l”与“conf.n”下载到本地进行分析,“l”程序为inux远控木马Linux.DDOS.Flood.L,经本地分析“l”程序为linux下僵尸木马,同时具有远控的功能

图7:证实为Linux.DDOS.Flood.L木马

通过继续分析目标服务器中的可以进程与端口占用情况,发现另外可疑文件,如下图所示:

图8:发现可疑文件vkgdqddsx

将可疑文件进行本地分析,证实此文件为病毒文件:

图9:证实为病毒文件

2.4 发现攻击者的攻击操作

针对目标环境进行彻底排查,发现攻击者使用wget操作从 http://111.205.192.5:2356服务器中下载“l”病毒文件,并执行了“777”加权的操作。

其记录文件如下图所示:

图10:发现木马文件下载操作

图11:通过l文件的时间状态定位到疑似攻击者下载时间为2015-01-18 04:54:05

图12:定位到可疑时间段连接ip地址

图13:不同时间段的可疑连接ip

通过进一步的对可疑。

通过分析目标服务器日志文件,发现攻击者下载病毒文件后又使用内网扫描软件“.x”调用其“pascan”和“scanssh”模块进行内网ssh扫描,通过分析发现攻击者收集到了目标网络环境中的常用密码来进行针对性的扫描测试。

如下图所示:

图14:发现目标服务器中存在ssh爆破以及网段扫描软件

图15:通过在测试环境中测试发现为扫描软件

图16:攻击者使用扫描软件进行内网网段的扫描

通过继续对扫描软件进行深入挖掘,发现攻击者使用扫描软件得到的其他内网的ip地址(部分):

图:17 攻击者得到的内网部分地址及密码

尝试使用此地址中的192.168.21.231和192.168.21.218进行ssh登录,可使用root:huawei成功进行ssh连接(其他地址及口令不再进行测试),并在内网机器中发现使用弱口令“123456”并发现了同样的“l”病毒文件。

其记录文件如下图所示:

图18:进行ssh连接

图19:连接成功后进行“ifconfig”操作

图:在网络中的其他机器也发现了同样的病毒文件

在扫描器中发现了攻击者使用的“passfile”字典文件,从中可以发现攻击者使用的字典具有很强的针对性(初步断定攻击者为在网络环境中通过查询密码文件等操作获取的相关密码):

隐私信息--此处不贴图
图20:发现针对性极强的密码字典

通过继续对日志文件进行排查,发现攻击者使用扫描器进行攻击的历史记录,验证了搜集到的信息:

图21:攻击者进行攻击的历史记录

通过即系分析,发现攻击者在进入目标服务器后,又进行了防火墙权限修改、“udf”权限提升、远程连接等其他操作。其中“udf病毒文件”未在目标服务器中发现,在后期进行反追踪中在攻击者服务器中获取到“udf”文件,进行本地检测后病毒文件。

其记录文件如下图所示:

图22: 修改iptables防火墙配置

图23:被修改后的防火墙配置

图24:攻击者进行提权的操作

图25:“udf”文件证实为病毒文件

通过对攻击者完整的攻击取证,可证实攻击者通过SSH连接的方式使用guest_cm用户而和root用户进行远程连接,连接之后使用Wget方式下载并种植在目标服务器中“l”和“vkgdqddusx”病毒文件,并使用“udf”进行进一步的权限操作,然后使用“.x”扫描软件配合针对性极强的密码字典进行内网的扫描入侵,并以目标服务器为跳板使用root和xxx账户登录了内网中的其他机器在入侵过程中入侵者将部分相关日志进行了清除操作。

0x03 溯源操作


3.1 关于攻击者的反向检测

在取证过程中发现攻击者服务器使用以下三个ip

xxx.xxx.xxx.x、xxx.xxx.xxx.xxx、xxx.xx.xxx.xx(打个马赛克)

通过对这三个IP进行溯源找到

http://111.205.192.5:2356/ 网站使用hfs服务器搭建,文件服务器内存储着各种病毒文件,其中找到了在“l”“udf”等病毒文件,证实前文中的判断。

图26:文件服务器中存储着在本次攻击中所使用的病毒文件

通过其他手段查询得知使用ip地址曾绑定 www.xxxx.com网站,并查找出疑似攻击者真实姓名xxx、xxx,其团体使用xxxxxx@qq.com、wangzxxxxxx.yes@gmail.com等邮箱,使用61441xx、3675xx等QQ。并通过某种手段深挖得知攻击者同事运营着多个博彩、私服类网站。

其他信息请看下图:

图27:攻击团伙使用支付宝及姓名

图28:攻击团伙旗下的其他博彩、私服网站

图29:攻击者旗下部分博彩、私服网站

打码处理
图30:攻击团伙成员QQ信息

0x04 攻击源确定


4.1 确定攻击入口处

综合我们对内网多台服务器的日志分析,发现造成本次安全事件的主要原因是:

10.0.xx.xx设备的网络部署存在安全问题,未对其进行正确的网络隔离,导致其ssh管理端口长期暴露在公网上,通过分析ssh登陆日志,该台设备长期遭受ssh口令暴力破解攻击,并发现存在成功暴力破解的日志,攻击者正是通过ssh弱口令获取设备控制权限,并植入木马程序进一步感染内网服务器。

具体攻击流程如下图所示:

图31:黑客本次攻击流程图

图:32:存在长期被爆破的现象

图33:被某公网ip爆破成功进入机器

经分析,2016年1月12号公网ip为211.137.38.124的机器使用ssh爆破的方式成功登陆进入10.0.xx.xx机器,之后攻击者以10.0.16.24机器为跳板使用相同的账户登录进入192.168.xxx.xxx机器。

图34:相同账户进入192.168.150.160机器

攻击者进入192.168.150.160机器后,于2016年1月17日使用wget的方式从http://111.205.192.5:23561网站中下载了 “Linux DDos”木马文件,并使用扫描器对内网进行扫描的操作。

图:35攻击者下载“Linux DDos”病毒文件

攻击者通过相同的手段在2016年1月17日使用sftp传输的方式进行了木马的扩散行为,详细情况见下图:

图36:使用SFTP传输的方式进行木马的扩散

0x05 安全性建议


  1. 对使用密码字典中的服务器进行密码的更改。
  2. 对网络环境进行彻底的整改,关闭不必要的对外端口。
  3. 网络环境已经被进行过内网渗透,还需要及时排查内网机器的安全风险,及时处理。
  4. SSH登录限制
    修改sshd配置文件

由于服务器较多,防止病毒通过ssh互相传播,可通过修改sshd_config,实现只允许指定的机器连接,方法如下:

登录目标主机,编辑/etc/ssh/sshd_config

1
# vi /etc/ssh/sshd_config

在文件的最后追加允许访问22端口的主机IP,(IP可用*号通配,但不建议)

Linux服务器应急事件溯源报告的更多相关文章

  1. Linux服务器中毒事件(libudev.so)

    今天机房管理人员反馈公司的某台服务器在防火墙上的连接数超限,登陆服务器时发现非常卡顿,远程登录后查看,CPU持续100%,且有一长度为10的随机字符串进程,kill掉,会重新生成另外长度为10的字符串 ...

  2. Linux安全事件应急响应排查方法总结

    Linux安全事件应急响应排查方法总结 Linux是服务器操作系统中最常用的操作系统,因为其拥有高性能.高扩展性.高安全性,受到了越来越多的运维人员追捧.但是针对Linux服务器操作系统的安全事件也非 ...

  3. 20个Linux服务器性能调优技巧

    Linux是一种开源操作系统,它支持各种硬件平台,Linux服务器全球知名,它和Windows之间最主要的差异在于,Linux服务器默认情况下一般不提供GUI(图形用户界面),而是命令行界面,它的主要 ...

  4. Linux服务器性能查看分析调优

    一 linux服务器性能查看 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc ...

  5. 【转】linux服务器性能查看

    转载自https://blog.csdn.net/achenyuan/article/details/78974729 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuin ...

  6. Linux服务器性能分析与调优

    一 linux服务器性能查看 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc ...

  7. linux服务器性能查看

    1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l 2.查看每个物理cpu ...

  8. [转]20个你不得不知的Linux服务器性能调优技巧

    Linux是一种开源操作系统,它支持各种硬件平台,Linux服务器全球知名,它和Windows之间最主要的差异在于,Linux服务器默认情况下一般不提供GUI(图形用户界面),而是命令行界面,它的主要 ...

  9. Linux 服务器的基本性能及测试方法

    1. 摘要 一个基于 Linux 操作系统的服务器运行的同时,也会表征出各种各样参数信息.通常来说运维人员.系统管理员会对这些数据会极为敏感,但是这些参数对于开发者来说也十分重要,尤其当程序非正常工作 ...

随机推荐

  1. mysql 将时间戳与日期时间的转换

    from_unixtime()是MySQL里的时间函数 mysql>SELECT FROM_UNIXTIME( 1249488000, '%Y%m%d' )  ->20071120 mys ...

  2. C++入门经典-例3.12-使用if-else语句实现根据输入的字符输出字符串

    1:代码如下: // 3.12.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> usin ...

  3. win2003 64位系统IIS配置方法

    IIS7 很简单,在网站对应的应用程序池上右键高级设置,常规里的启用32位应用程序改为true就可以了,IIS6稍微复杂一些, 1,命令行里运行 cscript.exe %SYSTEMDRIVE%\i ...

  4. leetcode-easy-listnode-206 reverse linked list

    mycode   98.87 # Definition for singly-linked list. # class ListNode(object): # def __init__(self, x ...

  5. DeepFaceLab参数详解之Batch-Size的使用和取值!

    Batch-Size简称BS. 这是一个非常常见的参数,所有模型都具备的一个参数. 这其实是深度学习中的一个基础概念.要说理论可以说出一大堆,大家可以先简单的理解为一次处理的图片张数.为了防止吓跑小白 ...

  6. Gradle 依赖

    在开发中,我们经常使用compile,api,implementation引入库,这三种是有区别的. 1 api和compile api和compile关键字作用效果是一样的,使用时可以互相替换. 实 ...

  7. JS - neo4j-browser 初始化时运行命令的逻辑分析

    背景 最近需要改点 neo4j-browser 的代码做个 demo,分析初始化时运行命令的代码时花了很多时间,记录一下. 目的 找出 dispatch SINGLE_COMMAND_QUEUED a ...

  8. 自定义PopupWindow实现常用效果

    package com.loaderman.customviewdemo; import android.content.Context; import android.view.View; impo ...

  9. 【5】标题上的小logo

    <link rel="shortcut icon" href="logo图片的路径">   shortcut --- 捷径,近路 icon --- ...

  10. zk 两阶段提交(待完善)

    zk 节点是一个 QuorumPeer,选举结束后,leader 和 follower 各自执行自己的逻辑: org.apache.zookeeper.server.quorum.QuorumPeer ...