How do you handle explosive knockback on enemies?

Hello all,

I'm currently trying to implement knockback for some basic enemies in a game. Think knockback from explosive weapons. The current approach is to add a rigidbody to the enemy but that leads to unexpected behaviour like the enemy starting to spin out of control or the navmeshagent to not look in the right direction anymore when chasing the player after being knocked back.

Setting the angular drag higher also seems more like a hack and is also not very predictable in its behavior.
The player also only has a CharacterController component and adding an extra rigidbody and enabling/disabling that also seems very unintuitive and error prone.

So what is a good way of handling knockback from explosions and such?