Tengo una página web que proporcionará un objeto JSON de un api-token si se proporciona una cookie de sesión válida de un usuario registrado. Si un atacante obtiene este api-token, ahora tiene el control total sobre ese usuario hasta sus permisos dados. La solicitud para generar el api-token se realiza a través de una solicitud GET de AJAX en el mismo dominio.
Por defecto, CORS está bloqueando las solicitudes entre sitios. He leído que no debería confiar en CORS solo para la protección CSRF. Pero los mecanismos de protección de CSRF no parecen aplicarse aquí porque es una solicitud GET que proporciona datos confidenciales.
Entonces, si un atacante obtiene otra cookie de usuarios (es decir, XSS de otro dominio para obtener una cookie de usuarios) y quiero evitar que puedan recuperar el api-token de esa persona utilizando dicha cookie robada. ¿Cuáles son mis opciones? ¿Debo tomar precauciones adicionales para proteger este api-token dado que es un mecanismo de autenticación?