A virus is computer code that exploits a security shortcoming in a computer system in order to perform some malicious task, called it’s payload. Viruses and malware have many similarities.