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子系统进行深入分 ...
随机推荐
- Zabbix监控mysql主从复制状态
原理 mysql slave show slave status\G 在输出信息中查看I/O线程和SQL线程的状态值(YES为正常,NO为错误) Slave_IO_Running: Yes Slave ...
- miniui后台无法接收到input传值
出错原因:在miniui中,此处应写成<input textName="current_unit",在php中才可以使用$_POST['current_unit']获取到值, ...
- Google 地图 API V3 使用入门
Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...
- MonoGame教程
http://www.gamefromscratch.com/page/MonoGame-Tutorial-Series.aspx http://rbwhitaker.wikidot.com/mono ...
- ueditor 百度编辑器,取消或自定义右键菜单
如图:有2种自定义方法,一种是改源码,一种是初始化 初始化,如下代码: var ue = UE.getEditor('XXXid',{ // contextMenu:[ {label:'', cmdN ...
- Html:form表单
1:onsubmit 事件:会在表单中的确认按钮被点击时发生. <form action="" method="post" name="form ...
- css面包屑导航编号
content:counter(flag);counter-increment: flag;-->一般给导航条编号1,2,3
- 转】C#接口-显式接口和隐式接口的实现
[转]C#接口-显式接口和隐式接口的实现 C#中对于接口的实现方式有隐式接口和显式接口两种: 类和接口都能调用到,事实上这就是“隐式接口实现”. 那么“显示接口实现”是神马模样呢? interface ...
- ML 基础知识
A computer program is said to learn from experience E with respect to some task T and some performan ...
- Websites for more Android development information
There is a vibrant, helpful Android developer community on the Web. Here are a numberof useful websi ...