Does ASP.NET use a mechanism for disallowing manipulation of data between client and server?

If not, does it mean we should use SSL? What kind of attacks can SSL prevent?

If yes what is this mechanism?