Page 1 of 1

fopen (URL file-access)

Posted: 2005-04-12 20:35
by chrisphp
Hallo,

ich hab ein Script welches auf eine externe Seite (Script) ladet via fopen. Allerdings bekomme ich die Meldung das URL file-access in der Konfiguration deaktiviert ist.

Ergibt sich eine Sicherheitslücke daraus, wenn ich URL file-access auf On stelle?

Wenn ja, welche?

Grüße,

Christoph

Re: fopen (URL file-access)

Posted: 2005-04-12 20:50
by bungeebug
Naja die Lücke ist einfach erklärt ... man kann ohne Schwierigkeiten eine "ungefährliche" php Datei hocheladen, die dann gefährlichen Code nachladen kann. Das ist besonders wichtig, bei Scripten die man nicht selber geschrieben hat und deswegen nicht genau über den Code vescheid weis ...

Re: fopen (URL file-access)

Posted: 2005-04-12 20:51
by chrisphp
was würde es dann für alternativen geben via php anstatt von fopen für die anforderung einer externern script-datei?

Re: fopen (URL file-access)

Posted: 2005-04-12 20:54
by bungeebug
dreh das ganze einfach um ... wieso willst du unbedingt eine fremde Seite nachladen? Gibt es keine Möglcihkeit das Script so zu ändern, dass eine passende API geschrieben wird ... wenn die nicht stimmt gibts nen Fehler, wenn die Seite ersetzt wird gibts ne Katastrophe.

Re: fopen (URL file-access)

Posted: 2005-04-12 20:56
by chrisphp
Naja, das ganze ist ein Gateway über welches SMS versandt werden. Und deshalb hab ich nicht die Rechte das zu ändern ;-)

E-Mail Gateway kommt nicht in Frage -> Viel zu langsam

Re: fopen (URL file-access)

Posted: 2005-04-12 20:59
by chrisphp
bzw... das ist ja eine HTTP/API... nur halt auf einem fremden Server. Und die soll ja auch unbemerkt im Hintergrund geladen werden...

Re: fopen (URL file-access)

Posted: 2005-04-12 22:20
by oxygen
Versteh ich nicht. Normal würde man doch einfache den Inhalt der SMS per HTTP POST an den externen Server übertragen. Wozu braucht man da fopen?

Re: fopen (URL file-access)

Posted: 2005-04-12 22:41
by wgot
Hallo,
øxygen wrote:Versteh ich nicht. Normal würde man doch einfache den Inhalt der SMS per HTTP POST an den externen Server übertragen. Wozu braucht man da fopen?
<Vermutung>
die Bestätigungsseite des SMS-Dienstes soll nicht angezeigt sondern von fopen "verschluckt" werden bzw ausgewertet um daraus eine eigene zu machen.
</Vermutung>

Gruß, Wolfgang

Re: fopen (URL file-access)

Posted: 2005-04-12 23:17
by outofbound
google.

Stichworte:

XML-RPC
SOAP

Das ganze am besten noch kryptografisch abgesichert.
(Authenticated SOAP services).

Alternativ: fsockopen probieren

Gruss,

Out

Re: fopen (URL file-access)

Posted: 2005-04-13 12:24
by Joe User
Hmm, wie wäre es mit einem kleinen bash-Script als fopen-Ersatz?

Code: Select all

#!/bin/bash

if [ $# = 0 ]; then
  echo "Usage: http-get <URL>" >&2
  exit 1
fi
URL=${1##http://} &&
SERVER=${URL%%/*} &&
FULLFILENAME=${URL#$SERVER} &&
FILENAME=${FULLFILENAME##*/}
echo -n "Fetching $SERVER$FULLFILENAME... "
(echo -e "GET $FULLFILENAME HTTP/0.9rnrn" 1>&3 &
cat 0<&3) 3<> /dev/tcp/$SERVER/80 | (
  read i
  while [ x"$(echo $i | tr -d 'r')" != "x" ]
  do
    read i
  done
  cat
) >$FILENAME
echo "done."

Re: fopen (URL file-access)

Posted: 2005-04-13 13:17
by antondollmaier
alternativ:

curl?


den output musst du ja nicht anzeigen nach dem versenden ...

Re: fopen (URL file-access)

Posted: 2005-04-13 14:10
by chrisphp
Nun, hab jetzt eine include-Datei geschrieben die sowohl mit fopen als auch mit CURL arbeitet. Je nachdem was funktioniert.

Auf dem Testserver hab ich jetzt mal url access auf on gesetzt in der konfiguration. für die finale lösung werde ich dann mit sicherheit auf curl umstellen.