Mam dwie subdomeny content
i www
w domenie example.com
. Treść z content.example.com
jest prezentowana w www.example.com
przez element iframe.Implikacje dla bezpieczeństwa dotyczące ustawiania document.domain w treści iframed
Ponieważ zawartość content.example.com
potrzeb przekazać www.example.com
mam ustawione document.domain="example.com"
a także ustawić allow-scripts
i allow-same-origin
na iframe.
Obawiam się, że jeśli użytkownicy mogą przesyłać treści wyświetlane w elemencie iframe, może to być przydatne, tj. Wysłać zawartość plików cookie do domeny zdalnej w celu przejęcia sesji lub innych exploitów związanych z bezpieczeństwem.
Ustawiłem inną domenę, www.example2.com
i ustawiłem żądanie AJAX w treści iframed na content.example.com
, aby przetestować moją teorię i wysyłam document.cookie
do domeny zdalnej. Powoduje to, że ciasteczka _ga
są wysyłane do domeny zdalnej. W domenie zdalnej zezwoliłem na header('Access-Control-Allow-Origin: *')
, więc nie powoduje żadnych problemów.
Dlaczego wysyłane są tylko pliki cookie _ga? Mam wiele innych plików cookie na tej samej domenie i ścieżce co pliki _ga, ale nie są one wysyłane. Czy robią to inne zagrożenia bezpieczeństwa? Najlepiej, jeśli będzie to możliwe tylko w przypadku komunikacji między content.example.com
a www.example.com
. Wygląda na to, że głównie to robi, z wyjątkiem plików cookie Google Analytics, co może oznaczać, że inni też będą w stanie to zrobić.
_I mieć dwie domeny, 'content.example .com' i 'www.example.com'_' content.example.com' to poddomena 'example.com' –
Tak, przepraszam, mam dwie subdomeny. – Rudiger
, aby uzyskać dostęp do pliku cookie domeny z subdomeny, nie musisz iść zbyt ciężko. To jest łatwe zadanie: –