php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.01.2010, 14:57  
Benutzer
 
Registriert seit: 13.01.2010
Beiträge: 47
PHP-Kenntnisse:
Anfänger
gombi befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Include statt Frames - Sicherheitsfarge

Hallo Alle zusammen!


Bin leider PHP Neuling und brauche etwas PHP für meine Page um keine Frames verwenden zu müssen.

Nun hab ich schon viel zu dem Thema gelesen, aber jetzt bin ich etwas verwirrt was die Sicherheit angeht.

Könnte mir bitte jemand nur kurz erklären ob ich das richtig verstehe?

Ich habe meine Seite in 3 Teile getrennt: index.php, navi.php und footer.php

Die index sieht etwa so aus:

PHP-Code:
<? include ("top.php"); ?>
<div id="inhalt">
                <div id="textbox">
        <h1 class="textbox">Bla, bla</h1>
            </div>
</div>
<? include ("footer.php"); ?>
Die Links in de navi.php verweisen direkt auf die php Seiten mit dem Inhalt.
Also so:
Code:
<a href="bla.php" class="link">Bla</a>
Wo bei ich dann in der bla.php nur den Inhalt des dev "inhalt" verändert habe.

Hab ich das nun richtig verstanden und ich muss mir hier keine Gedanken um die Sicherheit machen?

Hab in Zusammenhang mit include viel über Sicherheit gelesen. Es werden Abfragen gemacht ob die Datei existiert, zugelassene Dateien werden in ein array geschrieben....
Wann muss ich das machen?

Vielen Dank und schönen Tag!

Gombi
gombi ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 13.01.2010, 15:11  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

So wie du das machst ist es sicher.

Bei dir ist das ganze statisch. Heißt jeder include() ist fest, d.h. es wird immer die top.php oder footer.php eingebunden. Mit PHP kannst du das ganze aber auch dynamisch gestallten. Somit hast du nur noch eine index.php und welche Seite aufgerufen wird kann per Variable übergeben werden index.php?page=bla. Dabei wird dann in etwa sowas gemacht wie include($page.'.php');
Da kann man dann in der Variable $page natürlich beliebiges stehen und somit auch eine Datei eingebunden werden die nicht dafür gedacht wurde.

Da das bei dir nicht der Fall ist sollte es keine Probleme geben.
Flor1an ist offline  
Alt 13.01.2010, 15:12  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.990
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Includes sind nur dann problematisch, wenn die Pfade aus Variablen zusammengebaut werden. Dann besteht die Gefahr, dass diese Variablen manipuliert werden und bspw. über enthaltene ../ Pfade umgelenkt werden.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 13.01.2010, 17:02  
Erfahrener Benutzer
 
Registriert seit: 23.08.2009
Beiträge: 241
PHP-Kenntnisse:
Fortgeschritten
MasterD wird schon bald berühmt werden
MasterD eine Nachricht über ICQ schicken
Standard

NEGATIVBEISPIEL:
PHP-Code:
include($_GET['site']); <-- Niemals nie 
Es könnte sein, dass der Paramter site z.b./secure/.htacces heißt, so könnte man deinen par HTacces geschützten breich auslesen.
MasterD ist offline  
Alt 13.01.2010, 19:01  
Benutzer
 
Registriert seit: 13.01.2010
Beiträge: 47
PHP-Kenntnisse:
Anfänger
gombi befindet sich auf einem aufstrebenden Ast
Standard

Danke für die klare Antwort. Also werde ich das mal statisch machen. Meine Seite ist ja nicht sehr umfangreich.

Wenn ich das dynamisch machen will sollte das dann wohl etwa so aussehen, oder?

PHP-Code:
<?php
    
/*** the array of allowed pages ***/
    
$allowed_pages = array('index''contact''tutorials');

    
/*** check if file name is in array ***/
    
if(!in_array($_GET['filename']), $allowed_pages)
    {
        echo 
'File not found';
    }
    else
    {
        
/*** assign the file name ***/
        
$file $_GET['filename'];
        if(!
file_exists($file))
        {
            echo 
'File error';
        }
        else
        {
            
/*** include the file ***/
            
include $file;
        }
    }
?>
LG
Gombi
gombi ist offline  
Alt 13.01.2010, 19:48  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Ja so wäre das ok. Anhand der Whitelist kann keine andere Datei eingebunden werden. (Bei deinem include würde dann nur noch .php beim Dateinamen fehlen)
Flor1an ist offline  
Alt 13.01.2010, 20:06  
Benutzer
 
Registriert seit: 13.01.2010
Beiträge: 47
PHP-Kenntnisse:
Anfänger
gombi befindet sich auf einem aufstrebenden Ast
Standard

Vielen Dank!!

Kann mir noch jemand ein Forum für css Fragen empfehlen?
gombi ist offline  
Alt 13.01.2010, 20:07  
Erfahrener Benutzer
 
Registriert seit: 10.02.2009
Beiträge: 929
ragtek ist ein sehr geschätzer Menschragtek ist ein sehr geschätzer Menschragtek ist ein sehr geschätzer Menschragtek ist ein sehr geschätzer Mensch
Standard

XHTMLforum - Ein Forum für XHTML und CSS
ragtek ist offline  
Alt 13.01.2010, 21:42  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Nanana Konkurrenz ...

Wir haben hier auch ein Forum zu HTML/CSS/JS. Da kannst du gerne auch deine Frage stellen. Wir beantworten hier eigentlich alles was mit PHP, HTML, CSS oder JavaScript zu tun hat.
Flor1an ist offline  
Alt 13.01.2010, 21:55  
Benutzer
 
Registriert seit: 13.01.2010
Beiträge: 47
PHP-Kenntnisse:
Anfänger
gombi befindet sich auf einem aufstrebenden Ast
Standard

Ok, danke!
gombi ist offline  
 


Themen-Optionen
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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] include mit automatischer Pfadauswahl Benshy PHP Tipps 2009 7 16.11.2009 22:47
Indexdatei/Template include von PHP DarkOverride PHP Tipps 2009 4 12.06.2009 14:18
Fehler beim kompilieren von php 5.2.9 malio Server, Hosting und Workstations 11 05.06.2009 18:40
Problem mit Include matze228 PHP Tipps 2009 3 01.02.2009 15:02
Formulare funktionieren nicht post kommt nicht an ronaldl PHP Tipps 2008 17 27.12.2008 07:46
include isoliert ausführen – Lösungsansatz gesucht veit PHP-Fortgeschrittene 8 09.04.2008 09:26
hinter include wird eine 1 angezeigt |~Râdîant~| PHP Tipps 2008 8 19.09.2007 13:52
include Dateien wieder ausängen o.Ä. netti PHP Tipps 2007 8 17.12.2006 15:14
include problem Canni PHP Tipps 2006 26 14.11.2006 14:24
php chat ohne Frames PHP-Fortgeschrittene 3 26.08.2005 17:01
Include und PHP/SQL Problem ?! PHP Tipps 2005-2 3 10.07.2005 16:04
Frames oder keine Frames? PHP Tipps 2005 1 19.05.2005 12:28
include statt frames BEGINNER-L PHP Tipps 2005 4 21.03.2005 13:21
Frames HTML, Usability und Barrierefreiheit 5 09.02.2005 17:09
Fenstergrößen festlegen bei Tabellen statt Frames PHP Tipps 2004 3 03.08.2004 15:32

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
html frames div, php include statt frames, php include sicherheit, include statt frames, php statt frames, php include frame, php include frames, include statt frame, frames sicherheit, frames php statt, php include statt frames tutorial, div statt frames, php-includes statt frames, include frame, frame include, php include sicher, div statt frames php, php include sicherjeit, frames include, div statt frame

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:56 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum