php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Scripts > BRAINSTORMING PHP/SQL/HTML/JS/CSS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


BRAINSTORMING PHP/SQL/HTML/JS/CSS Ihr habt eine Idee, aber keinen genauen Ansatz? Diskutiert mit anderen Usern des Forums über eure Gedankengänge um evtl. hilfreiche Ideen zu bekommen!
Normale Fragen bitte weiterhin in die entsprechenden Foren!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 05-07-2015, 12:53
codehacker
 Registrierter Benutzer
Links : Onlinestatus : codehacker ist offline
Registriert seit: Jul 2015
Beiträge: 2
codehacker befindet sich auf einem aufstrebenden Ast
Standard Aus Sicherheitsgründen als erstes Browserzeile mit regex überprüfen?

Hallo.
Bin noch neu in PHP und bin mir bei Folgendem nicht ganz sicher:

Ist es eine kluge Idee, wenn man als aller Erstes alles, was in der Browserzeile nach der Basis-Webadresse kommt, per $_SERVER['SCRIPT_NAME'] abfängt und mit preg_match überprüft, dass nur Buchstaben, Zahlen, Unterstriche, Bindestriche, Punkte und der Slash enthalten sind?

Ich würde gerne, falls nichts dagegen spricht, grundsätzlich als Erstes die index-Datei aufrufen, die das überprüft.
Und falls nur diese Zeichen vorkommen, wird der Pfad intern aufgeschlüsselt.

Ist das sicherheitstechnisch gut?

Oder müsste das Ganze in die htaccess-Datei passieren?

Grüße, codehacker
Mit Zitat antworten
  #2 (permalink)  
Alt 05-07-2015, 20:11
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.578
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Ich sehe das nicht als Frage der Sicherheit, sondern als Frage der Sinnhaftigkeit. Kann die Anwendung etwas damit anfangen, wenn andere Zeichen als die genannten enthalten sind? Wenn nein, dann hast du doch eh schon eine Antwort auf die Frage. Entweder ein 404 Not Found oder ein 400 Bad Request an den Client zurück liefern.

Die Web-Adresse findest du übrigens in $_SERVER['REQUEST_URI'] und nicht in $_SERVER['SCRIPT_NAME'].
Mit Zitat antworten
  #3 (permalink)  
Alt 06-07-2015, 13:59
Benutzerbild von fireweasel fireweasel
 Registrierter Benutzer
Links : Onlinestatus : fireweasel ist offline
Registriert seit: Sep 2008
Ort: At home
Beiträge: 851
fireweasel wird schon bald berühmt werdenfireweasel wird schon bald berühmt werden
fireweasel eine Nachricht über AIM schicken fireweasel eine Nachricht über Yahoo! schicken
Standard

Zitat:
Zitat von codehacker Beitrag anzeigen
Hallo.
Ist es eine kluge Idee, wenn man als aller Erstes alles, was in der Browserzeile nach der Basis-Webadresse kommt, per $_SERVER['SCRIPT_NAME'] abfängt und mit preg_match überprüft, dass nur Buchstaben, Zahlen, Unterstriche, Bindestriche, Punkte und der Slash enthalten sind?
Nein. Das meiste, was du in $_SERVER findest, ist als Nutzer-Eingabe zu betrachten. Nur bei Weiterverarbeitung dieser Werte ist zu prüfen, ob sie im aufgerufenen "Kontext" mehr tun, als nur toter Text zu sein. Dann hat die jeweilige verarbeitende Funktion die kritischen Bestandteile entsprechend umzuwandeln (mit htmlspecialchars(), rawurlencode(), PDO::quote() e.t.c.).

Irgendetwas "bösartig Ausschauendes" ohne konkreten Verdacht "wegzulöschen", bringt nichts.

Stellt sich noch die Frage, was du unter "Basis-Webadresse" verstehst (URL-Bestandteile haben festgelegte Namen): Nach dem Host-Namen kann ein Port kommen (beginnt mit ":"), danach ein Pfad (darf ";" und "=" als Parameter-Trenner enthalten) und Queries dürfen "?", "&", "=" und ";" als Trenn- und "%" als Escaping-Zeichen enthalten. So manches Server-Script verarbeitet diese Teile.

Zitat:
Ich würde gerne, falls nichts dagegen spricht, grundsätzlich als Erstes die index-Datei aufrufen, die das überprüft.
Ja, dafür gibts mod_rewrite (konfigurierbar per ".htaccess").
Zitat:
Und falls nur diese Zeichen vorkommen, wird der Pfad intern aufgeschlüsselt.
In einer URL kommen grundsätzlich nur die Zeichen vor, die da erlaubt sind. So lange sie als URL betrachtet wird, macht da nichts Probleme.
Zitat:
Oder müsste das Ganze in die htaccess-Datei passieren?
Warum muss etwas passieren? Dein PHP-(Index-)Script nimmt sich die Bestandteile, die es braucht und konvertiert sie entsprechend, falls es sie wieder zurückgibt. Den Rest kann es gefahrlos ignorieren.
Mit Zitat antworten
  #4 (permalink)  
Alt 07-07-2015, 15:05
codehacker
 Registrierter Benutzer
Links : Onlinestatus : codehacker ist offline
Registriert seit: Jul 2015
Beiträge: 2
codehacker befindet sich auf einem aufstrebenden Ast
Standard

Ich hatte in die htaccess-Datei reingeschrieben gehabt:
Code:
RewriteEngine On
RewriteCond %{REQUEST_URI} !=/index.php
RewriteRule ([\-./0-9A-Z_a-z]*)$ /index.php?verzeichnispfad=$1 [L,R=301]
um URL-Manipulation zu verhindern, aber gleichzeitig den Pfad weiterverarbeiten zu können. Sonst landet der User, wenn er auf einen Untermenüpunkt klickt, immer auf der Startseite.
Jetzt merke ich, dass es so viele verschiedene Angriffsmöglichkeiten gibt, XSS, SSI, SQL-Injections, ... da weiß ich echt nicht, wo ich anfangen soll, sichere, d.h. uncrackbare Webseiten zu erstellen.

Kriegt ihr das hin, uncrackbare Webseiten zu erstellen?
Wenn ich bedenke, dass eine Webseite auch noch responsive sein soll, leicht an Kundenwünsche anpassbar, SEO, wartbar, schnell, sichere Übertragung von Passwörtern, und weiß der Geier was es noch alles gibt.
Wie würdet ihr da vorgehen?
Mit Zitat antworten
  #5 (permalink)  
Alt 07-07-2015, 20:21
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.578
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von codehacker Beitrag anzeigen
Ich hatte in die htaccess-Datei reingeschrieben gehabt:
Code:
RewriteEngine On
RewriteCond %{REQUEST_URI} !=/index.php
RewriteRule ([\-./0-9A-Z_a-z]*)$ /index.php?verzeichnispfad=$1 [L,R=301]
Verwende besser sowas:
Code:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
Quelle: Leitfaden für die Rewrite Konfiguration - Empfohlene Projektstruktur für Zend Framework MVC Anwendungen - Zend Framework
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Zuletzt hochgeladenes Bild als erstes anzeigen? brokethalaw PHP Developer Forum 3 29-05-2012 12:19
RegEx-Pattern soll auf erstes Vorkommen reagieren Denis84 PHP Developer Forum 4 02-10-2008 13:35
Zuständige Kategorie im Selectfeld als erstes anzeigen? litterauspirna PHP Developer Forum 2 01-06-2008 13:06
RegEx um Nickname zu überprüfen konSumi PHP Developer Forum 7 05-01-2007 08:28
Neuetes als erstes garyx7de PHP Developer Forum 13 05-09-2003 20:30

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

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