入侵排查思路 (1)- 日志分析

日志分析
默认日志路径: /var/log
查看日志配置情况: more /etc/rsyslog.conf
重要日志:
登录失败记录: /var/log/btmp
最后一次登录: /var/log/lastlog
登录成功记录: /var/log/wtmp
登录日志记录: /var/log/secure
日志分析常用命令:
grep -rn "hello,world!"
cat input_file | tail -n + 1000 | head -n 2000(显示1000-2999行)
find /etc -name init #在目录/etc中查找文件init
sed -i '153,$d' .bash_history  #删除历史操作记录,只保留前153行
grep -C 5 foo file  #显示file文件里匹配foo那行以及上下5行
定位有多少IP在爆破主机的root账号
grep "Failed password for root" /var/log/secure | awk '{print $11}'| sort | uniq -c | sort -nr | more
爆破用户名字典
grep "Failed password" /var/log/secure|perl -e 'while($_=<>){/for(.*?) from/;print
"$1\n";}'|uniq -c | sort --nr
登录成功IP
grep "Accepted" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more
登录成功的日期、用户名、IP:
grep "Accepted" /var/log/secure | awk '{print $1,$2,$3,$9,$11}'
软件安装升级卸载日志:
more /var/log/yum.log

入侵排查思路(2)- 账号安全

用户信息文件: /etc/passwd
影子文件: /etc/shadow
who  #查看当前登录用户(tty本地登录,pts远程登录)
w   #查看系统信息,想知道某一时刻用户的行为

入侵排查:
查询特权用户(uid为0): awk -F: '$3==0{print $1}' /etc/passwd
查询可以远程登录的账号信息: awk '/\$1|\$6/{print $1}' /etc/passwd
禁用或删除多余可疑的账号:
usermod -L user #禁用账号,账号无法登录
userdel -r user #将删除user用户,并且将/home目录下的user目录一并删除

 

入侵排查思路(3)- 历史命令

root的历史命令: history
其他账号的历史命令: /home各账号目录下的 .bash_history
历史操作命令的清除: history -c
入侵排查:
进入用户目录:
cat .bash_history >> history.txt

入侵排查思路(4)- 端口&进程&开机启动项

检查异常端口:
使用netstat网络连接命令,分析可疑端口、IP、PID
netstat -antlp|more检查异常进程:
使用ps命令,分析进程
ps aux | grep pid
使用 netset 和 ps 等命令时,可以灵活配合 grep命令获取信息
netstat -anp | grep -i listen
lsof -i:port #进程和端口对应关系
ps -aux查看进程信息(ps -ef 对于反弹shell,更便于发现)检查开机启动项:
系统默认运行级别: vi /etc/inittab
开机启动配置文件: /etc/rc.local
入侵排查:
启动项文件:
more /etc/rc.local /etc/rc.d/rc[0~6].d
ls -l /etc/rc.d/rc3.d/定时任务
crontab -l 列出某个用户cron服务的详细内容
crontab -r 删除某个用户 cront任务(删除所有的计划任务)
crontab -e 使用编辑器编辑当前的crontab文件
重点关注以下目录是否存在恶意脚本:
/var/spool/cron/*
/etc/crontab
/etc/cron.d/*
/etc/cron.daily/*
/etc/cron.hourly/*
/etc/cron.monthly/*
/etc/cron.weekly/
/etc/anacrontab
/var/spool/anacron/*
more /etc/cron.daily/* #查看目录下所有文件系统服务
服务自启动:
修改 /etc/re.d/rc.local 文件,加入 /etc/init.d/httpd start
查询RPM包安装的服务:
chkconfig --list #查询服务自启动状态,可以看到所有的RPM包安装的服务
ps aux | grep crond #查看当前服务
系统在3和5级别下的启动项
中文环境
chkconfig --list | grep "3:启动\|5:启动"
英文环境
chkconfig --list | grep "3:on\|5:on"
查询源码包安装的服务:
查看服务安装位置,一般在 /user/local/
搜索 /etc/rc.d/init.d/ 查看是否存在检查异常文件
查看敏感目录,如 /tmp目录下的文件,同时注意隐藏文件夹,以“..”为名称的文件夹具有隐藏属性
得到发现WEBSHELL、远控木马的创建时间,找出同一时间创建的文件
find /opt -iname "*" -atime 1 -type f #找出 /opt 下一天前访问过的文件
针对可疑文件可以使用 stat进行创建修改时间

转载于:https://www.cnblogs.com/AtesetEnginner/p/11391226.html

安全运维 - Linux系统攻击回溯相关推荐

  1. linux环境变量管理器,运维 - linux(ubuntu) 环境变量管理 (持续更新)

    运维 - linux(ubuntu) 环境变量管理 (持续更新) 注: 本教程以 Ubuntu16.04 操作, 请细看. 如果看完还不明白, 联系我, 我给你发红包. 一, 查看环境变量: 方法 1 ...

  2. linux cpu不足处理运维,Linux运维知识之Linux服务器CPU占用率较高问题排查思路

    本文主要向大家介绍了Linux运维知识之Linux服务器CPU占用率较高问题排查思路,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. 注意:本文相关配置及说明已在 CentOS  ...

  3. 新开班全栈Linux运维-Linux云计算运维与高级架构班课程 全新自动化运维必学课程

    新开班全栈Linux运维-Linux云计算运维与高级架构班课程 全新自动化运维必学课程 全栈Linux运维的课程意义,在于让同学们从Liunx基础课程开始,一路直通Liunx运维高级架构师的级别.全新 ...

  4. 全栈Linux运维-Linux云计算运维与高级架构班课程 全新自动化运维必学课程

    全栈Linux运维-Linux云计算运维与高级架构班课程 全新自动化运维必学课程 全栈Linux运维的课程意义,在于让同学们从Liunx基础课程开始,一路直通Liunx运维高级架构师的级别.全新的Li ...

  5. 2020-06-19 云运维linux centos7.2 文件管理基础知识总结

    2020-06-19 云运维linux文件管理基础知识总结 linux=Linux: 命令(基础使用)+文件系统(目录)+服务(配置) 1.路径的分类 绝对路径:由根目录(/)开始写起的文件名或目录名 ...

  6. 游戏运维linux,Linux运维知识之Linux的10个游戏

    本文主要向大家介绍了Linux运维知识之Linux的10个游戏,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. Linux最强大的一个特征就是它有大量的各种小命令工具,这也可以称 ...

  7. 云服务器运维 - Linux 操作系统安全加固/防范黑客攻击

    文章目录 云服务器运维 - Linux 操作系统安全加固/防范黑客攻击 1.帐号 1.1 禁用或删除无用账号 1.2 检查特殊账号 1.3 添加口令策略 1.4 限制用户su 1.5 禁止root用户 ...

  8. 0基础linux运维,Linux运维基础

    字符匹配: . 匹配任意单个字符 [] 匹配指定范围内的任意单个字符 [^] 匹配指定范围外的任意单个字符 [:alnum:] 字母和数字 [:alpha:] 代表任何英文大小写字符,亦即 A-Z, ...

  9. alpine linux图形界面_跟光磊学Linux运维-Linux入门与基本使用

    认识Linux用户 在安装CentOS8.2时,设置过root用户的密码,同时也创建了用户guanglei. 其中root用户是系统自带的管理员账户,也被称为超级用户,root用户接近系统完整的控制能 ...

  10. 什么公司需要Linux运维,为什么企业会需要Linux运维?Linux入门!

    提及Linux,很多人或许都会疑惑Linux是什么?为什么企业需要Linux运维岗位?关于大家的疑问小编一一为大家解答. 什么是Linux? 在我们的日常生活当中,接触到最多的就是Windows操作系 ...

最新文章

  1. Lesson 8.1Lesson 8.2 决策树的核心思想与建模流程CART分类树的建模流程与sklearn评估器参数详解
  2. 如何安装mysql5.6.16_centos安装mysql5.6.16
  3. 阿里云openapi接口使用,PHP,视频直播
  4. comparator接口与Comparable接口的区别
  5. error_reporting()的用法
  6. LeetCode 6061. 买钢笔和铅笔的方案数
  7. 2017 4月25日下午
  8. java安全级别_java语言的线程安全级别--转
  9. 程序员只能吃“青春饭”?C 认证带你破局!
  10. 用python画玫瑰花-python绘制玫瑰的实现代码
  11. 关于css中列表(ul ol)存在默认间距的问题
  12. 《树莓派渗透测试实战》——1.7 树莓派渗透测试场景
  13. adb 连接手机 cannot connect to xxx.xxx.x.xx:5555: 由于目标计算机积极拒绝,无法连接。 (10061)
  14. 孙玄:一文完全理解定时器实现技术
  15. java算法:复合数据结构
  16. 你还不了解QQ聊天是如何实现的吗?手把手教你实现网络聊天室
  17. phpmywind 手机站多语言版本
  18. 登陆失败:用户账户限制。可能的原因包括不允许空密码.........解决方案
  19. 人工智能的春天来了!Tesra超算网络,助力AI开发!
  20. You're a brave boy!

热门文章

  1. 删除上传文件中可能包含的空行
  2. ORACLE数据库的模式对象的管理与维护
  3. 推荐几个清华和交大学霸公众号,值得学习
  4. BG.Hive - part3
  5. 较完整的angularjs+bootstrap应用程序接口controller
  6. 免费赠送2本新书《iOS程序员面试笔试真题与解析》
  7. SylixOS Python扩展库开发
  8. CVE-2018-8120 漏洞分析
  9. 2017-12-28 Linux学习笔记
  10. tar、rpm和yum总结