Ankündigung

Einklappen
Keine Ankündigung bisher.

Wichtige Passwörter/Schlüssel im DB oder in einer Datei speichern?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wichtige Passwörter/Schlüssel im DB oder in einer Datei speichern?

    Hi,

    ich hab mal eine grundlegende Frage: Wo speichert man Passwörter/Keys/Schlüssel am besten auf dem Webserver ab?
    - Im DB?
    - In einer Datei innerhalb eines geschützten Ordners?
    - oder evtl. eine andere Idee?

    Hierbei sind keine Login Username+PW's gemeint sondern spezielle CryptKeys die bspw. dateien entschlüsseln oder auch Zugangsdaten zum DB beispielsweise.

    Der Hintergrund: Ich möchte möglichst alle wichtigen Keys die zusammengehören auch zusammen zentral speichern, jedoch ist überall eine gewisse Fehlerquelle.

    Im DB, kann mal schnell alles weg sein (sei es Entwicklerfehler, oder eine Lücke) (XSS etc.). Auf dem Webserver aber auch keine Alternative, da wenn diese Zugangsdaten entschlüsselt werden, die Daten ja "nackig" drauf sind, sozusagen abholbereit.

    Das ganze natürlich performant...somit der wichtigster Punkt. Auf Erfahrungswerte würde ich mich sehr freuen.

    thx.

  • #2
    Fortgeschritten? Was haben Datenbanken mit XSS-Angriffen zu tun?
    http://www.php.de/php-einsteiger/675...sumfragen.html
    Crashkurs zum Thema Rechtschreibung: [COLOR="Green"]normalerweise[/COLOR] ([COLOR="Red"]normaler weise[/COLOR] oder [COLOR="Red"]normaler weiße[/COLOR]), [COLOR="DarkGreen"]Standard[/COLOR] ([COLOR="Red"]Standart[/COLOR]), [COLOR="DarkGreen"]eben[/COLOR] ([COLOR="Red"]ebend[/COLOR])

    Kommentar


    • #3
      willst auf der sicheren seite sein?
      tpm:
      http://h18004.www1.hp.com/products/s...nsanswers.html

      Kommentar


      • #4
        @asterius: XSS->böse sachen einbauen, wichtige Zeilen aus der DB löschen.

        @moma: thx. Grundlegende Frage: Wenn ich die Wahl hab keys in einer PHP datei (wie eine Auflistung von variablen) zu speichern oder einfach eine DB table dafür zu erstellen - Welchen würde man da nehmen? Ich würde spontan fast die PHP-Datei sagen - evtl. eine Idee?

        Kommentar


        • #5
          ich seh da keine grundlegenden sicherheitstechnischen unterschiede.
          keys haben auf nem server nicht so richtig viel zu suchen (auch verschlüsselt nicht).

          es sei denn es sind public keys, oder aplications notwendige (ssh/https/..)

          Kommentar


          • #6
            Zitat von moma Beitrag anzeigen
            ich seh da keine grundlegenden sicherheitstechnischen unterschiede.
            keys haben auf nem server nicht so richtig viel zu suchen (auch verschlüsselt nicht).

            es sei denn es sind public keys, oder aplications notwendige (ssh/https/..)
            Da ich die keys nonstop zur ver- und entschlüsselung brauche muss ich Sie irgendwie auf dem Webserver unterbringen. Wenn man da klassischerweise die großen CMS als Beispiel hernimmt, ist es meist so dass sicherheitsrelevante Daten (sql zugangsdaten bspw.) in einer PHP-Datei hinterlegt werden, wobei Userdaten(pw's etc.) dann im DB sind.

            Thx an Alle. Ich prüfe das ganze mal auf Performance. Schöne Woche.

            Kommentar


            • #7
              Nein, XSS-Angriffe haben nichts mit Datenbanken zu tun.
              http://de.wikipedia.org/wiki/Cross-Site-Scripting
              Vielleicht solltest du dich erst mal über diverese Angriffsformen informieren, bevor du dich hier als fortgeschritten einstufst
              Crashkurs zum Thema Rechtschreibung: [COLOR="Green"]normalerweise[/COLOR] ([COLOR="Red"]normaler weise[/COLOR] oder [COLOR="Red"]normaler weiße[/COLOR]), [COLOR="DarkGreen"]Standard[/COLOR] ([COLOR="Red"]Standart[/COLOR]), [COLOR="DarkGreen"]eben[/COLOR] ([COLOR="Red"]ebend[/COLOR])

              Kommentar


              • #8
                ist es meist so dass sicherheitsrelevante Daten (sql zugangsdaten bspw.) in einer PHP-Datei hinterlegt werden
                Alles steht und fällt mit dem Zugriff auf den Webserver, sofern du Daten verschlüsselst und nicht hashst. Alles was du dort machen kannst, ist den Zugriff "erschweren" in dem du die Passwörter auch nochmal verschlüsselt / encodiert in PHP Dateien ablegst, damit man es beim Zugriff schwerer hat, das Passwort herauszufinden. Aber verhindern kannst du es nicht.

                Bei Speichern Passwörtern verwendet man zum Speichern kryptografische Hash-Funktionen, weil man auch bei Kenntnis des Hashes (nach Zugriff auf den Webserver oder die Datenbank) das Original-Passwort im Optimalfall nicht wieder herstellen kann, aber die Richtigkeit des Klartextpassworts mit der entsprechenden Hash-Funktion trotzdem verifizierbar ist.

                Bei Ver-/Entschlüsselung ist es anders:
                Wenn du Zugriff auf den Webserver hast, hast automatisch du auch Zugriff auf die Datenbank (weil Benutzer und Passwort wiederherstellbar in einer (PHP-)Datei stehen müssen, damit die Verbindung hergestellt werden kann), so sehr man sich auch bemüht, anders geht es nicht.
                Wenn du Zugriff auf die Datenbank hast, ist es völlig wurscht, ob du die "Verschlüsselungs-Keys" in PHP-Dateien oder in der Datenbank hinterlegst, da du ohnehin auf beides Zugriff hast.
                Wenn Sie sich nie ändern, dann ist es einfacher und performanter, sie in einer zentralen PHP-Datei zu speichern. Wenn jeder Benutzer einen eigenen Key hat, ist die Datenbank besser.

                Kopierst du deine PHP-Dateien per FTP unverschlüsselt auf den Webserver (und nicht wie man es machen sollte per FTPS oder SFTP), kann ein "Man-in-the-middle" die Datenübertragung sowieso überwachen und hat gleich (indirekten) Zugriff auf alle Passwörter inkl. dem des FTP Servers.
                Tutorials zum Thema Technik:
                https://pilabor.com
                https://www.fynder.de

                Kommentar


                • #9
                  @asterixus: ist klar, kennst dich aus, natürlich
                  https://www.owasp.org/index.php/Cros...Scripting_(XSS)


                  @Andreas: So seh ich das auch. Thx.

                  Kommentar


                  • #10
                    Zitat von kurtanamo Beitrag anzeigen
                    @asterixus: ist klar, kennst dich aus, natürlich
                    https://www.owasp.org/index.php/Cros...Scripting_(XSS)
                    Und was sagt uns dein Link? Genau das, was ich gesagt habe. Hier ist von Datenbankangrifffen keine Rede.
                    Crashkurs zum Thema Rechtschreibung: [COLOR="Green"]normalerweise[/COLOR] ([COLOR="Red"]normaler weise[/COLOR] oder [COLOR="Red"]normaler weiße[/COLOR]), [COLOR="DarkGreen"]Standard[/COLOR] ([COLOR="Red"]Standart[/COLOR]), [COLOR="DarkGreen"]eben[/COLOR] ([COLOR="Red"]ebend[/COLOR])

                    Kommentar


                    • #11
                      Zitat von kurtanamo Beitrag anzeigen
                      XSS->böse sachen einbauen, wichtige Zeilen aus der DB löschen.
                      Das, wovon du da sprichst nennt sich SQL Injections und nicht XSS.

                      Gruß Litter
                      Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
                      [URL]http://www.lit-web.de[/URL]

                      Kommentar

                      Lädt...
                      X