NetGuard

Ataque de Execução de Comando

O que é um Ataque de Execução de Comando?

Um ataque de execução de comando ocorre quando um atacante é capaz de executar comandos arbitrários no sistema operacional do servidor alvo. Isso pode ocorrer devido a falhas no código da aplicação, que permite a injeção de comandos de forma insegura.

Riscos

Os riscos associados a ataques de execução de comando incluem:

Como os Hackers Executam este Tipo de Ataque

Hackers exploram vulnerabilidades em aplicações que executam comandos do sistema operacional com base em entradas do usuário sem validação adequada. Abaixo estão exemplos de código vulnerável em diferentes linguagens de programação:

Exemplos de Código Vulnerável

PHP


<?php
$command = $_GET['cmd'];
system($command);
?>
        

Python


import os
command = input("Enter the command: ")
os.system(command)
        

Boas Práticas para Prevenção

Más Práticas

Exemplos de Código Seguro

PHP


<?php
$allowed_commands = ['ls', 'whoami'];
$command = $_GET['cmd'];
if (in_array($command, $allowed_commands)) {
    system($command);
} else {
    echo "Comando não permitido.";
}
?>
        

Python


import subprocess
allowed_commands = ['ls', 'whoami']
command = input("Enter the command: ")
if command in allowed_commands:
    subprocess.run(command, shell=True)
else:
    print("Command not allowed.")
        

Gostaria de testar seu conhecimento sobre o assunto

Clique aqui para iniciar o Quiz