Shell Injection

šŸ“Œ
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.