一、基础命令
1.查看已经登录的用户w
2.查看所有用户最近一次登录:lastlog
3.查看历史上登录的用户还有登录失败的用户
历史上所有登录成功的记录
last
/var/log/wtmp
历史上所有登录失败的记录
Lastb
/var/log/btmp
4.SSH登录日志
查看所有日志:cat /var/log/secure
查看所有登录失败日志:grep Failed /var/log/secure*
所有登陆失败的日志中的第九列和第十一列:grep Failed /var/log/secure*|awk -F’ ’ ’{print $9,$11}'
每个ip登录次数排序:
由大到小grep Failed /var/log/secure*|awk -F’ ’ ’{print $9,$11}'|sort|uniq-c|sort -nr
由小到大grep Failed /var/log/secure*|awk -F’ ’ ’{print $9,$11}'|sort|uniq-c
查看所有登录成功的日志:grep Accept /var/log/secure*
打印登陆成功的日志的第九列和第十一列:grep Accepted /var/log/secure*|awk -’ ’ ‘{print $9,$11}’
排除不存在的用户名登录失败记录cat /var/log/secure*|grep Failed|grep-v "invalid"|awk '{print $9,$11}'
查询所有日志,过滤掉登录失败的,再过滤掉“invalid”:cat /var/log/secure*|grep Failed|grep -v "invalid"
然后打印第九列和第十一列
5.查询历史命令
history 查询当前用户历史命令
find / -name .bash history查询其他历史命令文件
cat+文件名:查看文件
find /-name *_history查询所有历史命令
查看所有命令find/-name : historylxargs cat
message 系统整体的信息
cron计划任务
boot启动日志
firewalld 防火墙日志
mail 邮件日志
6.计划任务
用户级别计划任务:
crontab -l
/var/spool/cron/root
cat /var/log/cron*|awk -F" " ‘{print $4,$NF}’
批量查看所有用户计划任务cat /etc/passwd|awk-F: '{print $1}'xargs -i crontab -l -u {}
系统级别的计划任务:
查看所有系统级别的计划任务find /etc/cron* -type f
7.检查用户账号
root:x:0:0:root:/root:/bin/bash
用户名
密码
UID
GID
用户全名或本地账号
开始目录登录使用的shell
打印uid=0的用户:awk -F: '$3==0{print $1}' /etc/passwd
查询空密码用户cat /etc/shadow|awk -F: '$2==""{print $1}’
8.中间件日志
查访问网站最多的10个ip:
cat /var/log/httpd/access_log"|awk -F" " '{print $1}'|sort|uniq-c|sort -nr|head -10
查访问网站最多的10个url:
cat /var/log/httpd/access_log*|awk -F" " ‘{print $7}'|sort|uniq-c|sort -nr|head -10
查询哪个时间段访问量最大:
cat /var/log/httpd/access_log*|awk-F" " ’{print $4}’|sort|uniq-c|sort -nr|head -10
查询是否有进行xss攻击:
cat /var/log/httpd/access_log*|grep "alert"
9.检查被黑客修改过的文件
查询一天内被修改过的php文件:
find /-name"*.php" -mtime -1
文件有三个时间属性
atime access_time 访问时间
mtime modify_time修改时间
ctime change_time变化时间(权限、所有者)
查看文件的三个时间属性:
stat
查询网站根目录下一天内是否有黑客上传一句话木马:
find /var/www/html/ -name "*.php" -mtime 0|xargs grep "eval"
10.网络连接netstat
-a显示所有连接
-n显示ip而不是显示域名
-p显示连接对应的程序/进程
-t显示tcp连接
-u显示udp
-l格式化
Proto Recv-Q Send-Q Local Address Foreign Addre5s
State PID/Program name
tcp 0 0 0.0.0.0:3386 0.0.0.0:*
LISTEN 1460/mysqld
listen 监听状态,等待别人连接
Established 已经建立连接
time_wait 我方主动发起断开连接请求,收到对方确认后的状态
Close_wait 我方调用close,关闭连接
syn_send 半连接状态,我方发送建立请求,等待对方的过程
查看所有已连接程序
Netstat -atupn|grep ESTABLISHED
查看我方就开放端口有哪些
Netstat -atupn|grep LISTEN
Netstat -atupn|grep 22
11.查进程ps
-a 查看所有终端进程,当前用户和其他用户
-e查看所有进程
-u指定用户查看这个用户进程
-x 显示没有终端的进程
-f 显示详细信息
-l 长格式显示
-p指定进程号
-t 指定终端
-c 显示指定命令的进程信息
R正在运行
S中断休眠
T停止
Z僵死
D不可中断
查进程名对应的进程号:
pgrep 进程名
pstree查看进程树,定位父进程,子进程
二、扫描工具
1.gscan
2.clamAV
(工具的安装和使用如有需要可私信我,手把手教学,包教会)