Važno je napomenuti jednu sličnost s biološkim virusima: kao što genetička raznolikost u populaciji smanjuje mogućnost da jedna bolest izbriše cijelu tu populaciju, tako i raznolikost softverskih sustava na mreži ograničava destruktivni potencijal virusa.
Ovome se posebna pažnja pridodala 1990-ih kada je Microsoft stekao dominaciju na tržistu stolnih operativnih sustava i uredskog softvera. Korisnici Microsoftovog softvera (naročito mrežnog softvera kao što je Microsoft Outlook i Microsoft Internet Explorer) su posebice ranjivi na širenje virusa, osobito zbog toga što takav komplicirani softver neizbježno uključuje mnogo grešaka.
Integrirane aplikacije, aplikacije sa skriptnim jezicima s pristupom datotečnom sustavu (npr. Visual Basic Script i mrežne aplikacije) su također naročito ranjive.
Softver koji se dizajnira često uključuje sigurnosne mjere kako bi se spriječilo neovlašteno korištenje sistemskih resursa. Zbog toga mnogi virusi moraju iskorištavati softverske bugove u sustavu ili aplikaciji kako bi se proširili. Razvojne strategije softvera koje proizvode velike količine bugova općenito proizvode i potencijalne prilike za njihovo iskorištavanje.
Razvijanje softvera sa skrivenim kodom koji prakticira Microsoft i ostale komercijalne kompanije također predstavlja sigurnosnu slabost. Softver s otkrivenim kodom, kao što je npr. Linux, omogućuje korisnicima da pronađu i riješe sigurnosne probleme bez oslanjanja na jednog prodavača. Neki tvrde da autori komercijalnog softvera prakticiraju otkrivanje ranjivosti kako bi poboljšali te slabosti.