手动篇
0. 注意
最好提前获取客户操作系统等相关信息
千万不要一开始就使用一些扫描工具。因为有些工具可能带有打开文件操作,这样会导致所以文件的修改时间全被刷新一次。
//别问我为啥知道
本文主要使用linux、windows自带的相关命令和程序。
//避免工具对生产系统服务器带来的未知后果。
linux
1.日志和记录
ssh 后门 strings /usr/bin/.sshd | egrep '[1-9]{1,3}\.[1-9]{1,3}\.'
history bash //命令记录
history | grep '2018-1-1' //根据时间查看干了什么
egrep '(select|script|acunetix|sqlmap)' /var/log/httpd/access_log > xx.log
//根据关键字筛选日志中有特殊字符的位置
/var/log/wtmp
/var/log/utmp
//需要last命令才能查看
//string读取二进制文件字符串
//花式备份各种日志
tar -cxvf secure_logs.tar.gz /var/log/secure
tar -cxvf messages_logs.tar.gz /var/log/messeges
tar -cxvf httpd_logs.tar.gz /var/log/httpd/
tar -cxvf all_log.tar.gz /var/log/*
/var/log/*
2.进程和端口
netstat -antlp | grep EST | grep bash //被反弹后门
ps -aux | grep xxx > /tmp/ps_aux_gp_xxx.txt //导出命令结果
ps -ef | grep xxx > /tmp/ps_ef_gp_xxx.txt //导出命令记过
netstat -antup > port-listen.log
lsof(list open files) //linux下万物皆文件。
lsof -i :[port] //查看什么文件占用的该端口
lsof -p [pid] //查看什么文件占用的该pid
3.用户与用户组
cat /etc/passwd
lsof -g [gid]
4.资源占用
这项主要是查出自己被当肉鸡或者矿机的进程
top >/tmp/top.txt
5.计划任务
crontab -l
cd /etc/crontab
ls
crontab -r //删除计划任务
6.webshell,文件,木马
find -mtime -2 -type f -name \*.php 查找近2天被修改过的文件
find / -mtime -5 -name "*.jsp"
find / *.jsp -perm 777 //寻找权限为777的文件
stat 文件
diff -r 新旧环境(线上与测试环境)
6.Rootkit
Rootkit就比较难通过上面的常规操作发现了,不过有经验的表哥还是能从各种细节中发现被Rootkit的痕迹。
//这里推荐一个工具(至于是否要在生产环境上使用就看个人了)
yum install chkrootkit
chkconfig [ | grep INFECTED]
备忘
//各个log作用
/var/log/messages — 包括整体系统信息,其中也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中。
/var/log/dmesg — 包含内核缓冲信息(kernel ring buffer)。在系统启动时,会在屏幕上显示许多与硬件有关的信息。可以用dmesg查看它们。
/var/log/auth.log — 包含系统授权信息,包括用户登录和使用的权限机制等。
/var/log/boot.log — 包含系统启动时的日志。
/var/log/daemon.log — 包含各种系统后台守护进程日志信息。
/var/log/dpkg.log – 包括安装或dpkg命令清除软件包的日志。
/var/log/kern.log – 包含内核产生的日志,有助于在定制内核时解决问题。
/var/log/lastlog — 记录所有用户的最近信息。这不是一个ASCII文件,因此需要用lastlog命令查看内容。
/var/log/maillog /var/log/mail.log — 包含来着系统运行电子邮件服务器的日志信息。例如,sendmail日志信息就全部送到这个文件中。
/var/log/user.log — 记录所有等级用户信息的日志。
/var/log/Xorg.x.log — 来自X的日志信息。
/var/log/alternatives.log – 更新替代信息都记录在这个文件中。
/var/log/btmp – 记录所有失败登录信息。使用last命令可以查看btmp文件。例如,”last -f /var/log/btmp | more“。
/var/log/cups — 涉及所有打印信息的日志。
/var/log/anaconda.log — 在安装Linux时,所有安装信息都储存在这个文件中。
/var/log/yum.log — 包含使用yum安装的软件包信息。
/var/log/cron — 每当cron进程开始一个工作时,就会将相关信息记录在这个文件中。
/var/log/secure — 包含验证和授权方面信息。例如,sshd会将所有信息记录(其中包括失败登录)在这里。
/var/log/wtmp或/var/log/utmp — 包含登录信息。使用wtmp可以找出谁正在登陆进入系统,谁使用命令显示这个文件或信息等。
/var/log/faillog – 包含用户登录失败信息。此外,错误登录命令也会记录在本文件中。
除了上述Log文件以外, /var/log还基于系统的具体应用包含以下一些子目录:
/var/log/httpd/或/var/log/apache2 — 包含服务器access_log和error_log信息。
/var/log/lighttpd/ — 包含light HTTPD的access_log和error_log。
/var/log/mail/ – 这个子目录包含邮件服务器的额外日志。
/var/log/prelink/ — 包含.so文件被prelink修改的信息。
/var/log/audit/ — 包含被 Linux audit daemon储存的信息。
/var/log/samba/ – 包含由samba存储的信息。
/var/log/sa/ — 包含每日由sysstat软件包收集的sar文件。
/var/log/sssd/ – 用于守护进程安全服务。
windows
1.日志和记录
应用程序日志、系统日志、安全日志;默认情况下,如果系统不对事件做审核则不会生成安全日志。
开始→设置→控制面板→管理工具→事件查看器
Windows日志文件默认位置是%systemroot%\system32\config
安全日志文件:%systemroot%\system32\config \SecEvent.EVT
系统日志文件:%systemroot%\system32\config \SysEvent.EVT
应用程序日志文件:%systemroot%\system32\config \AppEvent.EVT
FTP连接日志和HTTPD事务日志:%systemroot% \system32\LogFiles\
IIS日志默认存放在System32\LogFiles目录下,使用W3C扩展格式
2.进程和端口
任务管理器
netstat -ano > port-listen.log //启动的服务
net start
tasklist /svc //进程对应的服务
taskkill
启动的服务
运行services.msc
检查注册服务
wmic startup get caption,command
//在命令行使用该命令得到Windows上所有启动项的名称与执行程序所在路径
3.用户和用户组
计算机管理 compmgmt.msc 本地用户和组lusrmgr.msc
net user //看不到隐藏用户
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Winlogon\ 下是否存在隐藏帐户 //检查隐藏帐户
1.HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\
//查看隐藏账户
4.资源占用
任务管理器
5.计划任务
管理->任务计划程序->任务计划程序库
运行taskschd.msc
删除了计划任务
6.shell,木马,文件
mysql\lib\plugin目录没有发现异常文件
select * from mysql.func没有发现异常。
7.注册表
运行regedit.exe
删除注册表中启动项中的异常内容
1.HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\
//查看隐藏账户
工具篇
linux
windows
http://www.jb51.net/bat/498789.html
火绒剑也是一款优秀的进程管理分析工具
http://down4.huorong.cn/hrsword.exe
AutoRuns是一款项目管理工具,它可以查看“资源管理器”,“IE浏览器”,“计划任务”,“驱动等等”,
通常用它来查看异常进程
https://filehippo.com/zh/download_autoruns
D盾是一款基于正则检测的webshell查杀工具,据说有4千多万条正则,通常使用它来扫描网站webshell,同时也可以扫描隐藏文件。
http://www.d99net.net/
PC Hunter是一个Windows系统信息查看软件,同时也是一个手工杀毒辅助软件。
http://www.xuetr.com/