SSH攻击

作者: 昵称又重复 | 来源:发表于2019-05-09 20:29 被阅读288次

有段时间发现集群异常卡顿。担心的事情终于发生了,
使用命令 lastb 查看了一下,我的天呢,好多未知的IP,我随便复制粘贴了一个到百度查询了一下,我日,美国的。后来还在网上的IP黑名单中发现了攻击我们服务器的IP。下面是从发现到解决的一个过程:

lastb查看的是 cd /var /log/btmp中的内容
last 查看的是 cd/var /log/wtmp中的内容
发动SSH攻击的IP地址列表
http://antivirus.neu.edu.cn/scan/ssh.php

统计ip出现的次数
https://blog.csdn.net/keketrtr/article/details/78606237
cat /var/log/btmp | awk '{print$(NF-1)}' |sort |uniq -c |sort -k 1 -n -r |head -20

参考网址
https://blog.csdn.net/qq_30553773/article/details/78705079
二、方法:读取/var/log/secure,查找关键字 Failed

处理SSH攻击的基本流程
首先查看我们的服务器是否存在SSH攻击

步骤一:
使用命令 lastb -20 查看,如果有大量的未知IP, 加上时间分析。极短时间内出现多次,则可以确定受到SSH攻击
查看登陆失败的用户IP
cat /var/log/secure | grep 'Failed password'
如果是SSH 攻击,会有很多的IP被列出来

查看cat /etc/hosts.allow (这个文件是存放 允许访问服务器的所有IP的内容,可以简单理解为白名单)
查看cat /etc/hosts.deny (这个文件存放的是 不允许访问服务器的IP内容 , 简单理解为黑名单)

步骤二:
然后开始写脚本,检测多次出现的IP
并且将这些IP存放到 hosts.deny 黑名单下。

步骤三:
首先创建存放实施攻击的ip的文本 命名为:security.txt 放在目录root下
创建脚本文件 命名为:security.sh 放在目录root下

! /bin/bash

cat /var/log/secure|awk '/Failed/{print (NF-3)}'|sort|uniq -c|awk '{print2"="1;}' > /root/security.txt for i in `cat /root/security.txt` do IP=`echoi |awk -F= '{print 1}'` NUM=`echoi|awk -F= '{print 2}'` if [{#NUM} -gt 1 ]; then
grep IP /etc/hosts.deny > /dev/null if [? -gt 0 ];then
echo "sshd:$IP:deny" >> /etc/hosts.deny
fi
fi
done

步骤四:
脚本创建好之后,将脚本的权限更改为可执行权限
chmod 777 security.sh
SSH攻击是每时每刻都在发动攻击的,所以我们需要将脚本添加到定时任务中,定时的执行
cat /etc/crontab (这个文本是存放定时脚本的文本)

步骤五:
将脚本添加到定时任务
crontab -e
*/1 * * * * root /root/security.sh (每分钟执行一次,执行用户是root 执行的脚本目录是/root/security.sh)

步骤六:
查看是否将脚本添加到定时任务
crontab -l
如果出现我们的定时执行任务,则添加成功

后期如果需要删除此定时任务的话,
crontab -r

步骤七
使用命令 lastb -20 (查看尝试登录我们服务器,但是登陆失败的IP)
成功的看到,那些之前一秒钟发动几十次攻击的IP不存在了,
原因一是:脚本对IP进行筛选之后,将识别为攻击者IP的,都放入了黑名单中,
原因二是:如果攻击者尝试用别的新的IP ,也就是没有被写入到黑名单的IP, 我们的脚本再次检测,将这些新的攻击IP也写入黑名单
这样,攻击者的IP会越来越少。

关于crontab的使用
https://blog.csdn.net/wuasdf123456/article/details/51722753

目前暂时是这个样子解决了,不知道大神还有没有更好的方式了!!!欢迎探讨!

相关文章

  • SSH攻击

    有段时间发现集群异常卡顿。担心的事情终于发生了,使用命令 lastb 查看了一下,我的天呢,好多未知的IP,我随便...

  • Linux/Centos7通过DenyHosts阻止SSH口令攻

    DenyHosts介绍 DenyHosts是一个python脚本帮助阻止SSH攻击(基于字典或暴力的密码攻击),它...

  • 服务器ssh安全防护

    线上服务器每天都要经受几百上千次的ssh攻击,可以采取以下几种措施加强这方面的防护。 修改ssh服务端口 ssh服...

  • SSH完全介绍

    目录 SSH介绍特性OpenSSH 原理认证连接通信 中间人攻击fingerprintauthorized_key...

  • Ubuntu 16.04+VPS+WordPress的安全相关

    1.VPS //防SSH攻击 apt-get install denyhosts //使用Putty+RSA密钥对...

  • ssh证书登录

    前言 ssh有密码登录和证书登录,密码登录,特别是外网的机器,很容易遭到攻击。真正的生产环境中,ssh登录还是证书...

  • Metasploit实战:SSH漏洞攻击

    SSH弱口令破解 如果在设置SSH服务时,管理员设置了容易被猜解出来的用户名和密码(弱口令)。那么测试人员就可以使...

  • Centos安装denyhosts

    Denyhosts我们通常用来抵御ssh字典攻击。Denyhosts是采用python写的,需要python环境(...

  • 【CS学习笔记】22、通过SSH开通通道

    0x00 前言 这一节将来介绍如何通过 SSH 通道进行攻击。 0x01 通过 SSH 建立通道 1、连接到上图中...

  • Mac远程连接iPhone

    SSH协议 可以为远程登录提供安全保障的协议使用SSH,可以把所有传输的数据进行加密,中间人攻击方式就不可能实现,...

网友评论

    本文标题:SSH攻击

    本文链接:https://www.haomeiwen.com/subject/grggoqtx.html