¿Qué es un software malicioso y qué tipos hay?