Old English wurm, variant of wyrm "serpent, dragon," also in later Old English "earthworm," from Proto-Germanic *wurmiz (cf. Old Saxon, Old High German, German wurm, Old Frisian and Dutch worm, Old Norse ormr, Gothic waurms "serpent, worm"), from PIE *wrmi-/*wrmo- "worm" (cf. Greek rhomos, Latin vermis "worm," Old Russian vermie "insects," Lithuanian varmas "insect, gnat"), possibly from root *wer- (3) "turn" (see versus).
The ancient category of these was much more extensive than the modern, scientific, one and included serpents, scorpions, maggots, and the supposed causes of certain diseases. For substitution of -o- for -u-, see come. As an insult meaning "abject, miserable person" it dates from Old English.