1.一次Linux系统被服务器被rootkit攻击的木马源码处理思路和处理过程
2.Rootkit病毒是什么?
3.rootkit.win32.apent.awk是什么木马
一次Linux系统被服务器被rootkit攻击的处理思路和处理过程
IT行业发展到现在,安全问题已经变得至关重要,木马源码从最近的木马源码“棱镜门”事件中,折射出了很多安全问题,木马源码信息安全问题已变得刻不容缓,木马源码而做为运维人员,木马源码怎么上传源码到phpstudy就必须了解一些安全运维准则,木马源码同时,木马源码要保护自己所负责的木马源码业务,首先要站在攻击者的木马源码角度思考问题,修补任何潜在的木马源码威胁和漏洞。一次Linux被入侵后的木马源码分析
下面通过一个案例介绍下当一个服务器被rootkit入侵后的处理思路和处理过程,rootkit攻击是木马源码Linux系统下最常见的攻击手段和攻击方式。
1、木马源码受攻击现象
这是木马源码一台客户的门户网站服务器,托管在电信机房,客户接到电信的通知:由于此服务器持续对外发送数据包,导致M带宽耗尽,于是电信就切断了此服务器的网络。此服务器是Centos5.5版本,对外开放了、端口。
从客户那里了解到,网站的访问量并不大,所以带宽占用也不会太高,而耗尽M的带宽是绝对不可能的,那么极有可能是服务器遭受了流量攻击,于是登录服务器做详细的检测。
2、初步分析
在电信人员的配合下通过交换机对该服务器的网络流量进行了检测,发现该主机确实存在对外端口的扫描流量,于是登录系统通过“netstat –an”命令对系统开启的端口进行检查,可奇怪的是,没有发现任何与端口相关的网络连接。接着使用“ps –ef”、“top”等命令也没有发现任何可疑的进程。于是字符源码16进制怀疑系统是否被植入了rootkit。
为了证明系统是否被植入了rootkit,我们将网站服务器下的ps、top等命令与之前备份的同版本可信操作系统命令做了md5sum校验,结果发现网站服务器下的这两个命令确实被修改过,由此断定,此服务器已经被入侵并且安装了rootkit级别的后门程序。
3、断网分析系统
由于服务器不停向外发包,因此,首先要做的就是将此服务器断开网络,然后分析系统日志,寻找攻击源。但是系统命令已经被替换掉了,如果继续在该系统上执行操作将变得不可信,这里可以通过两种方法来避免这种情况,第一种方法是将此服务器的硬盘取下来挂载到另外一台安全的主机上进行分析,另一种方式就是从一个同版本可信操作系统下拷贝所有命令到这个入侵服务器下某个路径,然后在执行命令的时候指定此命令的完整路径即可,这里采用第二种方法。
我们首先查看了系统的登录日志,查看是否有可疑登录信息,执行如下命令:
more /var/log/secure |grep Accepted
通过对命令输出的查看,有一条日志引起了我们的怀疑:
Oct 3 :: webserver sshd[]: Accepted password for mail from ... port ssh2
这条日志显示在月3号的凌晨3点分,有个mail帐号从...这个IP成功登录了系统,mail是系统的内置帐号,默认情况下是无法执行登录操作的,而...这个IP,经过查证,是来自爱尔兰的一个地址。从mail帐号登录的时间来看,早于此网站服务器遭受攻击的时间。
接着查看一下系统密码文件/etc/shadow,又发现可疑信息:
mail:$1$kCEd3yD6$W1evaY5BMPQIqfTwTVJiX1::0::7:::
很明显,mail帐号已经被设置了密码,并且被修改为可远程登录,之所以使用mail帐号,提现页面源码猜想可能是因为入侵者想留下一个隐蔽的帐号,以方便日后再次登录系统。
然后继续查看其他系统日志,如/var/log/messages、/var/log/wtmp均为空文件,可见,入侵者已经清理了系统日志文件,至于为何没有清空/var/log/secure文件,就不得而知了。
4、寻找攻击源
到目前为止,我们所知道的情况是,有个mail帐号曾经登录过系统,但是为何会导致此网站服务器持续对外发送数据包呢?必须要找到对应的攻击源,通过替换到此服务器上的ps命令查看系统目前运行的进程,又发现了新的可疑:
nobody 1 6 Sep ? 4-:: .t
这个.t程序是什么呢,继续执行top命令,结果如下:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
nobody 0 m m S .3 .5 : .t
从输出可知,这个t程序已经运行了4天左右,运行这个程序的是nobody用户,并且这个t程序消耗了大量的内存和cpu,这也是之前客户反映的网站服务器异常缓慢的原因,从这个输出,我们得到了t程序的进程PID为,接下来根据PID查找下执行程序的路径在哪里:
进入内存目录,查看对应PID目录下exe文件的信息:
[root@webserver ~]# /mnt/bin/ls -al /proc//exe
lrwxrwxrwx 1 root root 0 Sep : /proc//exe - /var/tmp/…/apa/t
这样就找到了进程对应的完整程序执行路径,这个路径很隐蔽,由于/var/tmp目录默认情况下任何用户可读性,而入侵者就是利用这个漏洞在/var/tmp目录下创建了一个“…”的目录,而在这个目录下隐藏着攻击的程序源,进入/var/tmp/…/目录,发现了一些列入侵者放置的rootkit文件,列表如下:
[root@webserver ...]#/mnt/bin/ls -al
drwxr-xr-x 2 nobody nobody Sep : apa
-rw-r--r-- 1 nobody nobody 0 Sep : apa.tgz
drwxr-xr-x 2 nobody nobody Sep : caca
drwxr-xr-x 2 nobody nobody Sep : haha
-rw-r--r-- 1 nobody nobody 0Sep : kk.tar.gz-
rwxr-xr-x 1 nobody nobody 0 Sep : login
-rw-r--r-- 1 nobody nobody 0 Sep : login.tgz
-rwxr-xr-x 1 nobody nobody 0 Sep : z
通过对这些文件的分析,基本判断这就是我们要找的程序攻击源,其中:
1)、z程序是vba代码助手源码用来清除系统日志等相关信息的,例如执行:
./z ...
这条命令执行后,系统中所有与...有关的日志将全部被清除掉。
2)、在apa目录下有个后门程序t,这个就是之前在系统中看到的,运行此程序后,此程序会自动去读apa目录下的ip这个文件,而ip这个文件记录了各种ip地址信息,猜想这个t程序应该是去扫描ip文件中记录的所有ip信息,进而获取远程主机的权限,可见这个网站服务器已经是入侵者的一个肉鸡了。
3)、haha目录里面放置的就是用来替换系统相关命令的程序,也就是这个目录下的程序使我们无法看到操作系统的异常情况。
4)、login程序就是用来替换系统登录程序的木马程序,此程序还可以记录登录帐号和密码。
5、查找攻击原因
到这里为止,服务器上遭受的攻击已经基本清晰了,但是入侵者是如何侵入这台服务器的呢?这个问题很重要,一定要找到入侵的根源,才能从根本上封堵漏洞。
为了弄清楚入侵者是如何进入服务器的,需要了解下此服务器的软件环境,这台服务器是一个基于java的web服务器,安装的软件有apache2.0.、tomcat5.5,apache和tomcat之间通过mod_jk模块进行集成,apache对外开放端口,由于tomcat没有对外开放端口,所以将问题集中到apache上面。
通过查看apache的配置发现,apache仅仅处理些静态资源请求,而网页也以静态页面居多,所以通过网页方式入侵系统可能性不大,解析源码pdf下载既然漏洞可能来自于apache,那么尝试查看apache日志,也许能发现一些可疑的访问痕迹,通过查看access.log文件,发现了如下信息:
... - - [/Sep/::: +] "GET /cgi-bin/awstats.pl?configdir=|echo;echo;ps+-aux% HTTP/1.0" "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; pt-BR; rv:1.8.1) Gecko/ Firefox/2.0"
... - - [/Sep/::: +] "GET /cgi-bin/awstats.pl?configdir=|echo;echo;cd+/var/tmp/.../haha;ls+-a% HTTP/1.0" "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; pt-BR; rv:1.8.1) Gecko/ Firefox/2.0"
至此,发现了漏洞的根源,原来是awstats.pl脚本中configdir的一个漏洞,通过了解此服务器的应用,客户确实是通过一个Awstats的开源插件来做网页访问统计,通过这个漏洞,攻击者可以直接在浏览器上操作服务器,例如查看进程、创建目录等。通过上面第二条日志可以看出,攻击者正常浏览器执行切换到/var/tmp/.../haha目录的操作。
这个脚本漏洞挺可怕的,不过在Awstats官网也早已给出了修补的方法,对于这个漏洞,修复方法很简单,打开awstats.pl文件,找到如下信息:
if ($QueryString =~ /configdir=([^]+)/i)
{
$DirConfig=DecodeEncodedString("$1");
}
修改为如下即可:
if ($QueryString =~ /configdir=([^]+)/i)
{
$DirConfig=DecodeEncodedString("$1");
$DirConfig=~tr/a-z0-9_/-///./a-z0-9_/-///./cd;
}
6、揭开谜团
通过上面逐步分析和介绍,此服务遭受入侵的原因和过程已经非常清楚了,大致过程如下:
(1)攻击者通过Awstats脚本awstats.pl文件的漏洞进入了系统,在/var/tmp目录下创建了隐藏目录,然后将rootkit后门文件传到这个路径下。
(2)攻击者通过植入后门程序,获取了系统超级用户权限,进而控制了这台服务器,通过这台服务器向外发包。
(3)攻击者的IP地址...可能是通过代理过来的,也可能是攻击者控制的其他肉鸡服务器。
(4)攻击者为了永久控制这台机器,修改了系统默认帐号mail的信息,将mail帐号变为可登录,并且设置了mail帐号的密码。
(5)攻击者在完成攻击后,通过后门程序自动清理了系统访问日志,毁灭了证据。
通过对这个入侵过程的分析,发现入侵者的手段还是非常简单和普遍的,虽然入侵者删除了系统的一些日志,但是还是留下了很多可查的踪迹,其实还可以查看用户下的.bash_history文件,这个文件是用户操作命令的历史记录。
7、如何恢复网站
由于系统已经文件被更改和替换,此系统已经变得完全不可信,因此建议备份网站数据,重新安装系统,基本步骤如下:
(1)安装稳定版本的操作系统,删除系统默认的并且不需要的用户。
(2)系统登录方式改为公钥认证方式,避开密码认证的缺陷。
(3)安装更高版本的apache和最新稳定版本的Awstats程序。
(4)使用Linux下的Tcp_Wrappers防火墙,限制ssh登录的源地址。
Rootkit病毒是什么?
Rootkit是一种复杂的恶意软件,其主要目的是为了隐藏攻击者的存在和活动。它通过篡改操作系统的核心服务,如内核,来提供隐藏自身和获取系统root权限的后门。在网络安全中,rootkit经常被黑客用来窃取密码、监控网络流量、清除入侵痕迹等。最初,rootkit是用于合法目的的工具,但后来被滥用,被归类为恶意软件。它可以在多种操作系统如Linux、Windows和Mac OS中找到目标。
rootkit的特点在于其隐身性,即使在系统中运行,也可能不被察觉。它通过修改进程管理、文件访问、安全控制和内存管理等内核功能,来实现隐藏进程、篡改文件、破坏安全机制和规避检测。最常见的rootkit包含嗅探器、特洛伊木马程序、隐藏进程和日志清理工具等,它们能替换系统程序,混淆管理员的追踪。
要防范rootkit,关键在于加强网络安全,如使用加密传输、定期更新系统、安装防火墙和实施强密码策略。检测rootkit的方法包括基于签名和行为的工具,如Tripwire和Rootkit Revealer。一旦发现rootkit,可能的解决方案是重置系统,但要彻底清除,这通常是唯一有效的方法。
rootkit.win.apent.awk是什么木马
此病毒是一个Rootkit病毒,由C语言编写的驱动程序,提供破坏杀毒软件的功能。
1、禁止反病毒软件的运行:
病毒调用PsSetLoadImageNotifyRoutine函数注册镜像加载的通知例程,在通知例程中,病毒首先比较加载的镜像的名称是否包含下名称:
vsdatant.sys,watchdog.sys,zclient.exe,bcfilter.sys,bcftdi.sys,bc_hassh_f.sys,
bc_ip_f.sys,bc_ngn.sys,bc_pat_f.sys,bc_prt_f.sys,bc_tdi_f.sys,filtnt.sys,
sandbox.sys,mpfirewall.sys,msssrv.exe,mcshield.exe,fsbl.exe,avz.exe,
avp.exe,avpm.exe,kav.exe,kavss.exe,kavsvc.exe,klswd.exe,ccapp.exe,
ccevtmgr.exe,ccpxysvc.exe,iao.exe,issvc.exe,rtvscan.exe,savscan.exe,bdss.exe,
bdmcon.exe,livesrv.exe,cclaw.exe,fsav.exe,fsm.exe,gcasserv.exe,icmon.exe,
inetupd.exe,nodkrn.exe,nodra.exe,pavfnsvr.exe,Windows-KB-V1..exe
对于包含上名称的镜像,病毒检查其是否是有效的PE文件,如是则调用ZwOpenProcess、ZwTerminateProcess函数禁止其运行,以此来禁止反病毒软件、防火墙等安全软件的运行。
2、挂接API:
病毒通过修改cr0寄存器标志位的方法关闭写保护,然后替换KeServiceDescriptorTable中的函数地址来Hook API,并记下原函数的地址。病毒挂接了如下两个API:
ZwQueryDirectoryFile
ZwEnumerateValueKey
3、ZwQueryDirectoryFile钩子过程:
在这个钩子过程中,病毒调用记录的原函数地址调用ZwQueryDirectoryFile函数,然后比较得到的目录、文件名中是否包含"kernelw"字符串,如果包含将返回STATUS_NO_MORE_FILES,反之,将正常的结果返回。
病毒通过挂钩ZwQueryDirectoryFile来隐藏包含有"kernelw"名称的目录或文件,以此来保护自己。
4、ZwEnumerateValueKey钩子例程:
在这个钩子过程中,病毒调用记录的原函数地址调用ZwEnumerateValueKey函数,然后比较得到的节果中的键值是否包含"kernelw"字符串,如果包含则返回错误,反之,将正常的结果返回。
病毒通过挂钩ZwEnumerateValueKey来隐藏键值包含有"kernelw"名称键值,以此来保护自己。
5、钩子保护线程:
病毒通过调用PsCreateSystemThread启动一个新的线程,在这个线程中不断循环检测KeServiceDescriptorTable表中自己挂钩的ZwQueryDirectoryFile、ZwEnumerateValueKey的地址是否被改变,如被改变则再次挂接这两个函数。
6、锁定ntoskrnl.exe文件
病毒通过调用ZwCreateFile、NtLockFile方式锁定ntoskrnl.exe文件,以此来防止其它程序通过读取ntoskrnl.exe中的数据恢复KeServiceDescriptorTable,以此来保护自己的API钩子。
安全建议:
1 安装正版杀毒软件、个人防火墙和卡卡上网安全助手,并及时升级,瑞星杀毒软件每天至少升级三次。
2 使用“瑞星系统安全漏洞扫描”,打好补丁,弥补系统漏洞。
3 不浏览不良网站,不随意下载安装可疑插件。
4 不接收QQ、MSN、Emial等传来的可疑文件。
5 上网时打开杀毒软件实时监控功能。
6 把网银、网游、QQ等重要软件加入到“瑞星帐号保险柜”中,可以有效保护密码安全。
清除办法:
1 Rootkit.Win.KeyLogger.a(键盘记录器)病毒专杀工具连接:/wlaq/.html
2瑞星杀毒软件清除办法:
安装瑞星杀毒软件,升级到..版以上,对电脑进行全盘扫描,按照软件提示进行操作,即可彻底查杀。
补充
别忘了关闭系统还原因为他会利用其再生
还有务必去安全模式下杀