Carbonic acid is a neutral molecule. However, carbonic acid is unstable and often dissociates into a proton (which is donated to a base) and bicarbonate, which has a charge of -1. Loss of the other proton yields carbonate, which has a charge of -2.
I'll let somebody else tackle the 'attack' question. I'd say you will get the applied answer from the hydrolysis of water and the pK of H2CO3 and of HCO3 minus. Water also contains CO2 that is simply dissolved
In CO2, carbon has partially positive charge by bound oxygen. The oxygen in H2O is the partial negative charge. Thus, oxygen has a chance to attack carbon and carbonic aicd is formed. However, since oxygen is not a good nucleophile, this reaction occurs at high pressures and low temperatures. It is the same principle that you store carbonated drinks in the refrigerator.