Cryptanalyse

dimanche 13 février 2022, 22:48  #1
Cryptanalyse - ELF64 - Chiffrement avec le PID
wincent
  • 4 posts

Hello,
J’ai résolu ce challenge, mais pas aussi bien que j’aurais voulu.
J’ai écrit un petit programme Python qui calcule le prochain PID.
Ensuite mon idée était d’appeler toujours depuis mon script Python le programme du challenge avec le password calculé à partir du prochain PID.
Quelque chose comme os.popen("./ch21 "+crypt.crypt(str(next_pid),"$1$awesome") ou os.system("./ch21 "+crypt.crypt(str(next_pid),"$1$awesome") )
Malheureusement, même quand mon script Python trouvait le bon PID et donc le bon argument à passer en paramètre à ./ch21, je n’avais pas accès au bash ouvert par ./ch21.
Du coup, j’ai modifié mon programme Python pour me retourner la chaine de caractères retournée par crypt avec un PID un peu plus lointain, puis j’ai appelé ./ch21 depuis le bash avec celle-ci en argument.
Au bout de quelques essais, je finis par obtenir un bash. Pas trop fastidieux, mais pas très satisfaisant.
Ma question est comment accéder au bash ouvert par un sous-programme qu’on lance depuis un script Python ?

dimanche 20 mars 2022, 20:16  #2
Cryptanalyse - ELF64 - Chiffrement avec le PID
Nast266
  • 7 posts

(python -c ’print payload’ ; cat -) | ./executable

Par contre tu en dirais pas un peu trop dans ta description de résolution ? on est pas loin du spoil la :)