Thomas J.S.: // SCRIPT Ist das eine Sicherheitfrage (<script src="*.php) ?

Hallo,

Der eigentliche Anlass für die Frage sind meine Erfahrungen aus dem Thread https://forum.selfhtml.org/?t=87740&m=522693

Folgendes:
gegeben ist

http://www.unet.univie.ac.at/~a9105535/test/http_xml.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/xsl" href="http_xml.xsl"?>
<data>
 <titel>Test für XML über HTTP</titel>
 <datei url="http://www.meta-text.net/test/javascript.xml" />
</data>

--------------
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes" encoding="iso-8859-1" />
 <xsl:template match="/data">
  <html>
   <head>
    <title><xsl:value-of select="titel" /></title>
   </head>
   <body>
    <h1><xsl:value-of select="titel" /></h1>
    <hr />
    <xsl:for-each select="datei">
       <xsl:apply-templates select="document(@url)/test" />
     </xsl:for-each>
    <hr />
   </body>
  </html>
 </xsl:template>

<xsl:template match="text">
  <p style="font-family:Tahoma; font-size:14pt">
   <xsl:apply-templates />
  </p>
 </xsl:template>

<xsl:template match="zeit">
  <i style="color:red">
   <xsl:value-of select="." />
  </i>
 </xsl:template>

</xsl:stylesheet>

die "verlinkte andere XML-Datei (http://www.meta-text.net/test/javascript.xml)

<?xml version="1.0" encoding="iso-8859-1"?>
<test>
 <text>
  Was du <zeit>heute</zeit> kannst besorgen, das verschiebe nicht auf <zeit>morgen</zeit>.
 </text>
</test>

Egal in Welchem Browser ich bei mir die (oben) verlinkte XML aufrufe wird der Zugriff verweigert, z.B. in Mozilla so:
-------------
Security Error: Content at http://www.unet.univie.ac.at/~a9105535/test/http_xml.xml may not load data from http://www.meta-text.net/test/javascript.xml.
-------------

Frage 1: Sind meine Sicherheiteinstellungen "zu" streng?

Aber auch über JavaScript läßt sich ein Zugriff  von einem server auf dem anderen nicht realisieren:
http://www.unet.univie.ac.at/~a9105535/test/http_xml.html (Quellcode in der Seite)

Frage 2: Sind _meine_ Sicherheiteinstellungen "zu" streng?

Was hat das ganze mit dem Titel der Posting zu tun?
Ich habe nach einigen Herumprobieren im google nach «reader feedreader javascript rss» u.a. folgende Seite gefunden: http://jade.mcli.dist.maricopa.edu/feed/rss2js2003.html

So ist z.B. http://www.unet.univie.ac.at/~a9105535/test/http_rss.html entstanden mit dem Code:
<script language="JavaScript" src="http://jade.mcli.dist.maricopa.edu/feed/rss2js.php?src=http://www.mcli.dist.maricopa.edu/mlx/feed/new10.xml"></script>

Frage 3: Wieso darf ein PHP-Script ausgeführt werden?
 - a) ich weiss dass language deprecated ist (fügt man ein type="text/jaascript" ein, wird nichts mehr geladen, aber es geht auch nur mit dem src Attribut).

- b) ich weiss auch was die W3C zu <script> sagt.

Trotzdem:
im ersten Fall wird der Zugriff verweigert im zweiten wird ein "falscher" Script ausgeführt.

Oder sehe ich das zu eng?

Grüße
Thomas

  1. Hi,

    Frage 1: Sind meine Sicherheiteinstellungen "zu" streng?

    Nein. Same Origin Policy

    Frage 2: Sind _meine_ Sicherheiteinstellungen "zu" streng?

    Nein. Same Origin Policy

    <script language="JavaScript" src="http://jade.mcli.dist.maricopa.edu/feed/rss2js.php?src=http://www.mcli.dist.maricopa.edu/mlx/feed/new10.xml"></script>
    Frage 3: Wieso darf ein PHP-Script ausgeführt werden?

    Der Browser ruft eine URL auf. Ob das nun ein PHP-Script, ein C++ Programm oder eine Textdatei ist, weiß der Browser nicht - er fordert schlicht und einfach die Ressource an.

    • a) ich weiss dass language deprecated ist (fügt man ein type="text/jaascript" ein, wird nichts mehr geladen, aber es geht auch nur mit dem src Attribut).

    Auch dann, wenn man dem Type noch ein "v" spendiert?
    Welchen content-type

    im ersten Fall wird der Zugriff verweigert im zweiten wird ein "falscher" Script ausgeführt.

    Welchen zweiten Fall meinst Du jetzt? Den, der zu Frage 3 gehört oder den von Frage 2?

    cu,
    Andreas

    --
    MudGuard? Siehe http://www.Mud-Guard.de/
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Hallo,

      Der Browser ruft eine URL auf. Ob das nun ein PHP-Script, ein C++ Programm oder eine Textdatei ist, weiß der Browser nicht - er fordert schlicht und einfach die Ressource an.

      Das macht im Falle von Javascript auch und führt dann normale Anweisungen aus eben wir document.write im php Script.

      • a) ich weiss dass language deprecated ist (fügt man ein type="text/jaascript" ein, wird nichts mehr geladen, aber es geht auch nur mit dem src Attribut).

      Auch dann, wenn man dem Type noch ein "v" spendiert?
      Welchen content-type

      Opps ... dann geht, was ich dann noch schlimmer finde
      http://www.unet.univie.ac.at/~a9105535/test/http_rss2.html
      auch wenn man ein <META http-equiv="Content-Script-Type" content="text/javascript"> einfügt macht das nichts.
      Sogar eine valide XHTML Strickt seite mache das http://www.unet.univie.ac.at/~a9105535/test/http_rss3.html wo ich schon finde, dass javascript in diesem fall wirklich javascript (*.js) bedeuten sollte.

      na ja ...

      Grüße
      Thomas

      im ersten Fall wird der Zugriff verweigert im zweiten wird ein "falscher" Script ausgeführt.

      Welchen zweiten Fall meinst Du jetzt? Den, der zu Frage 3 gehört oder den von Frage 2?

      cu,
      Andreas