Einen Wert als Cookie zu übergeen ist für einen Bot-Programmierer nicht viel schwerer als Daten mit GET/POST zu übergeben. Aus der Sicht deiner Anwendung kommen auch Cookies vom Client und sind damit nicht besser oder schlechter als alle anderen vom Client kommenden Daten.
Ja, das stimmt schon. Aber es gibt verschiedene Sicherheitsfeatures, die auf dem Unterschied zwischen GET, POST und Cookie basieren. Zum Beispiel Authenticity-Tokens zum Verhindern von Cross-Site Request Forgery im Request-Body gesendet werden. Oder Session-IDs, die in HttpOnly-Cookies gesendet werden, um Session Hijacking bzw. Session Fixation zu vermeiden.
Daher würde ich grundsätzlich von Ansätzen wie Jochens abraten. Die Herkunft von Eingabedaten unsichtbar zu machen, selbst wenn sie überprüft und escapet werden, führt früher oder später zu fehlerhaftem oder unsicherem Code.
Mathias