Execução de comandos shell com parâmetros vindos de input de usuÔrio.
Um exemplo é ao utilizar uma biblioteca para converter ou reduzir um arquivo. O atacante pode utilizar o nome do arquivo (caso ele não seja sanitizado) para inserir comandos maliciosos.
Uma aplicação mal feita poderia cair no seguinte ataque:
magick convert {nome_arquivo}.jpg -resize 50% {nome_arquivo}.png
Se o usuƔrio passar como
nome_do_arquivo
o valor ; rm -rf ./ *
. E *puff*, não existe mais aplicação.Como se previnir?
Para ataques vindos de input do usuĆ”rio, a melhor saĆda Ć© sempre sanitizar os valores.