Che cos’è una backdoor e come rilevarla da riga di comando

Quando un aggressore scopre una vulnerabilità in un sito, il più delle volte tenta di sfruttarla installandovi una backdoor, ossia uno script, generalmente in PHP, progettato con l’intento di garantire un accesso remoto al server anche dopo che la vulnerabilità è stata risolta.

Una backdoor può essere richiamata dal browser come una normale pagina web, e fornisce all’attaccante la possibilità di compiere diverse operazioni, tra cui visualizzare e prelevare dati sensibili, creare nuove directory e caricare altri script.

Rientrando nella definizione di malware, le backdoors non sono facilmente identificabili, poiché, una volta installate, si confondono con i file di sistema attraverso nomi apparentemente innocui e funzioni utilizzate anche dagli sviluppatori.

Qui di seguito, mostro un metodo molto utile per verificare se sul proprio server Linux è presente codice potenzialmente dannoso. Avendo accesso alla macchina remota via SSH, possiamo eseguire comandi ed avviare programmi direttamente da una shell.

Find e grep

Tramite questi due tools , si utilizza la tecnica del pattern matching su stringhe al fine di individuare i file che contengono le funzioni PHP sospette, come eval(), gzinflate(), base64_decode(), str_rot13() ecc. L’output del comando verrà inviato all’interno di /tmp/potential_malware.txt:

sshcl2

Con un qualsiasi editor di testo possiamo aprire il file per vedere se la ricerca ha dato riscontri:

sshcl5

Che cos’è una backdoor e come rilevarla da riga di comandoultima modifica: 2017-11-09T02:48:08+01:00da kith_straworth