I've been thinking for years about writing a virus that patches the vulnerability it used to spread as it goes.