'I love you': How a badly-coded computer virus caused billions in damage and exposed vulnerabilities which remain 20 years on