Sin estas "razones de seguridad", toda la Internet como la conoce no podría existir. De hecho, voy a salir en una extremidad y decir que es ninguna regla que es más importante para la seguridad de Internet que la política de origen mismo.
Ninguna página web podría tener autenticación sin estas reglas, google, cuentas de correo web, SO, nada de esto podría existir. Sería como si tuviera XSS en cada dominio. Puede realizar un XHR contra gmail.com y leer el correo electrónico de cualquier persona. Los tokens CSRF no funcionarían porque podría leer cualquier página y falsificar la solicitud.
No existe una política de origen único, pero las reglas están claramente establecidas en el Google Browser Security handbook. Estos son muy lógicos, y las reglas para las diversas plataformas son muy similares, porque así es como debe funcionar en Internet.
Al hacer un Access-Control-Allow-Origin: *
usted está renunciando a los derechos que le otorgan los navegadores web para esa página. Esto tiene principales implicaciones de seguridad. No podrá protegerse del CSRF utilizando tokens. Un capthca podría mitigar este problema, también verificando que el referer también podría ayudar (estará en blanco si el origen es HTTPS). Deberías leer el CSRF prevention cheat sheet.
Sí, ahora me siento más seguro. +1 y gracias. :) –