SSH

禁用密码登录:

PasswordAuthentication no

确保启用公钥认证:

PubkeyAuthentication yes
chmod 700 /root/.ssh
chmod 600 /root/.ssh/authorized_keys
chown root:root /root/.ssh
chown root:root /root/.ssh/authorized_keys
 
restart sshd  # 重启生效

Apache

<Directory />
    Options FollowSymLinks  <!-- 危险配置,删除 -->
    AllowOverride None
    Require all denied
</Directory>

登录日志应急

有多少 IP 在爆破主机 ssh 的 root 帐号,如果有多个使用”,“分割

cat /var/log/auth.log* | grep -a "Failed password for root" | awk '{print $11}' | sort -n | uniq | tr '\n' ','

ssh 爆破 成功登陆 的 IP 是多少,如果有多个使用”,“分割

cat /var/log/auth.log* | grep -a "Accepted " | awk '{print $11}' | sort -n | uniq -c

爆破用户名字典是什么?如果有多个使用”,“分割

打印所有登录失败的记录:

cat /var/log/auth.log* | grep -a "Failed password"

官方答案:

grep -a "Failed password"  /var/log/auth.log.2|perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr

登陆成功的 IP 共爆破了多少次

cat /var/log/auth.log* | grep -a "Failed password for root" | awk '{print $11}' | sort -n | uniq -c

黑客登陆主机后新建了一个后门用户,用户名是多少

cat /var/log/auth.log* | grep -a "useradd" | grep -a "linux-rz"

Apache 日志分析

常见路径:

  • /var/log/apache/access.log
  • /var/log/apache2/access.log
  • /var/log/httpd/access.log

访问次数最多的 IP

cut -d- -f 1 access.log.1|uniq -c | sort -rn | head -20

查看页面访问次数

grep "/index.php" access.log.1 |wc -l

查看 IP 访问次数

这里我们使用 -w 参数进行全匹配,可以避免匹配 192.168.200.211

grep -w "192.168.200.2" access.log.1 |wc -l

查看时间段内的 IP

cat access.log.1 | grep "03/Aug/2023:08:" | awk '{print $1}' | sort -nr | uniq -c

Windows 日志分析

有哪些 ip 访问过 Nginx

cut access.log  -d - -f 1 |uniq -c |sort -rn |head -100

Linux 检查高权限用户

awk -F: '$3==0 {print$1}' /etc/passwd

Windows 影子帐户1

通过注册表导入的影子帐户,只能在注册表查看或删除

位置:HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names

Footnotes

  1. https://www.cnblogs.com/xinga/articles/17909212.html