Both are correct and there's no difference. They show the common mechanism in English of putting two nouns together and using the first noun as if it were an adjective. Compare 'teacup', 'sunglasses' and 'coffee table'. In some cases, where the compound is used very frequently, it becomes a new word in its own right (as in the first two examples).
In 'volunteer work' and 'volunteering work', both 'volunteer' and 'volunteering' are effectively nouns used as adjectives to describe the kind of work. Technically, 'volunteering' is a gerund, or verbal noun, but gerunds can be used where a noun is expected. Compare "I'm looking forward to the party" and "I'm looking forward to seeing you"; in this case, the gerund 'seeing' can be used after the preposition 'to', that is, where a noun phrase is expected.