日志分析 入侵检测--实战

收到客户服务器被入侵消息,希望我给他做一次入侵排查,刚做完顺手记录一下

入侵排查思路

0x01、日志分析

1、爆破ip统计

grep -i Failed /var/log/secure |awk '{print $(NF-3)}' | sort | uniq -c | sort -rn 

这里爆破的Ip地址居然是内网IP,出乎意料,留待后续研究

2、登录成功的IP统计

grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more

涉及敏感信息有的就不贴图了

3、爆破使用的密码统计

grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more

 4、登录成功的IP 信息(包含日期,用户名,信息)

grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}' 

对上述统计的信息进行分析,观察爆破IP是否成功登录,爆破所用的密码是否是服务器密码,以及登录成功的IP是否有陌生IP,弱口令往往是最容易突破的点。

0x02、passwd shadow 文件

1、cat  /etc/passwd  && cat /etc/shadow

查看是否有新增的,陌生的,高权限账户

2、lsattr /etc/passwd  && lsattr /etc/shadow

查看文件权限是否被更改,入侵者大都会修改文件权限阻止你去删除里面的新增账户

若是被更改,可使用  chattr -ai +文件清除“ai”权限,然后再删除新增的恶意用户

0x03、历史命令

1、history

直接运行history 查看运行过的命令,但大多数的入侵者会执行history -c 去清除历史记录,意义并不大,但是谁敢保证没有傻黑客呢,所以这步必不可少。

 2、给历史命令加上时间戳

#我们设置了一个环境变量
[roc@roclinux ~]$ export HISTTIMEFORMAT='%F %T '
 
#再来看history
[roc@roclinux ~]$ history
    1  2016-04-06 12:15:59 cat .bash_history
    2  2016-04-06 12:15:59 echo "" > .bash_history
    3  2016-04-06 12:15:59 ls
    4  2016-04-06 12:15:59 man ls
    5  2016-04-06 12:15:59 date
    6  2016-04-06 12:15:59 logout
    7  2016-04-06 12:16:16 history
    8  2016-04-06 12:18:15 export HISTTIMEFORMAT='%F %T '
    9  2016-04-06 12:18:20 history

3、系统的障眼法

事情的真相是这样的:history-c 命令删除的只是 Linux 系统内存中的历史命令,当 Shell 退出时,就不会有历史命令追加到文件 .bash_history 中。但当重新登录到 Shell 时,Shell 便会加载文件 .bash_history,该文件中存储着曾经输入的历史命令,因此,系统的历史命令就又出现了。

那么如何真正彻彻底底地删除所有的历史命令呢?我们可以采用以下方法。

[roc@roclinux ~]$ history -c
[roc@roclinux ~]$ history -w


history-w 的作用就是用内存中的历史命令覆盖 .bash_histroy 文件的内容,这样,即使 Shell 重新加载也加载不到任何命令了,因为此时 .bash_history 文件中已经空空如也了。

0x04、隐藏进程&&端口连接情况

1、安装atop查看异常进程

安装

centos:yum install -y atop
ubuntu:apt-get install -y atop

启动

# 启动atop
/etc/init.d/atop start
systemctl start atop

运行

atop -g

观察是否有陌生进程,入侵者会修改进程的名称来迷惑我们,例如这里的java8_8就是一个恶意的。

通过进程的端口号来查找文件的位置

 ls -l proc/进程号/exe

2、查看端口连接情况

netstat -ano

红色方框内的内容,又帮我回忆了一手三次握手和四次挥手,哈哈,言归正传,观察除正常服务外是否有不正常连接,通过端口查找进程和文件路径,之前好像看到过影子端口,后续研究下

0x05、开机启动项

查看开机启动项,命令如下,也会修改名称迷惑我们,注意注意,使用find 命令查找路径

>systemctl list-unit-files |grep enable
AssistDaemon.service                          enabled 
atd.service                                   enabled 
auditd.service                                enabled 
autovt@.service                               enabled 
cloud-config.service                          enabled 
cloud-final.service                           enabled 
cloud-init-local.service                      enabled 
...

0x06、是否添加免登录密钥

cd /root/.ssh

lsattr

此处也添加了特殊权限,防止被删

 0x07、查看定时任务

crontab -l | grep -v ^# | wc -l

定时任务列表以及条数统计,定时任务一般会隐藏起来,不太好找

vim /etc/crontab

通过关键词搜索,最终找到了运行脚本的定时任务

 脚本就下次分析了》》》》》》》》》》

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值