they spread becasue they arent built in assembly. they are built in many languages. and many are made to exploit a program vulnerablitity to they communicate with that program or the service that program uses rather than the processor it self. so then the program talks tot the processor.