Antwort
 
Themen-Optionen
Alt 09.12.2007, 16:07 Nach oben    #1
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.200
Standard PHP-Sicherheit

PHP-Sicherheit.
PHP/MySQL-Webanwendungen sicher programmieren

von Christopher Kunz, Peter Prochaska, Stefan Esser

ISBN: 3898644502



Ich habe dieses Buch gelesen und möchte es für euch hier vorstellen.


Das Buch wendet sich an die 2 Gruppen von PHP-usern:
1) Fortgeschrittene und Profis mit Wartungsarbeiten
2) Systemadministratoren für Web- und Datenbankserver

Es wird in der Einleitung auf die Problematik eingegangen, dass sich Sicherheit als Admin einem Manager leider nicht immer gut verkaufen lässt, trotzdem aber wichtig ist!

Da absolute Sicherheit ohnehin nicht gegeben ist, und letztlich das schwächste Glied in der Kette entscheidend ist, wird in dem Buch neben der reinen PHP-Anwendung auch auf eine sichere Konfiguration der Umgebung - mit apache - eingegangen, denn PHP-Skripte können Sicherheitsgefährdene Einstellungen nicht kompensieren.

Angefangen wird mit der Erklärung, wie ein Angriff auf eine Seite vorbereitet wird. Apache, aber auch die anderen webserver reagieren unterschiedlich auf Anfragen und lassen sich daher meist sogar bis auf die Version bestimmen. Dazu kommt, dass sie meist ohnehin sehr gesprächig sind und Auskünfte über installierte Module usw. geben, was einen Angriff erleichtert.

In diesem Buch wird auf die verschiedenen Punkte eingegangen und Tipps gegeben, wie man diese Informationsweitergabe weitgehend unterbinden kann, um es einem Angreifer schwierig zu machen Informationen zu sammeln.

Um als Angreifer an Informationen zu kommen bedarf es einer Schritte. Welche das sein könnten wird erläutert. Selbstverständlich gehört dazu das Misstrauen von POST, GET und COOKIE dazu und es wird erläutert warum das so ist; nämlich, dass sie über das Protokoll HTTP manipulierbar sind.

Eingegangen wird ferner auch, wie sich verhindern lässt, dass sich Kontaktformulare zum SPAM-Versand missbrauchen lassen können.

Die Vorteile vom whitelist-Ansatz, gegenüber dem blacklist-Ansatz werden erläutert.

Im dritten Kapitel geht es um Parametermanipulation, der am meisten angewandten Form zum Aufspüren von Sicherheitslücken.

Zitat:
Zitat von Buch Seite 74
Parametermanipulationen können große Schöden, bis hin zum Datenverlust, verursachen. [...] Es gibt kaum Angriffsmöglichkeiten, die ohne Parametermanipulation funktionieren.
Wie genau? Das steht in Kapitel 3, aber auch an diversen Stellen hier im Forum.

Im vierten Kapitel behandeln die Autoren das Thema XSS. Anhand vieler Beispiele werden die Möglichkeiten erläutert, um mittels Xss an Daten zu gelangen, aber auch wie man seine Anwendungen davor schützen kann.

Im fünften Kapitel wird die Thematik SQL-Injektion behandelt.

Im darauf folgenden Kapitel wird die Autorisierung und Authentifizierung behandelt, dazu zählen Themen wie Challenge-Response oder captchas.

Im siebten Kapitel geht es um Angriffsmöglichkeiten auf sessions, sowohl mit bruteforceing als auch hijacking oder als Lösungsmöglichkeit session-fixation.
Das Fazit ist ernüchternd:
Zitat:
Zitat von Buch Seite 174
Das Session-System von PHP kann mit einfachen Mitteln sicherer gemacht werden, ein kompleter Schutz ist aber nahezu unmöglich.
Im recht kurzen achten Kapitelgeht es um upload-Formulare, speziell um Dateien, wenn solche hochgeladen werden dürfen, bzw. welche Gegenmaßnahmen man anwenden kann, damit dadurch keine Lücke entsteht.

Das neunte Kapitel beschäftigt sich mit der seit PHP 5.2.0 eingeführten Möglichkeit der Filterung mit ext/filter. Diese Möglichkeit ist recht neu und auf jeden Fall einen Blick wert!
Da diese API noch recht neu ist, so sollten zu dieser Thematik auf jeden Fall online-Kommentare gelesen werden.

Im zehnten Kapitel merkt man, dass die Auflage nicht mehr ganz so aktuell ist, denn hier wird noch davon ausgegangen, dass es noch kein Ende von PHP4 gibt, aber inhaltlich tut es der dort getätigten Aussage damit keinen Abbruch, so dass es in keinster Weise tragisch ist.
Amüsanterweise ist der Abschnitt mit Bleiben Sie aktuell! überschrieben.
Darüber hinaus geht es in dem mit PHP-intern genannten Kapitel aber auch noch um sicherheitsrelevante Einstellungen in der php.ini.
Für ein als CGI-PHP installiertes PHP werden einige externe Ansätze wie suPHP, FastCGI und weitere genannt und erklärt.
Freundlicherweise wird im Fazit des Kapitels aufgelistet, welche php.ini-Einstellungen die Autoren empfehlen, so dass diese Angaben nochmals an einer Stelle gesammelt sind.
Einen großen Teil in dem Kapitel nimmt das suhosin (südkoreanisch: Schutzengel) ein. Stefan Esser, einer der drei Autoren, ist an diesem maßgeblich beteiligt.
Der Ansatz, wie suhosin in die PHP-Installation eingreift wird ausführlich erklärt.
Natürlich wird auch auf die Installation und die Konfiguration eingegangen.

Im letzten der 12 Kapitel wird noch auf webserver-Filter wie mod_security und mod_parmguard eingegangen.

Im Anhang folgt noch eine chekcliste für sichere Webapplikationen, wichtige Optionen in der php.ini und eine Liste aller Schwachstellen mit Gefahrenpotential-Bewertung.



Mein persönliches Fazit zu diesem Buch?
Für jeden, der PHP-Anwendungen nicht nur funktionsfähig sondern auch sicher programmieren möchte ist es ein Muss!

Die 36,- Euro haben sich gelohnt. Das ist 'mit Sicherheit' ein Buch, in welches ich noch häufiger hineinschauen werde!
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.12.2007, 17:33 Nach oben    #2
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.471
Standard

Herzlichen Dank für den Bericht.
Das wollte ich mir eventuell zu Weihnachten schenken.
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 08.04.2008, 10:47 Nach oben    #3
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.200
Standard

Ich habe mich im obigen post auf die 2te Auflage bezogen.

Die dritte Auflage ist nun in Arbeit.
http://www.php-sicherheit.de/archive...in-Arbeit.html
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


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

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 aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Sicherheit und Sicherheitslücken java² PHP-Programmierung 4 27.09.2006 13:04
[Rezension] PHP 5 Kochbuch Artemis Literatur 2 07.09.2006 19:15
PHP 5.1.5, PHP 4.4.4 und PHP 5.2.0 RC2 veröffentlicht Ben Nachrichten 2 01.09.2006 16:05
Security-Links Corvin Tutorials 2 29.11.2005 00:36
Neue PHP "release candidates": PHP 4.4.2 RC 1 und PHP 5.1 RC 6 Ben Nachrichten 1 21.11.2005 20:48


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:37 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

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