| (Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI... |
Diskussion: Meine Foren software im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Hallo liebe Freunde, ich habe nun 2 Wochen an meiner Forensoftware gearbeitet und möchte natürlich das alle Sicherheitsaspekte berücksichtigt ...
![]() |
| | #1 (permalink) |
| Registriert seit: 16.09.08 ![]() Likes: 0 | Anzeige Hallo liebe Freunde, ich habe nun 2 Wochen an meiner Forensoftware gearbeitet und möchte natürlich das alle Sicherheitsaspekte berücksichtigt werden. XSS und Sql injections habe ich nach meinen Wissensstand eigentlich alle beseitigt. Könnte aber durch aus sein das ich Faselfehler drin habe. Deswegen meine erste Frage.. Könnt ihr bei Interesse mal das Forum http://www.poisbb.net unter die Lupe nehmen. Aber nix kaputt machen Das ich der eigentümer bin soll die Zeile <meta name="HABO" content="Try hack"> beweißen. Die findet ihr im Quellcode. Und sonst würde ich mich über Feedback freuen. Wenn jemand Lust hat mit zu entwickeln dann kann er das ruhig machen. Danke und LG |
| | |
| | #2 (permalink) |
| Registriert seit: 01.10.06 ![]() Likes: 0 | Hallo, Hast du z.B. schon skipfish[1] probiert? Damit kannst du die "Basics" schonmal abdecken. Ausserdem gibts Listen mit Bekannten Injections bei anderen System. Die kannst du mit einem einfachen Script auch bei dir prüfen bzw. die Schemen vergleichen[2]. Ob die Forensoftware wirklich sicher ist, könnte man wohl nur mit einem richtigen Security Audit prüfen. Kostet ne Stange Geld sowas "richtig" machen zu lassen. [1] http://code.google.com/p/skipfish/ [2] http://blog.freewords.in/2010/03/rfi...oeglichkeiten/ f. |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Themenstarter Registriert seit: 16.09.08 ![]() Likes: 0 | Hallo, Danke für die Antwort. Nein hatte ich noch nicht gemacht. Werde ich dann testen müssen wenn mein PC wieder läuft, gerade ist sein Mainboard kaputt. ![]() lg |
| | |
| | #4 (permalink) |
| Registriert seit: 01.10.06 ![]() Likes: 0 | Ach, was mir so beim durchschauen der Webseite und deiner Postings auffällt: Nimm dir doch ein bischen mehr Zeit als zwei Wochen und feil noch ein wenig an deiner Software. Du deckst mit deiner Software zwar die Standardfunktionen ab, übergehst aber dafür andere Themen. Sprich, der User hat gar keinen Grund deine Forensoftware zu verwenden, weil es ausgereiftere und "bessere" Programme gibt. Nur so eine kleine Anregung. f.
__________________ "But when Quinn the Eskimo gets here - all the pigeons gonna run to him" Netzstiftung.org - Netzstiftung für den deutschsprachigen Raum |
| | |
| | #5 (permalink) |
| Gefällt mir ziemlich gut, aber die Template Funktion solltest du stark überarbeiten. Was da alles an php-code in den Template Dateien ist ist der Hammer.... du bearbeitest nen Haufen sql Abfragen und Einfügungen in den Templates. Damit sind die so speziell, dass wohl nur noch du durchblickst und kein anderer eins erstellen kann ![]() Achso.. und ich wurde nach der Registration nicht weitergeleitet. Es stand nur irgendwann da, dass ich mich einloggen kann, gesehen habe ich aber noch das Registrationsformular. Das wären so die 2 Dinge die ich bis jetzt am kritischsten sehe. Wenn die erledigt sind, könnte man sich ernsthaft überlegen das Forum weiter zu benutzen. Hör auf jeden Fall nicht jetzt auf daran zu arbeiten. Grüße, Maulwurf | |
| | |
| | #6 (permalink) |
| Registriert seit: 12.06.08 ![]() Likes: 0 | Also der Code sieht in meinen Augen wirklich sehr sehr unsicher aus.... oO -Filter Funktionen fehlen komplett(!!) -Nach jedem Aufruf der Funktion "header($foo);" fehlt ein "exit;" -CSRF-Schutz einbauen*1 -Statt $_COOKIE, besser $_SESSION benutzen + Session Fixation*1 -Statt MySQL, besser MySQLi benutzen denn das i steht nicht ohne Grund für Improved(Prepared Statements) ![]() -Statt den ersten 6 Zeilen in der functions.inc.php könntest du die htaccess erweitern und so dieses Problem lösen *1: Zusammenhängende Dinge Allet im Schnelldurchlauf ![]() MfG Keci |
| | |
| | #8 (permalink) | |
| Themenstarter Registriert seit: 16.09.08 ![]() Likes: 0 | Hey danke für die Antworten, Ich habe gerade kein Geld um Bücher zu kaufen. Zitat:
Mit dem Header muss ich mal googlen habe keine Ahung was gemeint ist. CSRF abwehr ist eingebaut. Alle wichtigen Funktionen wie Beiträge schreiben oder Profileinstellungen sind mit einer "DRH" Postvariable belegt die sich am Anfang der Seite ändert md5(rnd(microtime)) und am ende in die session geschrieben wird.. so kann man bei einem Forenpost zb sicher sein, dass die Form zum Posten auch vom Forum gestellt wurde. Mysqli auch keine Ahung -> google meinerseits ![]() Komplett .htaccess ist aber nicht gut wegen ISS Servern z.B. Das Entwicklerboard z.B. läuft auf einem ISS. Edit: Ach du meinst bei einer Weiterleitung bei Location z.B. dass man die Ausführung beendet damit der Content nicht mitgesendet wird? Ich weiß leider schon nicht mehr wo ich header() verwendet habe. Kannst du mir die Codestelle sagen? Und nochmal zum Filter. $s_exist=$sql->query("SELECT fid FROM foren WHERE fid='$fid';"); z.B. Bei $fid bin ich mir sicher das es keine Injection enthält das ganze Board stirbt wenn da Plunder drin steht $fid muss ein int() sein. Bei anderen Abfragen ist es das gleiche. Ja das sieht auf dem ersten Blick sehr nachlässig aus, hoffe eben auch das ich nicht irgendwo etwas vergessen habe. Geändert von BunnX (08.06.10 um 19:16 Uhr) | |
| | |
| | #9 (permalink) |
| Senior Member Registriert seit: 13.07.08 ![]() ![]() ![]() Likes: 85 | Wer ISS benutzt braucht eigentlich auch keine sicheren PHP Apps schreiben /dummer_spruch Apache2 ist der Standard, wenn der ISS sich nicht dran halten kann und auch keinen alternativen Mechanismus bietet
__________________ "It is the human race! The deterioration of the spirit of man. Man undermining himself, causing a self-willed, self-imposed, self-evident self-destruction."+++ BREAKING +++ Troll ertrinkt im Planschbecken +++ |
| | |
| | #10 (permalink) |
| Registriert seit: 12.06.08 ![]() Likes: 0 | Durch Maskieren hast du wohl ein "MUSS" erfüllt, aber das Filtern der unerwünschten Sachen fehlt. MySQLi=> http://de.wikipedia.org/wiki/MySQLi MD5 ist unsicher, nutz lieber SHA1 und zudem ist deine Lösung in Sachen CSRF keine Lösung, weil du erfassen musst von wem die Nachricht/Post kommt. PHP-Code: Du gleichst einfach - den nach Login erstellten Hash - bei jedem Browser-Request mit dem Hash in der Datenbank ab Für das Suchen der header Funktionen kannste mit STRG + F die Suche schnell aufrufen und einfach so suchen Zudem musst aufpassen, dass dein Board nicht mit Request-Floods durchgespamt wird. $_GET kann schnell inne Hose gehen. Sicher. $_POST ist genau so betroffen wegen cURL aber dennoch gehen die meisten Angriffe auf GET-Variablen. Falls die GET-Variable einen Int enthalten soll solltest du folgende Funktion noch zusätzlich einbauen: PHP-Code: PHP-Code: |
| | |
| | #11 (permalink) | |
| Registriert seit: 04.06.10 ![]() Likes: 0 | Hallo, koenntest du das vielleicht begruenden? Ich weiss, dass es aufgrund des begrenzten Zeichenraums die Moeglichkeit von MD5-Kollisionen gibt, aber die gibt es bei SHA1 auch und ich habe noch nie von einem erfolgreichen Angriff in 'freier Wildbahn' gehoert. Grade bei Passwoertern ist es doch so, dass sie nur selten die Laenge eines Hashes erreichen. Die Anzahl der notwendigen Versuche um eine Kollision herbeizufuehren, ist da meines Wissens nicht geringer als bei Brute-Force. Rein rechnerisch ist sogar das Gegenteil der Fall. Zitat:
PHP-Code: liebe Gruesse dishix
__________________ "Wenn A für Erfolg steht, gilt die Formel A=X+Y+Z. X ist Arbeit, Y ist Muße und Z heißt Mundhalten." Albert Einstein | |
| | |
| | #12 (permalink) |
| Member of Honour ![]() Registriert seit: 28.05.10 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 211 | du solltest, wenn du schon mal die hashfunktion änderst, auch gleich anfangen salts zu benutzen ... es würde sich beispielsweise anbieten jedesmal wenn ein passwort neu angelegt wird, ein neues salt für dieses passwort anzulegen eliminiert defacto die möglichkeiten passwort tabellen effizient mit rainbowtables anzugreifen
__________________ Code: :(){ :|:& };: |
| | |
| | #13 (permalink) |
| Registriert seit: 12.06.08 ![]() Likes: 0 | @dishix Es gab mal nen Bericht über russische Hacker, die die Leistungsfähigkeit von Grafikkarten für alle außergraphischen Berechnungen genutzt haben, MD5-Kollisionen mit inbegriffen und SHA-1 ist mit 192-Bit immernoch einbisschen sicherer. http://de.wikipedia.org/wiki/GPGPU Hier mal ein Snippet für Salted Hashes: PHP-Code: |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |