linux检测系统是否被入侵(下)

举报
入门小站 发表于 2022/06/28 22:20:59 2022/06/28
【摘要】 检查系统的异常文件查看敏感目录,如/tmp目录下的文件,同时注意隐藏文件夹,以.为名的文件夹具有隐藏属性> ls -al查找1天以内被访问过的文件> find /opt -iname "*" -atime 1 -type f-iname不区分大小写,-atime最近一次被访问的时间,-type文件类型 检查历史命令查看被入侵后,在系统上执行过哪些命令,使用root用户登录系统,检查/hom...

检查系统的异常文件

查看敏感目录,如/tmp目录下的文件,同时注意隐藏文件夹,以.为名的文件夹具有隐藏属性

> ls -al

查找1天以内被访问过的文件

> find /opt -iname "*" -atime 1 -type f

-iname不区分大小写,-atime最近一次被访问的时间,-type文件类型

检查历史命令

查看被入侵后,在系统上执行过哪些命令,使用root用户登录系统,检查/home目录下的用户主目录的.bash_history文件

默认情况下,系统可以保存1000条的历史命令,并不记录命令执行的时间,根据需要进行安全加固。

设置保存1万条命令

> sed -i 's/HISTSIZE=1000/HISTSIZE=10000/g' /etc/profile

history加固

> vim /etc/profile 

USER_IP=`who -u am i 2>/dev/null | awk '{print $NF}' | sed -e 's/[()]//g'`
if [ "$USER_IP"=="" ]
then
   USER_IP=`hostname`
fi

export HISTTIMEFORMAT="%F %T $USER_IP `whoami`"
#为防止会话退出时覆盖其他会话写到HISTFILE的内容
shopt -s histappend
export PROMPT_COMMAND="history -a"
//配置生效
> source /etc/profile
PROMPT_COMMAND是什么

PS1-PS4介绍了一些用于提示信息控制的环境变量,而在此之前可以进行回调的一个环境变量就是PROMPT_COMMAND,这个环境变量中设定的内容将在交互式脚本的提示(PS1)出现之前被执行。

检查系统日志

在Linux上一般跟系统相关的日志默认都会放到/var/log下面,若是一旦出现问题,用户就可以通过查看日志来迅速定位,及时解决问题。常用日志文件如下:

/var/log/btmp

记录错误登录日志,这个文件是二进制文件,不能用vi直接查看,可以用lastb

/var/log/lastlog

记录系统中所有用户最后一次成功登录系统的时间,这是一个二进制文件,不能用vi查看,可以用lastlog查看

/var/log/wtmp

永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件,不能直接vi,而需要使用last命令来查看。

/var/log/utmp

记录当前已经登录的用户信息,这个文件会随着用户的登录和注销不断变化,只记录当前登录用户的信息。同样这个文件不能直接vi,而要使用w,who,users等命令来查询。

/var/log/secure

记录验证和授权方面的信息,只要涉及账号和密码的程序都会记录,比如SSH登录,su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中

查找登录系统失败的20个账号

> lastb | awk '{print $1}' | sort | uniq -c | sort -nr | head -n 20

定位有多少IP在爆破主机的root帐号

> grep "Failed password for root" /var/log/secure | sort | uniq -c | sort -nr | more

查看所有重启日志信息

> last reboot

查看系统正常的运行时间

> uptime -s

查看哪些IP在爆破

> grep "Failed password" /var/log/secure|grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"|uniq -c

查看哪些IP登录成功了

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

登录成功的日期,用户名,IP

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

原文链接:https://rumenz.com/rumenbiji/linux-hacking-2.html
微信公众号:入门小站

  • 回复【1001】获取 linux常用命令速查手册
  • 回复【10010】获取 阿里云ECS运维Linux系统诊断
  • 回复【10012】获取 Linux学习笔记【强悍总结值得一看】
  • 回复【10013】获取 shell简明教程

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。