Is he tired? Mine is like this sometimes and it's ten times worse if he's tired. We try to talk about not taking cross feelings out on other people and so on (as he'll as often call me names when something has gone wrong that's completely unrelated to me, as when I've said no to something). Sometimes we remove him from the situation in the same way we would do with hitting.
The bottom line is I think sometimes mine gets very tired and/or cross and doesn't know how to deal with it without lashing out verbally at whoever's nearest (usually me), and he's got a few new 'insults' from school and that's what comes out, but the core issue at the moment (this obviously won't necessarily be the same when older) is the tiredness/anger rather than him being insulting or pushing me for the sake of it.
I try very very hard not to show it winds me up. Sometimes I've said "I'm going to ignore that as you seem to be very cross and saying some rude things you don't really mean", and then I sweep off and do something in another room, and he'll say "no don't ignore it" in quite a normal voice! Getting angry about it causes unholy escalation, so I try to avoid that. If it's to a third party (e.g. sibling), not me, then I remove him if he doesn't stop pretty instantly; when it's to me I try more to show that it just doesn't do anything, along with trying to help him get a handle on his cross feelings without resorting to that. Part of me feels no insult should be 'got away with', but another part of me thinks he's learning to handle his feelings and taking things out on the nearest person by calling them silly names is to 'learning to handle feelings and relate to people' what falling off a lot at first is to 'learning to ride a bike', and so every 'fall' doesn't need to be punished as such.
Time will tell I suppose...