基础准备--命令防篡改与命令记录


很多黑客入侵到操作系统后,会做两个常见的操作unset history替换命令文件(或者对应的链接库文件),针对这两点要做好记录shelllog并且检查链接库类文件和命令文件最近有没有改动

RootkitHunter

#安装
$sudo wget https://jaist.dl.sourceforge.net/project/rkhunter/rkhunter/1.4.4/rkhunter-1.4.4.tar.gz
$sudo tar zxvf rkhunter-1.4.4.tar.gz
$sudo cd rkhunter-1.4.4
$sudo sh install.sh --install
#使用
$/usr/local/bin/rkhunter --propupd
$/usr/local/bin/rkhunter -c --sk --rwo

症状研判--根据主机异常状态判断异常点


性能资源紧张(变现为卡慢)##

free -m #以MB为单位查看内存使用情况
free -l #查看内存使用细节
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head #查看内存使用前十名
vmstat -a #查看内存和CPU使用情况
vmstat -s #查看内存和CPU使用详情
vmstat -d #查看读写IO情况
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head # 查看CPU使用前十名
top #查看进程性能资源消耗





主机宕机死机(表现为主机宕机或死锁或重启)

dmesg -T #按时间点查看内核日志
dmesg -T | grep memory #查看和内存相关的日志记录
dmesg -T | grep crash #查看和崩溃相关的日志记录
dmesg -T | grep reboot #查看和重启相关的日志记录
cat /var/log/dmesg #内核日志
cat /var/log/syslog #系统日志
cat /var/log/kernel.log #内核日志(Ubuntu下是kern.log)



断网断连排查(变现为网络不通或间断性连通)

iptables -L #查看防火墙
cat /etc/resolv.conf #查看域名解析
ifconfig -a #查看网卡信息

应用服务问题诊断

HTTP         /var/log/httpd/access.log #或者是HTTP服务器配置文件中的日志路径
FTP /var/log/vsftp.log #或者是同路径下的xferlog
Squid /var/log/squid #或者是squid.access.log
NFS /var/log/nfs
IPTABLES /var/log/iptables/……
Samba /var/log/samba
DNS /var/log/message
DHCP /var/log/message #或者/var/lib/dhcp/db/dhcpd.leases
Mail /var/log/maillog

入侵点入侵特征排查


##  可疑网络通信及进程排查  ##
netstat -antlop #查看异常连接和对应的进程、文件
ps -ef #查看进程信息
ps aux # 查看进程信息
lsof #查看进程关联账户信息lsof -g pid

可以登录和爆破排查

last #登录或重启日志
lastb #登录失败日志 或者是/var/log/faillog
who /var/log/wtmp #登录日志 另外可以 last -f /var/run/utmp
cat /var/log/lastlog #最后的登录日志
cat /var/log/secure #安全日志
cat /var/log/cron #计划任务日志
cat ~/.bash_history | more #历史操作
grep "Failed password for root" /var/log/auth.log | awk '{print $11}' | sort | uniq -nr | more #查看root账户登录爆破尝试
grep "Accepted" /var/log/auth.log | awk '{print $11}' | sort |uniq -c | sort -nr | more #查看登录成功日志信息
strings /usr/bin/.sshd | egrep '[1-9]{1,3}.[1-9]{1,3}.' #查看sshd的信息

漏洞利用入侵及后渗透特征

检查~/.ssh/目录下有没有异常的文件(密钥文件)redis未授权访问等
检查/etc/passwd 以及 /etc/shawdow有没有异常账户和权限
检查/etc/rc.local 查看开机启动项
检查/usr/bin /usr/sbin /bin等敏感目录(命令文件所在目录)
检查/tmp 临时文件
检查能登录用户cat /etc/passwd | grep -E "/bin/bash$"
检查环境变量echo $PATH
检查/etc/init.d/rc.local 和 /etc/ssh等等

web入侵点检查

#webshell查找
find /var/www/ -name "*.php" | xargs egrep 'assert | phpspy | c99sh | milw0rm | eval | \( gunerpress | \(bas464_encode | spider _bc | shell_exec | passthru | \(\$\_\POST\[|eval\(str_rotl3 | .chr\c|\$\{\"\_P|eval\C\$\_R | file_put_contents\C\.\*\$\_ | base64_decode'
# 脚本文件打包
find /var/www/html/ |grep -E ".asp$|.aspx$|.jsp$|.jspx$|.jspf$|.php$|.php3$|.php4$|.php5$|.inc$|.phtml$|.jar$|.war$|.pl$|.py$|.cer$|.asa$|.cdx$|.ashx$|.ascx$|.cfm$|.cgi$ "|xargs tar zcvf /tmp/shellscript.tar.gz
# 文件查找的相关命令:
sudo find / -mtime(atime/ctime) -x #按照创建、修改时间查找
sudo find ./ -perm 4777 #按照权限查找文件
find ./ -mtime -1 -type f #按照文件类型查找

根据历史经验查看access.log 可以使用https://github.com/cisp/AccessLogAnylast工具进行分析(本人开发维护);

附录一:


Linux应急处理操作手册的更多相关文章

  1. linux vi编辑器操作手册

    简介 Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功 ...

  2. linux lvm的操作手册_pvcreate_vgcreate_lvcreate_相关

    一. 前言 每个Linux使用者在安装Linux时都会遇到这样的困境:在为系统分区时,如何精确评估和分配各个硬盘分区的容量,因为系统管理员不但要考虑到当前某 个分区需要的容量,还要预见该分区以后可能需 ...

  3. Windows应急响应操作手册

    查看表征异常 系统卡慢.宕机.CPU和内存占用高.网络拥塞或断网.磁盘空余空间无理由大幅度缩小等,根据以上表征,可以初步猜测系统面临的问题. windows 下查看系统基本信息 PS C:\Users ...

  4. 嵌入式linux应用开发完全手册学习笔记一

    2015.3.25星期三 晴 有两个星期没写学习日记了,找个时间把这段时间做的电子词典和ARM小项目总结一下. 下面的知识点总结,U-BOOT:参考PDF文档:嵌入式linux应用开发完全手册 当虚拟 ...

  5. 《Linux/Unix系统编程手册》读书笔记8 (文件I/O缓冲)

    <Linux/Unix系统编程手册>读书笔记 目录 第13章 这章主要将了关于文件I/O的缓冲. 系统I/O调用(即内核)和C语言标准库I/O函数(即stdio函数)在对磁盘进行操作的时候 ...

  6. 《Linux/Unix系统编程手册》读书笔记6

    <Linux/Unix系统编程手册>读书笔记 目录 第9章 这章主要讲了一堆关于进程的ID.实际用户(组)ID.有效用户(组)ID.保存设置用户(组)ID.文件系统用户(组)ID.和辅助组 ...

  7. 《Linux/Unix系统编程手册》读书笔记1

    <Linux/Unix系统编程手册>读书笔记 目录 最近这一个月在看<Linux/Unix系统编程手册>,在学习关于Linux的系统编程.之前学习Linux的时候就打算写关于L ...

  8. 《Linux/Unix系统编程手册》读书笔记2

    <Linux/Unix系统编程手册>读书笔记 目录 第5章: 主要介绍了文件I/O更深入的一些内容. 原子操作,将一个系统调用所要完成的所有动作作为一个不可中断的操作,一次性执行:这样可以 ...

  9. Mysql 操作手册

    mysql操作手册 版本:5.6.16mysql linux安装基本步骤:#rpm -e --nodeps mysql-lib-5.1.*#rpm -ivh mysql-server#rpm -ivh ...

随机推荐

  1. ubuntu14.04_64位安装tensorflow-gpu

    第一步(可直接跳到第二步):安装nvidia显卡驱动 linux用户可以通过官方ppa解决安装GPU驱动的问题.使用如下命令添加Graphic Drivers PPA: sudo add-apt-re ...

  2. java项目中的路径获取,request

    java web项目中获取项目根路径(tomcat可运行的web源码的路径)的方式: 分为两种情况: 情况一: 在eclipse.inde等开发工具中获取(注:如下代码所在的类必须是控制层所在包下的类 ...

  3. Ruby gem: Mac 系统下的安装与更新

    官方链接:https://rubygems.org/pages/download#formats 下载安装: 1.点击上面链接进入到官网,从顶部的链接下载压缩包: 2.解压缩到指定文件夹,并通过 “c ...

  4. Objective-C语法之NSPredicate的使用

    正则表达式判断手机号码和电话号码的方法: #import <Foundation/Foundation.h> /** 正则判断手机号码地址格式 */ BOOL isMobileNumber ...

  5. MongoDB使用经验总结

    摘要: 最近在开发项目使用了数据库MongoDB,我将它的使用方法整理下分享给大家.至于mongoDB有什么优点,大家可以到官网去看. 安装: 首先我们需要到官网下载适合自己系统的mongodb. w ...

  6. Ubuntu Git安装与使用

    本系列文章由 @yhl_leo 出品.转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50760140 本文整理和归纳了关于Ub ...

  7. NuGet的几个小技巧(转)

    NuGet的几个小技巧   因为可视化库程序包管理器的局限性,有很多需要的功能在界面中无法完成. 以下技巧均需要在“程序包管理器控制台”中使用命令来完成. 一.改变项目目标框架后,更新程序包 当改变项 ...

  8. ZTree id值太大,ZTree没有生成树,ZTree的id值过大

     ZTree id值太大,ZTree没有生成树,ZTree的id值过大 >>>>>>>>>>>>>>>> ...

  9. Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie

    Java Cookie工具类,Java CookieUtils 工具类,Java如何增加Cookie >>>>>>>>>>>>& ...

  10. 使用CountDownLatch模拟高并发场景

    import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java ...