千锋网络安全教程:第5章、扫描与密码暴破-千锋_各类服务密码爆破
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
口令破解
口令安全威胁
- 概述
现在很多地方都以用户名(账号)和口令(密码)作为鉴权的方式,口令(密码)就意味着访问权限。
口令(密码)就相当于进入家门的钥匙,当他人有一把可以进入你家的钥匙,想想你的安全、你的财务、你的隐私、害怕了吧。
例如网站后台、数据库、服务器、个人电脑、QQ、邮箱等等
- 口令安全现状
@ 弱口令
类似于123456、654321、admin123 等这样常见的弱密码。
@ 默认口令
很多应用或者系统都存在默认口令。
比如phpstudy 的mysql 数据库默认账密[root/root],Tomcat 管理控制台默认账密[tomcat/tomcat]等。
@ 明文传输
比如http、ftp、telnet 等服务,在网络中传输的数据流都是明文的,包括口令认证信息等。
这样的服务,就有被嗅探的风险。
破解方式
- 暴力破解
暴力破解就是利用所有可能的字符组成密码,去尝试破解。
这是最原始,粗暴的破解方法,根据运算能力,如果能够承受的起时间成本的话,最终一定会爆破出密码。
下表是
下图为用真空密码字典生成器,生成的1到8位数的小写字母和数字字典,约占用空间。
- 字典破解
如果能通过比较合理的条件,筛选或者过滤掉一些全字符组合的内容,就会大幅降低爆破的成本。
我们把筛选出的密码组合成特定的字典。
在用字典爆破密码也是可以的,但是这样做有可能会漏掉真正的密码。
密码字典大致分为以下几类。
@ 弱口令字典
比如123456,admin 等这样的默认口令或弱口令。
@ 社工字典
人们在设置密码的时候,往往为了便于记忆,密码的内容和组合会与个人信息有关,比如常见的密码组合“名字+生日”。
社工字典更具针对性,准确率也比较高。
下图为,根据提供的用户信息,使用亦思社会工程学字典生成器生成的用户可能使用的密码,通过此字典进行密码破解。
@ 字符集字典
如果能确定密码的字符集合,也将大大降低爆破的成本。
windows口令破解
- windows口令远程爆破
如何防止NTscan 扫描?
secpol.msc
本地策略-->安全选项-->网络访问:本地账户的共享和安全模式属性-->仅来宾模式。
- windows账户hash值破解
除了可以从远程爆破windows 密码,我们还可以在本地破解windows 密码。
本地windows 账户破解主要有两种方式。
@ 从内存中读取windows 密码
我们可以是用getpass 直接从windows 系统内存中读取庄户密码。
@ windows hash 值破解
windows hash 值破解一共需要两步操作。
首先我们使用QuarksPwDump工具读取(导出)windows 账户密码hash 值,然后再使用SAMinside 工具破解hash 值。
实验:windows 口令远程爆破
- 环境说明
使用NTScan进行扫描之前,查看密码字典。
用户名字典。
- 配置NTscan
输入起始IP,其他默认保持不变,点击开始,等待扫描结束。
如果爆破密码,会出现在软件的下方。
由此可见,我们已经爆破出来windows2008的账密
[administrator/]。
- 深度利用
左键点击这个地址,会出现一个Connect,点击可以进入一个NTcmd界面。
我们可以在NTcmd中输入命令,如下图:
此时密码破解成功,可以看到我们为system权限。
实验:windows hash 值破解
- 导出windows 密码hash 值
先在windows7虚拟机中打开一个cmd窗口,把QuarksPwDump这个软件托到命令行中。
拖到命令行之后,回车出现以下界面:
我们需要进入到QuarksPwDump软件所在的根目录
输入QuarksPwDump.exe –dhl命令,导出windows 账户hash 值。
注:在导出hash值时,会闪退一下,重新操作一遍会看到以下内容。
将得到的hash值复制到hash.txt文档中。
- 使用SAMside 破解hash 值
打开SAMinside软件,破解hash值,具体使用方法见下图。
将我们的hash.txt文件打开。
打开文件后,就会自动将我们的windows7的密码破解出来了。
由于我们本课程中的素材使用的密码比较简单,所以直接会显示出密码,实际上SAMside 支持暴力破解、字典破解、掩码攻击等方式。
linux口令破解
linux 口令破解,也分远程破解与本地破解。
远程破解主要是爆破ssh 服务,属于在线密码攻击。
本地破解需要拿到linux 的shadow 文件,进行hash 值破解,属于离线密码攻击。
- 破解SSH服务
我们使用hydra 攻击破解ssh 服务,hydra 攻击已经自动集成在kali 虚拟机中。
命令如下
hydra -l root -P /root/dic/test_pwd.dic 10.10.20.79 ssh -vV 在命令行输入hydra,出现以下内容
可以看到,我们的hydra是8.3版本的。
准备两个字典,test_pwd.dic和test_user.dic,由于做实验,可以自己编写一个用户名字典和密码字典
将kali虚拟机接为桥接模式,用ifconfig命令查看IP地址,并输入命令hydra -l root -P /root/dic/test_pwd.dic 10.10.20.79 ssh -vV爆破ssh服务密码。
- 本地shadow文件破解
我们可以使用john 工具,破解shadow 密码文件。
john 有windows 版和linux 版本。
john 也是自动集成在kali 中。
john 破
解的时候也需要准备一个字典。
john 的具体命令如下
john --wordlist=/root/dic/test_pwd.dic /etc/shadow
john --show /etc/shadow
网络服务口令破解
在渗透测试中,我们同样会对各种服务的口令进行审计。
- 破解MSSQL 口令
本实验,需要搭建一个SQL server2000服务管理器,开启后在kali虚拟机中输入以下命令:
hydra -l sa -P /root/dic/test_pwd.dic 10.10.20.87 mssql -vV
- 破解RDP口令
@ 开启RDP 服务
右键计算机→属性→远程设置→远程→勾选运行任意版本远程桌面的计算机连接。
使用命令netstat -an 查看3389端口是否开启。
@ 打开kali虚拟机输入以下命令,进行爆破
hydra -l administrator -P /root/dic/test_pwd.dic 10.10.20.75 rdp -vV
- 破解FTP口令
打开我们的kali虚拟机,输入以下命令:
hydra -L /root/dic/test_user.dic -P /root/dic/test_pwd.dic 10.10.20.81 ftp -vV
进行爆破FTP服务器
结果如下
在线密码查询网站
在线密码查询网站主要是查询md5 hash 值得。
这样的网站有:
附录:FTP 服务器的搭建
- 搭建FTP 服务器
准备一台windows2003虚拟机,并在虚拟机中搭建FTP服务器。
具体的FTP服务器搭建过程见网络部分。
- 新建FTP 站点
FTP搭建完成后,需要新建FTP站点,具体操作如下:
配置完成后,点击应用,然后确定。
- 添加账户
添加用户,开始--控制工具--计算机管理。
系统工具---本地用户和组--用户--右键新用户
- 设置权限
打开FTP站点--右键权限
为刚刚添加的用户设置权限。
重启一下FTP站点,然后使用netstat -an命令,查看21端口是否开启。