使用 python 的暴力破解
Brute force using python
我有一个可执行程序,它接受一个四位数的密码组合。我应该使用 python 脚本破解程序。到目前为止我得到了这个。当我执行它时,它只打印 9999。所以我得到 "Wrong pin code: 9999"。请帮忙
import itertools
import os
numbers = '0123456789'
y = ''
for c in itertools.product(numbers, repeat=4):
pin = y+''.join(c)
print pin
os.system("./xyz "+pin)
注意标识:
import itertools
import os
numbers = '0123456789'
y = ''
for c in itertools.product(numbers, repeat=4):
pin = y+''.join(c)
print pin
os.system("./xyz "+pin)
正如 Maurice Meyer 所说:缩进是错误的。
另外:使用 itertools.product
有点复杂。我想你想解决将 1 变成“0001”的问题,你可以使用 zfill
来解决这个问题:
for i in range(10000):
pin = str(i).zfill(4)
os.system("./xyz "+pin)
我有一个可执行程序,它接受一个四位数的密码组合。我应该使用 python 脚本破解程序。到目前为止我得到了这个。当我执行它时,它只打印 9999。所以我得到 "Wrong pin code: 9999"。请帮忙
import itertools
import os
numbers = '0123456789'
y = ''
for c in itertools.product(numbers, repeat=4):
pin = y+''.join(c)
print pin
os.system("./xyz "+pin)
注意标识:
import itertools
import os
numbers = '0123456789'
y = ''
for c in itertools.product(numbers, repeat=4):
pin = y+''.join(c)
print pin
os.system("./xyz "+pin)
正如 Maurice Meyer 所说:缩进是错误的。
另外:使用 itertools.product
有点复杂。我想你想解决将 1 变成“0001”的问题,你可以使用 zfill
来解决这个问题:
for i in range(10000):
pin = str(i).zfill(4)
os.system("./xyz "+pin)