php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 24.07.2008, 21:32  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Zitat:
Zitat von nikosch77-new Beitrag anzeigen
Allenfalls kann ein Mapping verschiedene (Unter)Verzeichnisse bedienen.
Unterverzeichnisse kann man auch mit Filtern bedienen. Der / ist nicht unbedingt notwendig in der Filterliste. Ich sehe jedenfalls kein Problem mit
Zitat:
[^a-zA-Z0-9_ /]
Ob man ggf. noch auf doppelte // prüfen muss, weiß ich jetzt aber auch nicht aus dem Stehgreif. Was unter anderem an folgendem liegen kann:
ich bevorzuge definitiv auch den Whiteliste-Ansatz. Man muss die Whitelist ja nicht zwangsläufig per Hand erstellen (und ich denke, das ist es, was ElronMCBong nicht an diesem Ansatz mag). Das kann man erledigen lassen, wenn sich der Daten/Dateibestand ändert. Oder während des deployments. Oder ... entdecke die Möglichkeiten.

Geändert von David (24.07.2008 um 21:34 Uhr).
David ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 24.07.2008, 21:33  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Zitat:
Zitat von Flor1an Beitrag anzeigen
Ich verstehe noch nicht wo du das Problem in einer Whitelist und dem include_path siehst.
Wen und welches Problem meinst Du?
David ist offline  
Alt 24.07.2008, 21:39  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.988
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

Etwas komplizierter wirds wohl sein.
- Punkte im Scriptnamen sollten erlaubt sein (aber eben keine punkte in Folge, bzw. von // umschlossene)
- führendes / zeigt u.U. auf Server Root
...
Man sieht, mit Filtern muß man echt wissen, was man tut UND verzichtet auf folgende Vorteile
- unterschiedliche Subdirectories
- Ausschluß von existierenden Dateien (exakte Zuordnung)
- Aliasangaben, die auf dasselbe Script zeigen
__________________
--
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 24.07.2008, 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

Kommt drauf an was man möchte. Will man nach dem MVC Pattern eine Controller Datei einbinden geht man davon aus dass diese alle in einem Ordner liegen. Dann kann man auf Unterordner verzichten. (Mal abgesehen davon dass man vielleicht eigene Module erstellen möchte die dann ihre eigenen Controller haben aber das ist ein anderes Thema, das steht dem jetzigen nicht im Wege.) Genauso braucht man in diesem Fall keine Punkte.

Anhand einer Whiteliste arbeite ich ungerne. Es ist doch deutlich einfacher sich eine Möglichkeit zu suchen die es erlaubt dynamisch die PHP Dateien einzubinden.
Flor1an ist offline  
Alt 24.07.2008, 21:54  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Zitat:
Zitat von nikosch77-new Beitrag anzeigen
Etwas komplizierter wirds wohl sein.
- Punkte im Scriptnamen sollten erlaubt sein (aber eben keine punkte in Folge, bzw. von // umschlossene)
Warum zwangsläufig? Ich kann gut auf Punkte verzichten.
Zitat:
Zitat von nikosch77-new Beitrag anzeigen
- führendes / zeigt u.U. auf Server Root
Deshalb wird ja auch ein Pfad vorangestellt, zum Beispiel per dirname(__FILE__)
Zitat:
Zitat von nikosch77-new Beitrag anzeigen
- unterschiedliche Subdirectories
Geht meiner Meinung nach einfach durch Zulassen des Slashes. Nehme ich solange an, bis mir jemand ein Gegenbeispiel unter den gegebenen Bedingungen zeigt.
Zitat:
Zitat von nikosch77-new Beitrag anzeigen
- Ausschluß von existierenden Dateien (exakte Zuordnung)
Das ist richtig. Mit der Beschränkung kann ich allerdings leben. Es gibt zugängliche Dateien und unzugängliche, nach aller Möglichkeit sollten die in getrennten Verzeichniszweigen aufgehoben werden.
Zitat:
Zitat von nikosch77-new Beitrag anzeigen
- Aliasangaben, die auf dasselbe Script zeigen
Das ist auch richtig. Aber auch damit könnte ich im Zweifel leben. Meine Verben (REST) sind so eindeutig, dass dafür kein Alias benötigt wird

Aber alles berechtigte Einwände. Ich glaube zwar, man kann sie umschiffen. Aber zu welchem Preis? Mindestens ewige Wachsamkeit. Und dafür ist mir der "Gewinn" bei einem Filter zu gering.
Du bekommst Deine Whitelist sozusagen kostenlos dazu, wenn Du eine Sitemap erstellen lässt oder einen Mechanismus zum Prüfen der Konsistenz der Site einbaust (schon beim Entwickeln sinnvoll, im Zweifel stellt Dir die IDE das zur Verfügung).
David ist offline  
Alt 24.07.2008, 23:47  
Neuer Benutzer
 
Registriert seit: 24.07.2008
Beiträge: 8
PHP-Kenntnisse:
Fortgeschritten
ElronMCBong befindet sich auf einem aufstrebenden Ast
Standard

Man man man ich hab hier ja richtig was ins Rollen gebracht^^
jetzt weiß ich auch woher die Leute ihre ganzen BeitragsZahlen her haben

Mal im Ernst, ich hatte damals rumgespielt und ausprobiert und war mir verdammt sicher das ich sowas
PHP-Code:
 include("ordner/../../example.php"); 
überhaupt gar nicht verwenden lässt. Ich bin mir auch verdammt Sicher das auf dem Damaligen Webserver sowas gar nicht möglich war und er mir gleich mit Schutzverletzung irgendwas entgegen kam - wenn ihr versteht was ich meine.


Mir ist das ehrlich gesagt absolut neu aber gut zu wissen das es geht ^^
Erstmal die Sicherheitslücke ausmerzen.
Ach und zum Array's anlegen, ich werd`s dann so machen das ich alle Files in einem Ordner liegen habe er die Dateien einliesst und automatisch die Array's anlegt. Anderes, also manuelles anlegen der Array's wäre mir zu zeitraubend.

Gut Nächtle
ElronMCBong ist offline  
Alt 25.07.2008, 00:56  
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

Das mit dem Array anlegen durch auslesen des Ordners ist ne gute Idee. Vielleicht solltest du das Array allerdings cachen, ich weiß nicht wie aufwendig es ist jedes mal einen Ordner einzulesen.

Und sowas mit ../../xxx ist durchaus möglich. Mag sein dass bei deinem Webhoster PHP nicht die Rechte hatte auf das Filesystem über deinem Ordner zuzugreifen, aber das muss nicht immer so sein!
Flor1an ist offline  
Alt 25.07.2008, 02:31  
Neuer Benutzer
 
Registriert seit: 24.07.2008
Beiträge: 8
PHP-Kenntnisse:
Fortgeschritten
ElronMCBong befindet sich auf einem aufstrebenden Ast
Standard

das was ich meinte war mehr so gemeint:

Ordner/Ordner2/../

das würde ja bedeuten das ich in einen Ordner gehe und wieder zurück und genau das war nicht möglich sondern nur eine Ebene zurück oder in einen Unterordner...
ElronMCBong ist offline  
Alt 25.07.2008, 08:52  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Dann wird dort open_basedir gesetzt gewesen sein. Ansonsten spricht nichts gegen Ordner/Ordner2/../Ordner3/../../../Ordern99/quark.png
David 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
JS: Einführung - Javascript im Schichtenmodell nikosch Tutorials 4 11.04.2009 17:06
Rekursive Funktion bricht ab... duras666 PHP Tipps 2008 9 28.04.2008 11:36
gpc_quotes funktion: verbesserungsvorschläge? Promaetheus PHP Tipps 2007 10 12.08.2007 19:29
Komplexe Funktion: +Übersichtlichkeit, -Performance Jacks Rache PHP Tipps 2006 3 07.06.2006 14:22
Array in rekursiver Funktion auslesen Gumfuzi PHP Tipps 2007 17 15.11.2005 12:01
PHP-GTK Tutorial Beitragsarchiv 9 02.11.2005 21:07
Rückgabewert einer rekrusiven Funktion PHP-Fortgeschrittene 7 06.10.2005 18:44
(schnellere) Funktion zum Zusammenfassen von CSS PHP-Fortgeschrittene 21 08.08.2005 16:47
In einer Funktion auf eine Funktion der Klasse zugreifen phpbeginner PHP Tipps 2005-2 2 28.07.2005 00:30
Funktion in einer Funktion aufrufen? PHP Tipps 2005-2 11 14.06.2005 15:14
[Erledigt] Array-Übergabe in Funktion PHP Tipps 2005 1 08.05.2005 21:05
[Erledigt] Wie kann ich beliebig viele Werte an eine Funktion übergeben PHP Tipps 2005 11 25.01.2005 10:44
Funktion() anwendung -bitte um Hilfe PHP Tipps 2004-2 17 08.12.2004 11:58
[Erledigt] sql syntax error in funktion, kann aber nix finden :( PHP Tipps 2004 10 20.07.2004 19:19
[Erledigt] Referenz auf Funktion übergeben PHP-Fortgeschrittene 7 20.07.2004 09:51


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:45 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