Vulnerability-Check-Software für PHP?
Michi
- php
0 Alexander Brock
Hallo PHP-Gemeinde,
gibt es relativ einfach zugängliche Software zur Überprüfung von PHP-Skripten auf Sicherheitslücken bzw. Versions-Konflikt-Codestellen?
Kann man zwar natürlich auch alles selber checken, dabei aber auch leicht mal was übersehen. ;)
Gruß Michi
Hallo Freunde des gehobenen Forumsgenusses,
gibt es relativ einfach zugängliche Software zur Überprüfung von PHP-Skripten auf Sicherheitslücken [...]
Wie soll das funktionieren? Ich glaube kaum, dass es möglich ist
eine solche Software zu schreiben. Ich würde da einen anderen Ansatz
verwenden, von dem ich gelesen habe und den ich sehr interessant finde:
Man schreibt für jede Methode / Klasse einer Software eine
Software, die genau diese Methode / Klasse testet, und zwar
_bevor_ man die eigentliche Software schreibt.
Ich hab das allerdings noch nie selbst ausprobiert.
Gruß
Alexander Brock
Jou, das nennt sich denn test-driven-development (TDD). Ich versuche mir das gerade als Arbeitsweise anzueignen, und der erste Eindruck, den ich davon habe, ist ein sehr guter. Man entwickelt besseren Code, denke ich, und hat während der Entwicklung eines Projekts ein ständig wachsendes Netz von automatisierten Tests, die a) ein gewisses "Vertrauen" in den Code gewährleisten und b) sehr schnell zur Problembehebung führen.
Es gibt dazu ein Buch von Kent Beck (Test-Driven-Development By Example), welches ich nur empfehlen kann.
Allerdings ist die Software dann trotzdem nur so "sicher", wie es die Tests abdecken, die man vorher definiert.
Gruß,
Feng
Hi Alexander,
gibt es relativ einfach zugängliche Software zur Überprüfung von PHP-Skripten auf Sicherheitslücken [...]
Wie soll das funktionieren? Ich glaube kaum, dass es möglich ist
eine solche Software zu schreiben.
Über eine Kombination aus Standard-Brutforce-Attacken und einem heuristischen Verfahren (ähnlich wie bei Virenscannern), z.B. wobei dem ganzen natürlich Grenzen aufgrund der riesigen kombinatorischen Möglichkeiten gesetzt sind - naja, WIE das genau funktionieren soll, kann ich natürlich jetzt auch nicht genau sagen, aber grundsätzlich sehe ich - außer Menge Arbeit natürlich - nichts, was gegen die Umsetzbarkeit so einer Idee spricht. ;)
Aber vergessene und zugleich riskante Variableninitialisierungen sollten sich doch z.B. erkennen lassen. Na ok, aber wenns so was nicht gibt, kann man auch nichts machen (außer, so was selber anzupeilen - is vielleicht mal eine Überlegung wert...?). ;)
Gruß Michi
Hallo Freunde des gehobenen Forumsgenusses,
Aber vergessene und zugleich riskante Variableninitialisierungen sollten sich doch z.B. erkennen lassen.
Wenn man vergisst, Variablen zu initialisieren bekommt man Notices
um die Ohren gehauen (ich fände es allerdings besser, sofort abzubrechen wie in Java).
Gruß
Alexander Brock