Same-Origin-Policy

Same-Origin-Policy

Die Same-Origin-Policy (SOP) ist ein Sicherheitskonzept, das es JavaScript und ActionScript nur dann erlaubt, auf Objekte einer anderen Webseite zuzugreifen, wenn sie aus derselben Quelle (Origin) stammen. Sie stellt ein wesentliches Sicherheitselement in allen modernen Browsern und Webanwendungen zum Schutz vor Angriffen dar.

Inhaltsverzeichnis

Geschichte

Die Same-Origin-Policy wurde 1996 von Netscape mit JavaScript in Netscape Navigator 2.0 eingeführt.[1] Sie wurde von anderen Herstellern in deren JavaScript-Implementierungen bzw. proprietären Skriptsprachen (zum Beispiel JScript oder ActionScript) übernommen.

Hintergrund

Den Hintergrund für die große Bedeutung der SOP bildet im Wesentlichen die Kombination aus zwei Tatsachen:

  • Skriptsprachen im Browser haben über das Document Object Model (DOM) direkten Zugriff auf die gesamte Kommunikation zwischen Browser und Web-Server. Dies beinhaltet sowohl das Auslesen als auch die Manipulation von Daten und betrifft neben dem Empfangen auch das Senden von Daten.
  • Das Vertrauensverhältnis zwischen Browser (bzw. Anwender) und verschiedenen Webseiten kann extrem unterschiedlich sein.

Daraus ergibt sich die Anforderung, dass keine Informationen aus einem Kontext (zum Beispiel der Verbindung des Browsers zu der Seite einer Bank) von einem Skript aus einem anderen Kontext zugreifbar oder manipulierbar sein darf. Um dies zu erreichen, wird beim Zugriff eines Skriptes auf ein Objekt einer Webseite die Herkunft (origin) von beiden verglichen.

Vergleich der Herkunft (origin)

Als Herkunft wird dabei die Kombination aus Protokoll (zum Beispiel http oder https), Domain und Port in der URL definiert. Nur wenn alle drei gleich sind, gilt die SOP als erfüllt und der Skript-Zugriff ist möglich.

Beispiele

Ein in der Datei http://example.com/dir/page.html eingebettetes Skript versucht, auf ein Element in den folgenden Seiten zuzugreifen:

http://example.com/dir2/another.html
http://example.com/dir/inner/another.html
die SOP ist erfüllt
http://www.example.com/dir/another.html
die SOP ist nicht erfüllt, andere Domain
http://example.com:89/dir/another.html
die SOP ist nicht erfüllt, anderer Port
https://example.com/dir/another.html
die SOP ist nicht erfüllt, andereres Protokoll

Eine Ausnahme bilden Subdomains: Über eine spezielle DOM-Eigenschaft kann zum Beispiel ein Skript aus der Domain www.example.com den Kontext auf eine übergeordnete Domain wie zum Beispiel example.com setzen und damit auf Objekte dieser Domain zugreifen.[2]

Grenzen und Probleme

Die Grenzen der Same-Origin-Policy sind in zweierlei Hinsicht von Bedeutung:

  • Die SOP ist als Sicherheitsmechanismus nicht ausreichend wirksam. Viele aktuelle Angriffsmethoden wie DNS Rebinding und Cross-Site Request Forgery zielen erfolgreich darauf ab, die SOP zu umgehen.
  • Andererseits sind die von der SOP gezogenen Grenzen in vielen Fällen unerwünscht. Insbesondere mit dem Aufkommen von Ajax-basierenden Anwendungen und Mashups gibt es legitimerweise den Wunsch, die Grenzen der SOP zu überschreiten.

Einzelnachweise

  1. Netscape Browser Archive. Abgerufen am 12. Oktober 2008.
  2. Mozilla: Same origin policy for JavaScript. Abgerufen am 12. Oktober 2008.

Quellen


Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Same origin policy — In computing, the same origin policy is an important security measure for client side scripting (mostly JavaScript). The policy dates from Netscape Navigator 2.0, with necessary coverage fixes in Navigator 2.01 and Navigator 2.02. It prevents a… …   Wikipedia

  • Same Origin Policy — Zu diesem Stichwort gibt es keinen Artikel. Möglicherweise ist „Same Origin Policy“ gemeint. Kategorie: Wikipedia:Falschschreibung …   Deutsch Wikipedia

  • Cross-origin resource sharing — Эту статью следует викифицировать. Пожалуйста, оформите её согласно правилам оформления статей …   Википедия

  • Same-sex marriage in New Mexico — Same sex marriages are not performed in the state of New Mexico, which also does not provide civil unions or domestic partnerships. New Mexico is one of three states (the others being New York and Rhode Island)… …   Wikipedia

  • Cross-Origin Resource Sharing — (CORS) is a web browser technology specification, which defines ways for a web server to allow its resources be accessed by a web page from a different domain.[1] Such access would otherwise be forbidden by the same origin policy. Contents 1… …   Wikipedia

  • Origin of the Romanians — History of Romania This article is part of a series Prehistory …   Wikipedia

  • Same-sex marriage — Legal recognition of same sex relationships Marriage Argentina Belgium Canada Iceland …   Wikipedia

  • Origin of Latter Day Saint polygamy — Mormonism and polygamy Members of Joseph F. Smith s family, including his sons and daughters, as well as their spouses and children, circa 1900 …   Wikipedia

  • Origin and development of the Qur'an — The study of the origins and development of the Qur’an can be said to fall into two major schools of thought, the first being a traditionalist Muslim view and the later being a non traditionalist view.According to the traditionalist view, the Qur …   Wikipedia

  • Origin of the Gupta dynasty — The history of the Gupta dynasty (Sanskrit: गुप्त राजवंश) begins with its founding by Sri Gupta around 240 CE, although dates are not well established. The empire covered most of Northern India and Eastern Pakistan, parts of Gujarat and Rajasthan …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”