Rhyming words have similar ending sounds. In this case:
Firm has the ending sound /ɜːm/
Worm also has the ending sound /ɜːm/
Therefore, "worm" is the word that rhymes with "firm."