Geralmente, classificamos um ataque bem-sucedido em dois componentes, inspirados na terminologia militar: a Carga útil, que, quando executada no alvo, desencadeia os efeitos maliciosos (ocultando, transformando seu host em um zumbi, etc ...) e o Vector, que é encarregado de executar a carga útil. Então, você está perguntando que tipo de vetores de ataque existe?
Em seu sentido histórico, um cavalo de Tróia confia no usuário final como um vetor. Antes da disseminação da conectividade de rede, geralmente significava que você era enganado a executar diretamente o que você pensaria ser um programa útil ou um jogo interessante.
Existem outras maneiras pelas quais o código pode ser executado com a assistência do usuário; por exemplo, houve alguns casos de vulnerabilidades no conteúdo que exibia bibliotecas, como pdf, jpeg ou renderizadores em flash. Se você tiver o programa vulnerável instalado, basta tentar exibir o conteúdo tóxico. Você pode ser infectado simplesmente quando o navegador tenta exibir um .jpg na página que você visita; um .jpg malicioso pode conter dados inválidos que atingem um bug na biblioteca de exibição e talvez acabem executando o conteúdo.
Nesse caso, mesmo que você não tenha clicado no programa malicioso, ele está sendo executado sem o conhecimento do programa que chama a biblioteca vulnerável (aqui, seu navegador).
Infelizmente, não podemos limitar o número de vetores possíveis; sempre que seu sistema processa automaticamente o conteúdo de uma fonte não confiável, existe o risco de uma vulnerabilidade ser explorada. Contra isso, sua melhor aposta é provavelmente prestar atenção às atualizações de segurança e praticar a defesa em profundidade (como executar programas do dia-a-dia com privilégios restritos, etc ...)