2012-06-18 5 views
5

Ich frage das, wie ich eine kleine Website für eine ziemlich isolierte Gruppe von Menschen (nicht mehr als 80) pflegen. Es hat derzeit eine einfache Login-Funktion (E-Mail, Passwort) und die Daten, die "geschützt" sind, sind lediglich Kontaktinformationen für unsere Mitglieder (Telefon, Adresse, E-Mail). Die Website ist in PHP geschrieben und verwendet My SQL.Wie viel Sicherheit wird wirklich auf einer "privaten" Website benötigt?

In den letzten Tagen habe ich die Foren und andere Seiten über die Sicherheit von Websites gelesen, da ich sie auf unserer Website verbessern möchte. Momentan besteht die Sicherheit aus SQL-Injection-Schutz und MD5-Hash-Passwörtern, die in einer Datenbank gespeichert sind. Das fühlt sich etwas unzulänglich an, aber ich habe auch das Gefühl, dass es einfach zu weit ist. Ich meine, es sind nicht gerade nukleare Startcodes hier, aber Datenmenschen fühlen sich normalerweise etwas unbehaglich, um sie online anzuzeigen. Die Website selbst wird von einem ziemlich bekannten Webhost gehostet.

Die einzige Drohung, die ich jetzt sehen kann, sind Scherzkekse, die über den Aufstellungsort stolpern und einige ihrer zuhause gemachten Konvektion versuchen?

Also dachte ich, irgendwo in der Mitte würde ausreichen. Wie

  • SQL-Spritzschutz (verbessern, wenn erforderlich)
  • Stärkerer Hash-Verfahren mit Salz
  • XSS Schutz
  • DDoS-Schutz
  • SSL beim Zugriff auf das Mitglied Bereich

Was denken Sie mehr erfahrene Leute da draußen?

Update: Ich möchte hinzufügen, dass ich alles selbst mache und es gibt kein Budget für den Kauf von ausgefallenen Kryptotechniken oder die Einstellung von professionellen Programmierern.

+0

_Die Seite selbst wird von einem ziemlich bekannten Webhost gehostet _... nicht mehr privat! –

+0

Verwenden Sie bcrypt, um Ihre Kennwörter zu hashen. Es ist nicht nur für Websites mit hoher Sicherheit geeignet, und die Verwendung kann genauso einfach sein wie die Verwendung eines MD5-Hashs. Es gibt Bibliotheken wie [phpass] (http://www.openwall.com/phpass/), und wenn Sie verstehen möchten, wie es funktioniert, können Sie diesen [Artikel] lesen (http://www.martinstickli.ch/ php/php.html # ssl_bcrypt). – martinstoeckli

+0

Ihre kritischen sind SQL Injection Schutz, minimale Passwort Komplexität für Benutzerkonten, ein starkes Passwort auf Ihrem SSH/admin Konto (oder deaktivieren Sie Passwort Auth vollständig und verwenden Sie Public-Key-Authentifizierung für das Admin-Konto), Remote File Inclusion Protection, XSS Schutz und Benutzerisolation für Ihren httpd-Prozess. Gut zu haben wäre SSL für Post-Auth-Inhalte. In diesem Fall sind ein verbessertes Kennwort-Hashing in der Datenbank, DDoS-Schutz und CSRF-Schutz nicht erforderlich. Es ist nichts falsch daran, diese zu haben, aber wenn Sie keinen gezielten Angreifer haben, werden Sie sie nicht brauchen. – aroth

Antwort

3

Um die Sicherheit für SQL-Injection zu verbessern, müssen Sie sehen:

Es würde Ihnen sagen, PDO, parametrisierte Abfragen zu verwenden.

Audit Ihrer Website in Bezug auf die Sicherheit mit:

    Um über allgemeine Sicherheitsfragen finden Sie in diesem Beitrag, die eine Menge deckt zu lernen

  • OWASP

Und

phpSec ist eine Open-Source-PHP-Sicherheitsbibliothek, die Pflege der gemeinsamen Sicherheitsaufgaben ein Web-Entwickler Gesichter nimmt.

+0

Müsste das installiert werden? Ursache Ich habe keinen Zugriff auf den Server, da es ein freigegebener Host ist. – Sandokan

+0

@Sandokan: Ja würde es aber mach dir keine Sorgen darüber. Lesen Sie den Sicherheitsleitfaden und kodieren Sie dann unter Berücksichtigung dieser Punkte. – Sarfraz

1

CSRF Verwundbarkeit Schutz für Ihre Sicherheit Liste hinzufügen

Verwandte Themen