Un shell inverso suele ser un código no autorizado (malware) que se ejecuta en la computadora de destino y que “transmite” a una computadora de comando y control (C2) en una red accesible. Cuando se llega a la computadora C2, se ejecuta un intérprete de shell (como cmd.exe) y todas las entradas y salidas pasan a través del malware y entre el host víctima y la computadora C2.
El ejemplo más conocido y común de “shell inverso” es usar netcat en dos computadoras. Además, se pueden usar comandos almacenados especiales en, por ejemplo, Microsoft SQL Server 2003 (específicamente, xp_cmdshell ()) para generar un shell si un atacante puede llamar el comando de forma remota (como cuando un sitio web conectado al servidor SQL permite la inyección de SQL )
Los proyectiles inversos dan a los atacantes acceso a un intérprete de comandos del sistema en el nivel en el que se ejecutan. Esto se puede usar con gran efecto si el shell se genera a nivel de Administrador de dominio (para Windows) o root (para Linux, si la contraseña de root se comparte comúnmente entre los hosts).
- ¿Qué incentivo obtiene la gente de crear virus informáticos?
- ¿Sería una buena idea tener una clave ssh privada en mi teléfono inteligente para conectarme a mi servidor?
- ¿Qué dispositivos inteligentes serían los más peligrosos si un pirata informático los comprometiera?
- Un colega está en el proceso de iniciar una empresa de seguridad cibernética con énfasis en escaneos y soluciones de seguridad de aplicaciones. Todo lo que tiene es $ 3,500 y una bolsa llena de ideas. ¿Cómo aconsejarán los coroanos que recaude más capital sin un banco?
- ¿Cuál es el teléfono inteligente más seguro del mundo?
Los shells inversos pueden incluso ser compilados por malware si pueden conectarse, descargar y tener acceso a un compilador. Esto puede permitir un acceso sigiloso a un sistema que de otra manera tal vez dispararía ciertas alertas de red o de host.