Ένας ιός είναι ένα πρόγραμμα που «μολύνει» υπολογιστές και ενεργεί σαν κακόβουλος κώδικας. Ο ιός έχει την ικανότητα να αναπαράγεται πολλές φορές και έτσι εξαπλώνεται σε όλο το σύστημα. Αυτά τα προγράμματα συνήθως επιτίθενται σε αρχεία συγκεκριμένων εφαρμογών, καθώς και σε αρχεία με συγκεκριμένη επέκταση.
Η μόλυνση ενός υπολογιστή, κατά κανόνα, γίνεται μέσω διείσδυσης σε εκτελέσιμα αρχεία, ο ιός μπορεί επίσης να επιτεθεί σε αρχεία δεδομένων, για παράδειγμα, γραφικά, κείμενο κ.λπ. Ωστόσο, στην τελευταία περίπτωση, η δραστηριότητα του ιού εξαρτάται από την εφαρμογή στην οποία ανήκει το αρχείο.
Οι ποικιλίες των ιών είναι τα λεγόμενα σκουλήκια και trojans. Σε αντίθεση με τους συνηθισμένους ιούς, δεν διεισδύουν απευθείας στον κώδικα του αρχείου, αλλά ενεργούν αυτόνομα, ενώ αντιγράφονται πολλές φορές. Τα σκουλήκια χρησιμοποιούνται για τη διάδοση ανεπιθύμητων μηνυμάτων και ιών σε τοπικά δίκτυα ή στο Διαδίκτυο. Το Trojan είναι ένα πρόγραμμα που έχει σχεδιαστεί για να κλέβει προσωπικά δεδομένα ή να ελέγχει απομακρυσμένα τον έλεγχο με επακόλουθη χρήση του υπολογιστή, για παράδειγμα, σε επιθέσεις DDos.
Δεν υπάρχει σαφής διάκριση μεταξύ ιών από το είδος της δράσης τους. Στις περισσότερες περιπτώσεις, ένας ιός σημαίνει οποιονδήποτε κώδικα που εκτελεί κακόβουλες ενέργειες χωρίς να το γνωρίζει ο χρήστης. Ωστόσο, οι ιοί δεν περιλαμβάνουν προγράμματα που, από τη μία πλευρά, εκδίδουν συνεχώς διαφημιστικά μηνύματα ή ανακατευθύνουν τον χρήστη σε συγκεκριμένους ιστότοπους και, από την άλλη πλευρά, δεν μπορούν να εκκινηθούν χωρίς την άμεση συγκατάθεση του ίδιου του χρήστη. Τέτοια προγράμματα απαιτούν συνήθως επιβεβαίωση μιας άδειας χρήσης πριν από την εγκατάστασή τους, επομένως οι ενέργειές τους δεν μπορούν να θεωρηθούν κακόβουλες.