一、入侵第一步:哪个房间开了哪扇窗户?
苍蝇不叮无缝的蛋。
计算机世界也一样,每个电脑其实就像一个房间,都开了一扇一扇的小窗户,我们称其为端口。那我们怎么知道哪些电脑(房间)开了哪个端口(窗户)呢?
linux下用nmap工具!
用法如下:
# nmap -O -sV -sS -v 172.21.73.0/24
以上代表扫描172.21.73.0网段的所有电脑,并分别报告各个电脑的开放的端口,例如:
ssh的端口号是22。我们过滤一下,看哪些机器开放了22号端口:
# nmap -O -sV -sS -v 172.21.73.0/24 | grep "22/"
乖乖,还不少哟:
二、入侵第二步:猜密码之字典文件。
ssh登录的前提是用户名和密码。
如果手动一个一个试,那到天荒地老也搞不出来啥子。
我们需要两个字典文件,一个放用户名,一个放密码。有了这两个字典文件,就可以让计算机去自动的帮我们去尝试登录ssh了。
所以,成功的关键是:字典文件。
如果你的用户名字典文件的内容是:
users.txt
root
admin
guest
none
而你的密码字典文件的内容是:
password.txt
root
P@ssw0rd
admin
password
1
12345
123456
那么程序会自动的分别用每一条用户信息和每一条密码信息匹配尝试登录ssh。
三、入侵第三步:暴力破解
是时候祭出我们的破解神器了,那就是大名鼎鼎的hydra。
比如通过第一步的扫描,我们发现172.21.73.12开放了ssh服务,那我们就可以使用第二步提供的字典文件进行破解喽:
# hydra -L users.txt -P password.txt -t 8 -vV -e ns 172.21.73.12 ssh
以上程序会使用第二步创建的用户字典文件和密码字典文件去尝试破解172.21.73.12的ssh端口,如果成功登入,则返回对应的用户名和密码,运行界面如下:
以上就是暴力破解ssh的基本思路,大家可以发现这里的重点其实在于字典文件。
在这里,我们的字典文件是手动填写的,但是其实linux下还有一些工具可以帮助我们生成更智能的、更精准的字典文件。有了这些字典文件,破解的成功率会更高哟。
提醒:
大家设定密码的时候一定要设置的复杂一点噢,千万不要让字典文件给猜到了。
关于自动生成字典文件,下一篇文章再给大家分享,敬请期待。