Water is what you need.
What you have to do after firing corrosive ammo is dissolve the salts that are in the primer residue. Those salts absorb water out of the air and that's what causes rusting. Normal gun cleaners don't work very well, if at all, for corrosive ammo residue.
Most people don't like pouring cold water on their guns. The alternatives that I've seen used or used myself in the past are:
1) Use hot water to rinse all the parts with gas fouling off.
Pros are it's cheap and it's pretty easy to get to.
Con is I don't have a teakettle at the range and my guns will start rusting by the time I make it home.
2) Ballistol mixed 1:10 with water.
Pros are it works very well to get the residue off and it still protects the steel. Ballistol is a pretty good lube and protectant also when used unmixed. Ballistol also smells halfway decent.
Con: It's another thing to buy.
3) Soapy water. This works because the soap cuts thru the grease and the water washes away the salts. Available as a premade solution like Mpro7 (which I've used a lot) or Simple Green Extreem (Simple Green w/o the nasty odor and coloring).
Pros: Can be used anywhere, at any temp above freezing. Also works great to remove old lube and carbon.
Cons: Mpro7 and Simple Green Extreem really do remove all the old lube, leaving behind unprotected steel. You must (MUST!) relube immediately after using this type of cleaner.
I'm on my 2nd case of corrosive Yugo M67 ball and have had 0 rusting problems since using methods 2 and 3. You can't (unless you live in a fricken desert) not clean you weapons the same day after using corrosive ammo. Chrome plating will only slow the rust down, it will not stop it. I have a Chinese SKS which is proof of that. BSW