Déjame contestar con algunas observaciones y comentarios. Comenzaré con el enfoque de "whodunit" de ayudar a determinar quién, qué, cuándo, dónde y cómo.
-
Qué : un archivo que encontraste en tu sistema
-
Cuándo : en qué fecha se encontró
-
Cómo : cómo se cargó
-
Quién : quién lo subió
Ya conoces el archivo porque lo encontraste. Llamemos a este archivo: malware.php. Lo que mencionas haciendo es determinar " quién " accedió a este archivo, pero debes averiguar how que se subió. Mirar a quién accedió a este archivo es el enfoque equivocado. Esto es porque los atacantes usualmente usan múltiples puntos de ataque. Por ejemplo, un sistema puede escanearlo, otro puede comprometerlo, y otro puede acceder al sistema comprometido. Entonces, averigüemos quién primero usa los métodos deductivos:
$ ls -ltha malicious.php
-rw-r--r-- 1 www-data www-data 0 Mar 27 10:59 malicious.php
En este caso, vemos que el archivo pertenece al usuario www-data en el grupo www-data. Esto no significa que un atacante lo haya cargado a través de http usando post u get. No hay nada que impida que alguien explote, por ejemplo, telnet, cargue un archivo y realice una comprobación en el archivo.
ls -ltha --time=atime malicious.php
-rw-r--r-- 1 www-data www-data 0 Apr 27 10:09 malicious.php
ls -ltha --time=ctime malicious.php
-rw-r--r-- 1 www-data www-data 0 Apr 27 11:00 malicious.php
Aquí podemos ver las diferencias en las marcas de tiempo. Si alguien utiliza, digamos timestomp (Metasploit), se pueden cambiar los tiempos de MAC. Entonces, podemos deducir en los datos anteriores, que estamos más o menos dentro del reino de los 50 minutos. Asegurémonos de que este usuario nunca haya iniciado sesión, para eso podemos verificar wtmp, auth, ftp logs, etc. Si este usuario nunca ha iniciado sesión, podemos luego inferir que esto no se cargó en ningún otra moda fuera de via HTTP.
Cuándo : redujimos el período de tiempo a un período de 51 minutos. Los registros que vería serían los registros de error PRIMERO seguidos del registro de acceso. La razón de esto es simple, en ningún momento un atacante sabría exactamente cómo obtener un archivo en su sistema. Esto significa, hubo un reconocimiento de prueba y error. Esto estará en sus registros de error que aparecen como un 404 o 403. Yo buscaría esos primero. Ahora reduzcamos aún más la búsqueda. Un análisis de registro de las visitas mostrará lo que es normal en comparación con lo que puede ser una anomalía. Por ejemplo, si la base de tráfico va a decir index.html, elimine todas esas instancias y observe las anomalías. Una vez que determine esto, habrá determinado el Cómo . Esto es completamente independiente de averiguar cómo compilaron su código, lo cual sería una pregunta completamente diferente.