再会。
我正在尝试编写一个 python 脚本,它将获取一个捕获的密码,然后将其与系统隐藏密码进行比较。
我使用 Ubuntu 12.10 进行此测试。并将脚本作为 sudo 运行。
def login(user, password):
"Check if user would be able to login using password"
try:
pw1 = spwd.getspnam(user)[1]
allus = spwd.getspall()
print pw1
# pw2 = crypt.crypt(password, pw1[:2])
pw2 = crypt.crypt(password, '\$6\$SALTsalt\$')
print pw2
return pw1 == pw2
except KeyError:
return 0 # no such user
现在以上返回
2 个不同的密码,但我确实从阴影中得到了一个。
所以我的问题是如何加密提供的密码,以便将其与检索到的密码进行比较。任何帮助都会很棒
编辑插件
def login(user, password):
"Check if user would be able to login using password"
try:
pw1 = spwd.getspnam(user)[1]
allus = spwd.getspall()
# print allus
print pw1
# pw2 = crypt.crypt(password, pw1[:2])
# pw2 = crypt.crypt(password, '\$6\$SALTsalt\$')
pw2 =hashlib.new()
pw2.update(password)
pw2.digest()
print pw2
return pw1 == pw2
except KeyError:
return 0 # no such user
那也不起作用如何暗示haslib以获取哈希以匹配系统密码