linux xorddos样本分析1
样本行为
该样本为国庆期间接到的一个应急,发现为今年比较流行的xorddos,遂分析一番。
运行之后,查看进程,可以发现可疑进程ydxrooqtno,以及ppkzkneour。
多次运行发现除了ydxrooqtno之外,其余进程的id,名称一直在改变。
查看该进程镜像,可以看到该进程的文件镜像在/usr/bin/ydxrooqtno。
通过lsof发现的结果一致。
进入/usr/bin目录下,通过命令ls –lt | head查看最近时间内该目录文件的修改情况,与样本运行之后,被拷贝到/usr/bin目录下的行为一致。
查看是否有针对该程序的自启动,发现该程序被设置了自启动选项。
通过该条脚本列举该进程打开打开的所有文件,在目录/proc/pid/fd中保存了进程打开的所有文件,文件名为文件描述符,目录中每个软连接都会指向进程打开的实际文件。更详细的/proc/pid目录内容可查看一下链接http://blog.chinaunix.net/uid-16979052-id-3476223.html,运行脚本之后发现,该进程应该开启了sock与远程服务器进行通信。
既然开启了sock,通过netstat –lnp看看中招的linux中开启的网络和端口情况,似乎与我们的样本并没有很大的关系,通信的端口被隐藏了?使用了rookit技术?
还原虚拟机,重启运行样本,这次我们打开wireshark,同时使用strace启动该样本,starce常用来跟踪进程执行时的系统调用和所接收的信号,通过它,我们可以很方便的监控到整个样本的行为,更详细的内容见http://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316692.html。
通过wireshark的抓包发现,确实开启的远程通信的socket
查询ip,来自与一台香港的主机
反查一下域名,发现该ip下并没有对应的域名
之后会访问ip为211.110.1.32的服务器并从该服务器上下载名为dd.rar的压缩包。
下载之后发现此处的dd.rar文件经过了加密
到这里我们通过工具对该样本有了一个简单的了解,首先样本运行之后会将启动目录下的文件删除,并将自身拷贝到/usr/bin目录下,之后在/etc/init.d目录下建立自启动项,同时通过ps查看可以发现样本运行之后,会同时启动至少四个以上的守护进程,这些进程的名称及pid随时发生变化,从而导致通过常规的方式很难杀死样本进程,同时样本进程会与103.240.141.68以及211.110.1.32进行通信,样本通过rootkit技术将通信时使用到的端口进行了隐藏。
Strace记录
程序运行之后,会建立计划任务,如下图所示在cron.hourly中建立了gcc.sh文件,并写入相应的启动脚本,详情见http://www.jb51.net/article/15008.htm。
Init.d启动脚本设置,即该处实际上进行了两处重启动的设置,起到双保险的作用。
获取系统cpu信息。
建立socket连接。
建立http连接,下载配置脚本。
linux xorddos样本分析1的更多相关文章
- linux xorddos样本分析2
逆向分析 之后我们通过ida对该样本进行更深入的分析样本的main函数中,一开始会调用函数dec_conf对样本中的大量加密的字符串进行解密,如下图所示.
- 一个linux的样本分析
不久前收到的一个linux样本,之前linux平台下的样本见得并不多,正好做个记录. 样本启动之后,会将自身重命名拷贝到/usr/bin下,并删除自身,如此处就将自身文件amdhzbenfi命名为us ...
- 《Unix/Linux网络日志分析与流量监控》获2015年度最受读者喜爱的IT图书奖
<Unix/Linux网络日志分析与流量监控>获2015年度最受读者喜爱的IT图书奖.刊登在<中华读书报>( 2015年01月28日 19 版) 我的2015年新作刊登在< ...
- Linux Bluetooth内核分析
目录 1. 初始化 2. hci部分 Linux提供了对Bluetooth的支持,核心代码位于net/bluetooth 1. 初始化 主要由subsys_initcall调用函数bt_init()来 ...
- Linux之kernal分析与启动20160610
说一下LINUX内核的分析与启动: 一. 内核启动流程,据此配置内核(机器ID) 1.1 修改Makefile 1.2 选择默认配置 : make s3c2410_defconfig 1.3 make ...
- linux源码分析2
linux源码分析 这里使用的linux版本是4.8,x86体系. 这篇是 http://home.ustc.edu.cn/~boj/courses/linux_kernel/1_boot.html ...
- Linux网络地址转换分析
Linux网络地址转换分析 地址转换用来改变源/目的端口,是netfilter的一部分,也是通过hook点上注册相应的结构来工作. Nat注册的hook点和conntrack相同,只是优先级不同,数据 ...
- linux串口驱动分析
linux串口驱动分析 硬件资源及描写叙述 s3c2440A 通用异步接收器和发送器(UART)提供了三个独立的异步串行 I/O(SIO)port,每一个port都能够在中断模式或 DMA 模式下操作 ...
- Linux input子系统分析
输入输出是用户和产品交互的手段,因此输入驱动开发在Linux驱动开发中很常见.同时,input子系统的分层架构思想在Linux驱动设计中极具代表性和先进性,因此对Linux input子系统进行深入分 ...
随机推荐
- RabbitMQ headers Exchange
Headers Exchange headers也是一种交换机类型,但是在rabbitmq官网中的教程中并没有说到.资料也很少,但是找一找总会有的. headers与direct的模式不同,不是使用r ...
- python面向对象初级(七)
概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 面向过程编程最易被初学 ...
- ypzl药品质量不合格数据库-excel自动排版
原创: qq:231469242 import xlrdimport pandas,numpyimport matplotlib.pyplot as pltimport pandas as pd #参 ...
- .Net 中的反射(查看基本类型信息) - Part.2
反射概述 和Type类 1.反射的作用 简单来说,反射提供这样几个能力:1.查看和遍历类型(及其成员)的基本信息和程序集元数据(metadata):2.迟绑定(Late-Binding)方法和属性.3 ...
- thinkphp语言包
1.config.php语言包相关配置. //开启语言包 'LANG_SWITCH_ON' => true, 'LANG_AUTO_DETECT' => true, // 自动侦测语言 开 ...
- CentOS个人目录下中文路径转英文路径
CentOS个人目录下中文路径转英文路径 如果安装了中文版到CentOS之后,root目录及home目录下会出现中文到路径名,如"桌面"."文档"," ...
- 在windowService用Process.Start()启动程序没有界面-记录
1.在服务程序安装时编程实现,ProjectInstaller.cs using System; using System.Collections; using System.Collection ...
- Apache Shiro 学习记录1
最近几天在学习Apache Shiro......看了一些大神们的教程.....感觉收获不少.....但是毕竟教程也只是指引一下方向....即使是精品教程,仍然有很多东西都没有说明....所以自己也稍 ...
- .net core 跨平台实践
本人采用Ubuntu 14.04 来实现.net core 的跨平台实践. 首先安装Ubuntu14.04系统.安装细节问百度. 1..net core console程序的跨平台 首先新建一个con ...
- inux中fork()函数详解(原创!!实例讲解)
转载自原创博客,欢迎继续转载 点击跳转到原文