eu tenho umfecho eclairarquivo que não consigo abrir porque esqueci a senha. Tenho certeza de algumas partes dessa senha, mas não consigo me lembrar das variações que adicionei a ela. tenteicrackzipmas não vejo como indicar que conheço partes da senha. Para resumir:
- Conheço algumas partes da senha, exemplo "olá","mundo" e "merda".
- Essas peças podem estar em qualquer ordem e nem todas podem ser utilizadas.
- Algumas pequenas partes adicionais podem aparecer, como 3 a 5 letras minúsculas.
Você conhece algum software que possa fazer isso?
Responder1
Esboço do método:
Use um utilitário como
crunch
para criar um arquivo de dicionário personalizado.Execute
fcrackzip
com esse dicionário personalizado.
Problemas:
Até 3 strings misturadas com 3 a 5 letras minúsculas geram mais de um trilhão de senhas possíveis. Apenas gerar esse dicionário demorará um pouco.
crunch
permite o uso de curingas baseados em caracteres, mas o manuseio de strings personalizadas não é tão flexível. Para resolver este Q,grep
,sed
esort
também parece ser necessário, qualquer um dos quais aumenta o tempo necessário, ou seja, horas, talvez dias...
Algo assim provavelmente funcionaria:
crunch 3 9 abcdefghijklmnopqrstuvwxyz123 | \
grep '[123]' | # at least one number per dict entry
egrep -v '([123]).*\1' | # remove repeated numbers
sed 's/1/hello/;s/2/world/;s/3/shittypass/' | # replace numbers with strings
sort -u | \
fcrackzip -D -p /dev/stdin foo.zip
Caso de teste com um conjunto de problemas menor (uma ou duas strings e até duas letras minúsculas, em qualquer ordem):
echo foo > bar.txt # file to archive
zip -P xhellobworld baz bar.txt # archive with password
time crunch 2 4 abcdefghijklmnopqrstuvwxyz12 | \
grep '[12]' | egrep -v '([12]).*\1' | \
sed 's/1/hello/;s/2/world/' | \
sort -n | fcrackzip -u -D -p /dev/stdin baz.zip
Saída:
Crunch will now generate the following amount of data: 3163440 bytes
3 MB
0 GB
0 TB
0 PB
Crunch will now generate the following number of lines: 637392
PASSWORD FOUND!!!!: pw == xhellobworld
real 0m5.942s
user 0m2.240s
sys 0m1.040s