note 109174 deleted from function.spliti by tularis
| From: | tularis@php.net | Date: | Tue, 26 Jun 2012 12:25:36 +0000 |
| Subject: | note 109174 deleted from function.spliti by tularis | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-188810@lists.php.net to get a copy of this message | ||
Note Submitter: deutschland dot php at gmail dot com
----
* Vorteile von Sessions:
- Aufwendig errechnete Daten speichern
- Benutzerführung über bestimmte Reihenfolgen
- Zwischenspeichern von Daten, bevor sie in die Datenbank kommen (Warenkorb)
* Nachteile von Sessions:
- Verteilung von Serverlast mit Sessions erschwert
- Server merkt nicht, ob eine Session beendet ist
- Lesezeichen von Seiten mit Sessions kËnnen Probleme bringen
* Session diebstahl nur durch raten möglich
* Sessions sinnvoll absichern:
- Zusätzliche IP/ID
- Keine kritischen Infos in Sessions sichern
* Erkennen von Manipulation
- Zu viele oder zu wenige Form-Variablen
- Falsche Ãbertragung (GET statt POST)
- Session ID kein Standard
* Reaktion auf Manipulation
Sollte:
- Verarbeitung abbrechen aber korrekte verarbeitung vortäuschen
- Explizite Warnung ausgeben
- Weiterleitung auf Fehlerseite
Nicht:
- Dienst einstellen
- Ungefilterte Fehlermeldung
- "Wegen Wartungsarbeiten nicht verfügbar"
* SQL-Injection
- Verhinderung:
- Mit PDO binden
- Datenbanknutzer nur limitierte Rechte (NIE root nutzer!)
- Beispiel:
- Erwarteter Aufruf: http://webserver/cgi-bin/find.cgi?ID=42
- SQL-Injektion: http://webserver/cgi-bin/find.cgi?ID=42;UPDATE+USER+SET+TYPE='admin'+WHERE+ID=23
* Benutzerkennung
- Sorgsam mit umgehen
- Schema wie Vorname.Nachname vermeiden
- Keine E-Mail Adressen
* Enumerationsangriff
- Erkennungsmerkmale:
- Viele zugriffe von der gleichen IP
- Zugriffszahlen überschreiten bestimmte Anzahl (Script!)
- Zugriffsparameter werden nach einem regelmäÃigen Muster variiert
- AbwehrmaÃnahmen:
- Captcha
- Zeitverzögerung des Zugriffs (exponentielle zeitsteigerung)
* Benutzer Authentifizierung
- mittels HTTP-Protokoll über Webserver (Liste mit User/PW)
- per PHP-Skript ($_SERVER['PHP_AUTH_USER'],...)
- per HTML-Formular und PHP-Skript mit PW/ID Feld
* SSL
- Ziele:
- Vertraulichkeit
- Integrität
- Authentifizierung
- Gültigkeit des Zertifikat:
- Zertifikat muss von Zertifizierungsstelle validiert werden
- Ablauflaufdatum
* Eigenschaften von Webanwendungen
- Plattformunabhängig
- On the Fly and need deployment
- Lebenslange Entwicklung
- Ererignisgesteuerter Client
* Ebenenmodell Sicherheitskonzept
0. Netzwerk/Host (absicherung des netzwerks/host)
1. System (absicherung der systemsoftware)
2. Technologie (richtige wahl der technologie(https/http))
3. Implementierung (keine programmierfehler(sql-inj.))
4. Logik (absicherung von prozessen(sichere pw erzwingen))
5. Semantik (täuschungsschutz (phishing schutz))
* Informations-Bekanntgabe verhindern
- Keine Kommentare in Code