背景
原因是新装了个宽带,在网上找到办法成功telnet访问光猫后发现没有root权限,于是乎就打算尝试爆破一下。John the Ripper(下称JTR)和hashcat都可以使用GPU,但针对破解linux用户密码JTR似乎更加方便。只要不是太老的N卡都支持,这里我用的是P106-100,毕竟哥布林窝里出来的女骑士挖矿算hash是老本行。
一、下载 cygwin
如果使用GPU需要伪linux环境,这里推荐cygwin
官方下载地址:
https://www.cygwin.com/
二、cygwin配置opencl组件
安装过程中需要添加opencl组件(libopencl 2.2.12-1),后续根据提示一路默认安装至C:\cygwin64即可
三、下载 JTR
官方下载地址:
https://www.openwall.com/john/
三、配置JTR修改opencl依赖库
1、将下载的JTR压缩包的文件解压至cygwin安装根目录(C:\cygwin64\)
2、由于JTR自带的opencl库无法使用需要将系统下的
C:\Windows\System32\OpenCL.dll
重命名后替换至
C:\cygwin64\run\cygOpenCL-1.dll
四、开始爆破
1、将包含密文的/etc/passwd或者/etc/shadow文件直接拷贝过来。
2、打开CMD(不要用powershell,否则无法正常调用opencl)切换至C:\cygwin64\run目录。
3、执行一遍软爆破(使用CPU),查看加密类型(图中为sha512crypt)。
john ..\shadow.txt
3、通过-format选项指定加密类型,后缀opencl表明使用GPU,执行命令为
john ..\shadow.txt -format=sha512crypt-opencl
结束语
不要对密码爆破抱有太大希望,如果原始密码很复杂即使使用专业GPU也要很久(数天甚至上月)。
参考
https://www.chamberofunderstanding.co.uk/2020/03/10/getting-john-the-ripper-working-in-opencl-mode-in-windows/
https://blog.youkuaiyun.com/SBBTD/article/details/104379907?spm=1001.2014.3001.5506