En las (pocas) pruebas de penetración que he realizado hasta ahora, normalmente he creado una shell inversa con Netcat para ejecutar los comandos en la máquina de destino. Ahora, parece que a muchas personas les gusta usar un cliente SSH para hacer esto. He estado investigando para obtener más información y descubrí que, en todo caso, parece que sería mejor usar Netcat. Esto se debe a que muchas redes no tienen SSH instalado por razones de seguridad, o los firewalls que impiden la comunicación de SSH.
Entonces, lo que me pregunto es ¿cuándo es apropiado usar un shell inverso con Netcat frente a un cliente SSH? ¿Cuáles son los pros y los contras de cada uno? Gracias.