Ejecución segura de scripts de shell; escapar de vars antes de la ejecución
Imaginemos que tenemos un script php simple que debería obtenerssh_host
, ssh_username
, ssh_port
desde $ _GET array e intente conectarse usando estos parámetros a SSH.
$port = escapeshellcmd($_GET['ssh_port']);
$host = escapeshellcmd($_GET['ssh_host']);
$username = escapeshellcmd($_GET['ssh_username']);
$answer = shell_exec("ssh -p " . $port . " " . $user . "@" . $host);
Esescapeshellcmd()
suficiente o necesito algo más complicado? O tal vez debería usarescapeshellarg()
¿en este ejemplo?
Gracias.