Look at rustproofing rather than undercoating, assuming that by saying undercoating you mean the rubberized stuff. It will eventually develop cracks or holes that will allow the slush to get behind it and then it traps the moisture against the metal. There are several products on the market, one good one is Krown:
https://www.krown.com/en/