Jboss漏洞导致linux服务器中毒解决办法

     业务部署在jboss中,使用的操作系统为Redhat Linux。以为Linux挺安全的,结果因为Jboss的漏洞,导致Linux服务器被入侵。一次是root密码被修改,一次是网络速度奇慢、CPU使用率过高。结果都发现jboss账号启动的服务异常。
    现象分析
1. 进程异常
[root@localhost /]# ps -ef|grep jboss
root     10497  8650  0 15:24 pts/4    00:00:00 grep jboss
jboss    16679     1  0 11:11 ?        00:00:00 /usr/bin/javad                
jboss    16711     1 95 11:11 ?        04:01:37 /usr/local/apache/bin/httpd -DSSL
[root@localhost /]# less /usr/bin/javad
/usr/bin/javad: No such file or directory
[root@localhost /]# ll /usr/local/apache/bin/httpd
ls: /usr/local/apache/bin/httpd: No such file or directory
16679和16711进程不是正常进程,且/usr/bin/javad 和/usr/local/apache/bin/httpd文件根本就不存在,这就可以断定他是病毒(或者后面,或者肉鸡)进程,因为正常情况下,是没有必要伪装进程CMD的。

2. 定时任务异常
[root@localhost jboss]# crontab -u jboss -l
1 1 10 * * ~/.sysdbs
1 1 24 * * perl ~/.sysync.pl
1 1 24 * * perl ~/.sysync.pl
1 1 10 * * ~/.sysdbs
jboss用户下本没有定时任务的,现在多出来4个异常任务。

3. 文件异常
[root@localhost jboss]# cd /home/jboss
[root@localhost jboss]# ls -l
total 216
-rwxr-xr-x 1 jboss jboss  3229 Mar 26  2002 bm.c
-rwxr-xr-x 1 jboss jboss   460 Mar 23  2002 bm.h
-rw-r–r– 1 jboss jboss 11048 May 10 01:01 bm.o
-rwxr-xr-x 1 jboss jboss 13579 May  4 20:05 fix.pl
-rwxr-xr-x 1 jboss jboss  5598 Mar 25  2002 install-sh
-rwxr-xr-x 1 jboss jboss   132 Mar 22  2002 ipsort
-rwxr-xr-x 1 jboss jboss 35893 May  4 20:13 kat.c
-rwxr-xr-x 1 jboss jboss  1680 Jan 28  2012 Makefile
-rwxr-xr-x 1 jboss jboss 19984 May 12 01:07 pns
-rwxr-xr-x 1 jboss jboss 19774 Jan 28  2012 pnscan.c
-rw-r–r– 1 jboss jboss 59336 May 10 01:01 pnscan.o
-rwxr-xr-x 1 jboss jboss 14053 May  4 20:12 rjboss
-rwxr-xr-x 1 jboss jboss    25 Mar 26  2002 version.c
-rw-r–r– 1 jboss jboss  2240 May 10 01:01 version.o
jboss家目录下原没有文件的,这些文件全部是多出来的。

    修复办法
1. 删除定时任务
[root@localhost jboss]# crontab -u jboss -e

2. 杀死异常进程
[root@localhost jboss]# kill -9 16679 16711

3. 删除异常文件
[root@localhost jboss]# cd /home/jboss/
[root@localhost jboss]# rm -rf bm* *.pl treat.sh install-sh version* kisses* pns* Makefile ipsort kisses* .sysdbs .sysync.pl
或者
[root@localhost jboss]# cd /usr/local/jboss/bin/
[root@localhost bin]# rm -rf bm* *.pl treat.sh install-sh version* kisses* pns* Makefile ipsort kisses* .sysdbs .sysync.pl

4. jboss加固
把下面文件中的security-domain或者security-constraint的注释去掉,让配置有效。
[root@localhost bin]# vi /usr/local/jboss/server/*/deploy/jmx-console.war/WEB-INF/web.xml
[root@localhost bin]# vi /usr/local/jboss/server/*/deploy/jmx-console.war/WEB-INF/jboss-web.xml
[root@localhost bin]# vi /usr/local/jboss/server/*/deploy/management/console-mgr.sar/web-console.war/WEB-INF/web.xml
[root@localhost bin]# vi /usr/local/jboss/server/*/deploy/management/console-mgr.sar/web-console.war/WEB-INF/jboss-web.xml

修改下列文件中的用户名和密码
[root@localhost bin]# vi /usr/local/jboss/server/*/deploy/management/console-mgr.sar/web-console.war/WEB-INF/web-console-users.properties
[root@localhost bin]# vi /usr/local/jboss/server/*/deploy/jmx-console.war/WEB-INF/jmx-console-users.properties

5. 重启jboss服务
[root@localhost bin]# sudo -u jboss service jboss start
注意,为了安全不要用root启动jboss服务,而用jboss用户启动。

6. 验证
访问如下地址:
http://xxx.xxx.xxx.xxx/web-console
http://xxx.xxx.xxx.xxx/jmx-conslole
查看使用配置的用户名或密码,是否可以正常访问。

参考:http://www.2cto.com/Article/201202/120939.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

机器人检查 *