常见安全工具、设备
工具
端口及漏洞扫描:Namp、Masscan
抓包:Wireshark,Burpsuite、Fiddler、HttpCanary
Web自动化安全扫描:Nessus、Awvs、Appscan、Xray
信息收集:Oneforall、hole
漏洞利用:MSF、CS
Webshell 管理:菜刀、蚁剑、冰蝎、哥斯拉
Linux系统安全加固需要注意的内容
-
关闭不必要的系统服务
-
更改 SSH 默认端口
-
禁止 root 用户远程 ssh 登录
-
限制用户使用 su 命令切换 root
-
密码复杂度策略
-
检查密码重复使用次数限制
-
检查是否存在空口令账号
-
禁止同时按下 ctrl+alt+del 重启
-
禁用 telnet 服务
Linux入侵排查思路
-
账号安全
who 查看当前登录用户(tty本地登陆 pts远程登录) w 查看系统信息,想知道某一时刻用户的行为 uptime 查看登陆多久、多少用户,负载
1、用户信息文件/etc/passwd root:x:0:0:root:/root:/bin/bash account:password:UID:GID:GECOS:directory:shell 用户名:密码:用户ID:组ID:用户说明:家目录:登陆之后shell 注意:无密码只允许本机登陆,远程不允许登陆 2、影子文件/etc/shadow root:$6$oGs1PqhL2p3ZetrE$X7o7bzoouHQVSEmSgsYN5UD4.kMHx6qgbTqwNVC5oOAouXvcjQSt.Ft7ql1WpkopY0UV9ajBwUt1DpYxTCVvI/:16809:0:99999:7::: 用户名:加密密码:密码最后一次修改日期:两次密码的修改时间间隔:密码有效期:密码修改到期到的警告天数:密码过期之后的宽限天数:账号失效时间:保留
/etc/passwd
存储一般的用户信息,任何人都可以访问;/etc/shadow
存储用户的密码信息,只有 root 用户可以访问 -
历史命令
通过 .bash_history 查看帐号执行过的系统命令 1、root的历史命令 histroy 2、打开 /home 各帐号目录下的 .bash_history,查看普通帐号的历史命令 历史操作命令的清除:history -c 但此命令并不会清除保存在文件中的记录,因此需要手动删除.bash_profile文件中的记录
-
检查异常端口
netstat -antlp|more 查看下pid所对应的进程文件路径, 运行ls -l /proc/$PID/exe或file /proc/$PID/exe($PID 为对应的pid 号)
-
检查异常进程
ps aux | grep pid
-
检查开机启动项
开机启动配置文件
/etc/rc.local /etc/rc.d/rc[0~6].d
-
检查定时任务
crontab -l 列出某个用户cron服务的详细内容 Tips:默认编写的crontab文件会保存在 (/var/spool/cron/用户名 例如: /var/spool/cron/root crontab -r 删除每个用户cront任务(谨慎:删除所有的计划任务) crontab -e 使用编辑器编辑当前的crontab文件 如:*/1 * * * * echo "hello world" >> /tmp/test.txt 每分钟写入文件 2、利用anacron实现异步定时任务调度
重点关注
/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/*
-
检查服务
chkconfig --list 命令,可以查看系统运行的服务
-
检查异常文件
-
检查系统日志
Linux的登录日志查看文件
-
日志默认存放位置:/var/log/
-
查看可登录的账户 cat /etc/passwd|grep '/bin/bash'
-
查看所有用户最后的登录信息 lastlog
-
查看用户最近登录信息 last 其中,/var/log/wtmp 存储登录成功的信息、btmp 存储登录失败的信息、utmp 存储当前正在登录的信息
-
查看当前用户登录系统情况 who
Linux常用排查命令
系统信息
-
查看当前系统状态 top
-
操作系统信息 uname -a
-
查看当前系统进程信息 ps
-
查看历史命令 history
-
列出本机所有的连接和监听的端口 netstat
-
查看谁在使用某个端口 lsof
用户登录
-
查看当前用户登录系统情况 who
-
分析超级权限账户 awk-F: '{if(3==0)print3==0)print 3==0)print1}'/etc/passwd
-
查看可登录的账户 cat/etc/passwd|grep '/bin/bash'
-
查看用户错误的登录信息 lastb
-
查看所有用户最后的登录信息 lastlog