Frage Warum ist es schlecht, ein schwaches mysql Benutzerpasswort zu haben?


Ich wurde mit einem Argument zu dem Thema "Sie brauchen kein starkes mysql-Benutzerpasswort, denn um es zu verwenden, hatten sie bereits Zugriff auf Ihren Server." Wir sprechen von einem 4-stelligen Passwort, das ein Standard-Englisch-Wörterbuch Wort auf einer Live-Business-Website ist.

Ohne die Antworten mit meinem eigenen Wissen und meiner Erfahrung zu beeinflussen, möchte ich ihnen einige Antworten von einer uneigennützigen Quelle von Drittanbietern zeigen. Möchte jemand auf dieses einspielen? Programmierung / praktische Antworten würden geschätzt werden.


23
2017-12-07 16:19


Ursprung


Klingt wie einer von diesen root:root Logins.
Vierstelliges Passwort? Mögen 1337? - Gumbo


Antworten:


Wer dieses Argument vorbringt, scheint zu sagen: "Wenn jemand einmal seinen Fuß in der Tür hat, könntest du ihm auch vollständigen Zugang gewähren". Durch diese Logik wird durch eine Firewall die Notwendigkeit für alle Kennwörter in Ihrem internen Netzwerk aufgehoben.

Sichere Kennwörter sind ein wichtiger Schritt, um den Schaden zu begrenzen, den Netzwerkeingriffe angerichtet haben. Es gibt keinen Grund, die Hände hochzulegen, nur weil ein kleiner Teil Ihres Netzwerks kompromittiert wurde.


39
2017-12-07 16:25



"Defense in Depth" ist das Motto des Tages. - Scott Pack
Beachten Sie, dass sie Zugang zu Ihrer PHP-Datei oder Konfigurationsdatei haben, wo Ihr Passwort gespeichert ist, sobald Sie Zugriff auf Ihr Dateisystem haben, es sei denn, Sie haben zusätzliche Sicherheit dafür eingerichtet, was auf gemeinsam genutzten Hosts normalerweise schwierig oder unmöglich ist . - Lotus Notes
@Lotus Angenommen, die PHP und MySQL Server sind die gleiche Maschine. - meagar
@Lotus Hinweise, Sie sollten den Root-Benutzer sowieso nicht in einer Anwendung verwenden. Eine gut gestaltete Anwendung ermöglicht nur den notwendigen Zugriff. Meistens beinhaltet dies den Zugriff auf die Daten, aber nicht immer alle Daten, und in einigen Fällen kann es sogar schreibgeschützt sein. - bradlis7
@Lotus Hinweise: Viele freigegebene Hosts verwenden suPHP, was die chmod-660 von sensiblen PHP-Dateien bietet. - webbiedave


Es geht wirklich auf die Idee zurück,Verteidigung in der Tiefe"Also könnte ein starkes Passwort sie verlangsamen, damit Sie sie entdecken und blockieren können. Ich mag die Analogie, einen einzigen Schlüssel für eine Gated Community zu haben, gegen einen Schlüssel an der Tür eines jeden Hauses.


14
2017-12-07 16:30



Ich habe darauf gewartet, dass jemand eine Schlüssel / Tür-Analogie vorlegt: | - meagar
Aber ein anderer Schlüssel für jede Tür in Ihrem Haus ist wahrscheinlich über Bord. Wo zeichnest du die Linie? - Dan
@Dan: aber in einer sicheren Einrichtung, würden Sie einen anderen Schlüssel für jede Tür erwarten, richtig? In einem Einfamilienhaus würden Sie nicht erwarten, dass alle Schlösser denselben Schlüssel benutzen. Aber in einem gemeinsamen Haus (wie bei Mitbewohnern) würde es von der Philosophie des Haushaltes abhängen: Entweder entsperrt Türen (vielleicht Türen alle mit dem gleichen Schlüssel), oder andere Schlüssel pro Mitbewohner. - wallyk
Schlösser und andere Sicherheitsvorrichtungen werden hauptsächlich für den Amateurdieb oder nur zur Abschreckung des Fachmannes verwendet. Eine weitere Abschreckung ist eine ausreichende Beleuchtung rund um das Haus und die Vermeidung regelmäßiger Routinen, die klar machen, wo und was Sie den ganzen Tag lang tun. Unterhalten Sie sich nie mit einem Fremden über Urlaubspläne und alarmieren Sie die örtliche Polizei, wenn Sie für längere Zeit nicht anwesend sind. Versuche immer, es so aussehen zu lassen, als wäre jemand zu Hause. Auch, um ... warten Sie, was war die Frage noch einmal? - Stephen Watkins


Es hängt viel davon ab, wie Ihr MySQL-Server eingerichtet ist. Wenn es nur Anfragen von zu Hause (127.0.0.1) ip akzeptiert, macht das es etwas sicherer.

Angesichts eines Szenarios, in dem Sie Remote-IP-Adressen zulassen, wird es zu einem viel größeren Deal.

Außerdem ist es immer gut, im Falle eines Eindringens eine starke Sicherheit zu haben - besser, dass sie so wenig wie möglich davonkommen.


6
2017-12-07 16:28





Gibt es eine Sperre für die Kasse im Rechnungswesen? Wenn ja warum? Hat das Gebäude keine physische Sicherheit?


6
2017-12-07 22:50





Sie benötigen keinen starken mysql-Benutzer   Passwort, weil, um es zu benutzen,   Sie hatten bereits Zugriff auf Ihre   Server

Dies trifft nicht zu, da mysql auch in einer cross-Netzwerk-Client-Server-Umgebung verwendet werden kann und standardmäßig nur Benutzer / Passwort benötigt, um Zugriff auf die Datenbank zu erhalten (natürlich mit geöffnetem Port 3306 und öffentlich sichtbarem Server) ).


5
2017-12-07 16:28





In der Tat kann es andersherum sein: Wenn sie Zugriff auf mysql haben, können sie möglicherweise auf das Server-Betriebssystem selbst zugreifen.

  1. MySQL LOAD_FILE und SELECT ... INTO OUTFILE-Abfragen ermöglichen mysql-Benutzern das Lesen und schreibe Dateien auf den Underlying Dateisystem. Jede Datei, die die mysql Benutzer hat auch Zugriff (ist Ihr MySQL läuft als root?). Wenn unter Linux / UNIX fragt SELECT einfach ab LOAD_FILE ('/ etc / passwd') und sehen Sie grinsen. Wenn mysqld als root ausgeführt wird kann SELECT versuchen LOAD_FILE ('/ etc / shadow') und beobachte deinen Sysadmin weinen.
  2. Unter Linux hat der mysql-Benutzer "root" oft das gleiche Passwort wie der "mysql" -Benutzer des Servers (derjenige, der mysqld ausführt). Dann, wenn dieses Passwort trivial ist (oder durch automatisierte Tools wie Medusa / Hydra gefunden werden kann), dann können Sie einfach SSH / Telnet direkt auf den Datenbankserver und herumalbern.

5
2017-12-07 16:59





Wenn jemand kommt Wurzel Zugriff auf Ihren Server, dann brauchen sie kein MySQL-Passwort. Wenn sie jedoch Apps nur als Nicht-Root- und Nicht-Web-Benutzer auf Ihrem Server ausführen können, kann ein starkes MySQL-Passwort Ihre Daten weiterhin speichern. Aber ja, die meisten Hacks kommen aus dem Internet, das bedeutet, dass der Hacker Zugang zu Ihrem Web-Account bekommt und somit das DB-Passwort aus PHP-Dateien extrahieren kann.

Dies alles unter der Annahme, dass Ihr MySQL-Server keine Verbindungen von irgendwo außer localhost akzeptiert. Wenn es das tut, brauchst du ein starkes PW.


4
2017-12-07 16:45





Etwas, das hier übersehen wurde, ist, vertrauen Sie Ihren Benutzern im vertrauenswürdigen Netzwerk?

Ehrlich gesagt, tue ich das nicht, weil ich weiß, wie ich war, als ich in der IT angefangen habe. Ich würde in Bereichen herumstochern und herumstochern, auf die ich kein Recht hatte, und ehrlich gesagt wäre mir ein schwaches MySQL-Passwort eine Freude gewesen, denn ich hätte eine Chance auf Zufallsglück genommen und wäre reingekommen. Na sicher).

Was ist, wenn jemand Social Engineering nutzt, um in Ihr vertrauenswürdiges Netzwerk zu gelangen? Was machst du dann? Wenn sie auf einer Maschine hinter der Firewall sind, blamo, ist deine grundsolide Firewall-Sicherheit ruiniert und sie sind direkt in die Maschine.

Sichere Passwörter sind so einfach zu machen und es gibt eine Menge von Passwort-Management-Tools, um die Passwörter sicher zu halten, so dass es keine Entschuldigung dafür gibt, es nicht zu tun.


4
2017-12-07 22:21



Die Sache ist, dass Sie Remote-Verbindungen in MySQL nicht erlauben sollten, oder wenn Sie brauchen, dann spezifizieren Sie localhost/127.0.0.1 als der Gastgeber. Auf diese Weise kann niemand auf die Datenbanken außerhalb zugreifen (auch nicht auf diejenigen im selben Netzwerk). - Chazy Chaz


Eh. Wenn Ihr Server IP-gesperrt ist und Ihr Benutzer in einer Reihe von Tabellen, in denen Sie sich nicht um die Informationen kümmern, auf SELECT beschränkt ist, ist das keine große Sache.

Auf der anderen Seite setze ich meine MySQL-Passwörter, indem ich eine Minute lang auf die Tastatur haue und kopiere das resultierende Kauderwelsch in eine geschützte Datei, die ich in meinem Code referenziere, wenn ich mich einloggen muss. So sollte es funktionieren.

Warum es leicht machen? Wenn das Passwort an ein begrenztes lokales Konto angehängt ist (wie sie alle sein sollten), warum tippen Sie es dann ein? Wenn dies nicht der Fall ist, sollte es ein Passwort haben, dessen Stärke relativ zum Wert der zu schützenden Daten ist.


2
2017-12-07 16:53