文章总结: 本文详细介绍了网络认证爆破工具Ncrack的安装流程与基础操作,包括在Windows环境下的部署及字典文件准备。文章通过实战演示,说明了如何利用Ncrack对CentOS7靶机的FTP服务进行弱口令爆破,涵盖连通性检测、命令参数详解及结果保存方法。该工具主要服务于渗透测试中的权限获取阶段,旨在验证网络服务的弱口令风险。 综合评分: 75 文章分类: 渗透测试,安全工具
Ncrack安装及基本用法
原创
dcnb dcnb
Web安全基础与实践
2026年1月25日 18:01 广东
Ncrack是一款高性能网络服务认证爆破工具,主要用于对各类网络服务的用户名和密码进行自动化穷举测试。它通过加载用户名和密码字典,模拟正常的服务登录流程,逐一尝试不同的凭据组合,直到匹配出正确的用户名和密码。因此,常被安全人员用于渗透测试的权限获取阶段,验证目标服务的弱口令风险。
1、安装
以下内容在Windows10攻击机和CentOS 7靶机中进行Ncrack爆破操作演示。
访问Ncrack官方下载网址:“https://nmap.org/ncrack”。下拉找到Windows binaries栏目后,点击“ ncrack-0.7-setup.exe”进行下载,如图1所示。
图1 Ncrack下载页面
下载完安装包后,选择Ncrack的安装路径,点击“Next”进行安装,如图2所示。
图2 安装Ncrack
我们也可以检验Ncrack是否安装成功。在终端输入以下指令,若出现Ncrack的版本号以及命令格式等信息,则证明安装成功。如图3所示,出现了Ncrack相关的版本号以及命令格式,说明Ncrack在本设备上安装成功。至此,Ncrack安装完毕。
Ncrack -h
图3 验证Ncrack是否安装成功
2、下载字典
Ncrack 依赖字典,因此我们需要先在 Windows 上准备好用户名字典和密码字典。新建文本文档UserList.txt以自定义用户名,每行写一个用户名(如admin/user/test),如图4所示;同理新建PassList.txt写密码,如图5所示。
图4 自定义用户名字典
图5 自定义弱密码字典
3、常用操作
以下内容在Windows10攻击机和CentOS7攻击机上进行演示。基本格式如下:
ncrack [全局参数] [目标&服务参数] [字典参数]
表1 参数解释
| | | |
| — | — | — |
| 参数类型 | 常用参数 | 作用说明 |
| 目标指定 | 目标``IP/-iL``目标列表文件 | 单个目标直接写 IP;批量目标写入 txt,用-iL C:\dict\targets.txt调用 |
| 服务 / 端口指定 | -ftp``端口/服务``://``目标 | Ftp://192.168.1.200直接指定 RDP 服务 + 目标 |
| 字典指定 | -U``用户名字典路径 | 调用用户名字典(如-U C:\SecLists\Usernames\usernames.txt) |
| 字典指定 | -P``密码字典路径 | 调用密码字典(如-P C:\SecLists\Passwords\rockyou.txt) |
3.1 检查双方连通性
在Windows10 攻击机上输入“ipconfig”后,检查其ip地址,如图6所示。可见,其IP地址为192.168.1.102。
图6 Windows10攻击机ip地址
在靶机上输入“ip addr”,如图7所示。可以看到其ip地址为192.168.1.103.与windows10攻击机处于同一子网下。
图7 CentOS7靶机ip地址
在Windows10上输入以下命令,返回结果如图8所示。由图可知,双方具有连通性。
图8 Windows10 ping CentOS7结果
3.2 爆破操作
在进行爆破操作之前,CentOS7靶机需要安装vsftpd(FTP 服务程序),是因为FTP 是一种用于文件传输的网络服务,只有安装并启动对应的服务程序,靶机才能提供 FTP 服务功能,进而才能爆破出靶机的用户名和密码。
在CentOS7靶机上依次输入以下命令。其中后两条命令作用是将FTP 服务程序设置为开机自启动和启动FTP 服务程序。
yum install -y vsftpdsystemctl start vsftpd systemctl enable vsftpd
如图9所示,当观察到“active(running)”时,说明此时靶机的FTP 服务程序已经启动。接着,我们在Windows10 攻击机上输入以下指令测试双方是否连通。具体结果如图10所示。由图可见,此时两者已经完成了Ftp服务的连接。
ftp 192.168.1.104
图9 启动FTP服务程序
图10 双方进行ftp连接测试
双方完成Ftp连接后,开始爆破操作。根据Ncrack的命令格式以及我们事先设定好的用户名和密码字典,我们输入如下命令:
ncrack -U C:\websec\UserList.txt -P C:\websec\PassList.txt ftp://192.168.1.104
其中,-U表示用户名字典所在路径,-P表示密码字典所在路径,ftp://后添加的内容为靶机的ip地址。
如图11所示,可以观察到Ncrack返回了靶机的用户名和密码为”root”和”123”,符合实际情况。
图11 爆破靶机用户名和密码
3.3 保存结果
当需要进行批量爆破操作或需要保存结果时,通常需要将爆破结果保存到.txt文件中,方便后续查阅。因此,输入以下命令:
ncrack -U C:\websec\UserList.txt -P C:\websec\PassList.txt ftp://192.168.1.104 -oN result.txt
通过该命令,Ncrack会将结果保存在C:\websec\result.txt文件中,如图12所示。
图12 结果另存为文件
本文由周俊旭同学投稿。
- END –
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:Web安全基础与实践 dcnb dcnb《Ncrack安装及基本用法》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论