Neuigkeiten:

moziloCMS verwendet Cookies. Wenn Sie auf unserer Seite weitersurfen, stimmen Sie der Cookie-Nutzung zu Datenschutzerklärung
moziloCMS Layouts
moziloCMS Plugins

Hauptmenü

Mozilo Sicherheitsproblem

Begonnen von MarcAurel, 17. März 2016, 20:43:20

« vorheriges - nächstes »

MarcAurel

Zitat von: djr am 04. April 2016, 12:45:47
Lass es mich so sagen:
Ein Türschloss das mehr als einen Schlüsselbart akzeptiert ist nicht sicher.

Hallo djr,

das ist doch lächerlich. Du konntest dich anmelden weil ich das Passwort genannt habe.
Du hättest genau so gut dein Screenshot mit NOSSL -Anmeldung machen können, mit dem von mir angegebenen Passwort. NOSSL ist sicher genug, dass du es so ohne weiteres nicht knacken kannst.

Ich dachte wir debattieren hier objectiv und fair.  :)

Da ich doch eine eigene Lösung für Mozilo angestrebt habe und NOSSL scheint mir etwas zu schwerfällig zu sein und vor allem nicht ganz "frei", ich habe doch eine eigene Lösung jetzt, die ich schon mal presentiert habe, aber mit einem kleinen entscheidenden Fehler.
Es war vielleicht zu einfach (die Lösung) und deswegen habe ich sie übersehen.

Der Algorithmus sieht folgendermaßen aus:

1. Bei jedem Login sendet der Server ein Random-Guid mit.

2. Client -Side wird das eingegebene Passwort des Users gehasht und zusammen mit dem von Server gesendeten Guid nochmals gehasht und so gesendet.

3. Server-Side wird der noch vorhanden Guid zusammen mit dem Hash des Passwortes aus der DB gehasht und vergliechen mit dem was gerade gekommen ist. Übereinstimmen die beide Werte ist der Login ok.

Hash(PassWortHash + Guid) == Hash(DbPasswortHash + Guid)

Somit ist gewährleistet dass durch Internet wird nie das Passwort weder im Klartext noch als Hash gesendet, und bei jeder Anmeldung ein neuer Hashwert entsteht der so nicht zu knacken oder zu eratten ist. Es war doch einfach oder?

Und dass der djr es schwerer hat (überhaupt) mit seinen Screenshoots (ohne Worte), ich habe das Passwort geändert.  :)

Das sieht jetzt ein eventueller Sniffer:

ac_password_id=c77e5a3a-d1d5-41a8-8250-42522b477f0a&ac_password_hash=7fa045118d60749ba91d499107c16b3c0902a3ba3d2b97a98dc21d488f57f981&ac_user=Testmann&ac_password=7fa045118d60749ba91d499107c16b3c0902a3ba3d2b97a98dc21d488f57f981&ac_action=login - 875

http://publius.lima-city.de/Login.html

MarcAurel

#46
Leute, die Sache mit dem Mozilo-Passwort müsst  ihr auch so sehen;

Viele von euch hier erstellt, ob aus Gefälligkeit oder Geschäftsmäßig, für andere Internetpräsenzen mit Mozilo. Heutzutage ist schon fahrlässig wenn man solchen Lücken in System in Kauf nimmt und nichts dagegen tut, oder zumindest seinen Kunden nicht ausreichend darüber informiert.

Die Sache mit SSL habe ich es satt anzuhören. Wie viele von euch haben eine SSL-Website oder eine solche für seinen Kunden eingerichtet? Es ist ein Jammer. Und es wird noch eine Weile so bleiben.

Und warum sich wehren etwas dagegen zu tun wenn es möglich ist? Wenn man weiß, dass man alles technisch-möglich gemacht hat, ein System zu sichern, es ist alles in Ordnung.

Auf ,,der anderen Seite" sieht es so  aus:
Wenn ein Systemadministrator, egal wo meine Zugangsdaten erspäht, weil sie so fahrlässig durch Internet gesendet werden und sich Zugang zu meine Daten(Website) verschafft dadurch,  mach sich strafbar nur insoweit:

§ 202c BGB:

"Wer eine Straftat nach § 202a oder § 202b vorbereitet, indem er ... Passwörter ... sich ... verschafft ... wird mit Freiheitsstrafe bis zu einem Jahr oder mit Geldstrafe bestraft."

Sollte sich aber dieser Administrator aktiv mit dem Knacken meines Passwortes beschäftigen, Passwort das besonders geschützt ist (wie in unserem Falle mit einem neuen AccesControl/AdminControl) die Situation sieht  schon ein wenig anderes aus für ihn:

§ 202a StGB:

"Wer unbefugt sich ... Zugang zu Daten, die nicht für ihn bestimmt und die gegen unberechtigten Zugang besonders gesichert sind, unter Überwindung der Zugangssicherung verschafft, wird mit Freiheitsstrafe bis zu drei Jahren oder mit Geldstrafe bestraft."


Gruß

MarcAurel

Wie sieht es denn aus djr?

Ist der vorgeschlagene Algorithmus jetzt auch für dich sicher genug?

Man sollte meinen letzten Beitrag nicht missverstehen. Für die Mozilo-Testversion die ich oben angegeben habe, hat jeder der in Interessen der Mozilo-Gemeinschaft hier handelt, mein Einverständnis  dazu, zu versuchen das Passwort des neuen AccesControl zu knacken.
:)

laborix

Zitat von: MarcAurel am 04. April 2016, 19:33:10...
Wenn ein Systemadministrator, egal wo meine Zugangsdaten erspäht, weil sie so fahrlässig durch Internet gesendet werden und sich Zugang zu meine Daten(Website) verschafft dadurch,  mach sich strafbar nur insoweit:
...

Sollte sich aber dieser Administrator aktiv mit dem Knacken meines Passwortes beschäftigen, ...
Ein Administrator unterschreibt bei Anstellung in einer Firma ein Stück Papier in dem er versichert nichts dergleichen zu tun. Er darf die Logs (Router/Proxy) nur dann analysieren, wenn aufgrund eines bestehenden/geschäftsschädigenden Verdachtes, er eine klare Anweisung der Geschäftsführung erhält. Thema erledigt.

Das du scheinbar damit ein Problem hast, ist deine Sache. Aber einen Administrator generell als Passwort-Sucher hinzustellen ist nicht ok.

LG

MarcAurel

Zitat von: laborix am 05. April 2016, 18:24:25

ein Systemadministrator,


Das du scheinbar damit ein Problem hast, ist deine Sache. Aber einen Administrator generell als Passwort-Sucher hinzustellen ist nicht ok.

LG

Es war nur ein ... generischer Begriff, nichts für ungut.  :)

MarcAurel

In AccessControl fehlte noch ein Mindestmaß an Schutz gegen "Session-Hijacking".

Und hier habe ich eine "Finger-Print"-Überprüfung eingefügt.
Bei jedem Login es wird in einer Session den entsprechenden "Finger-Print" des Users gespeichert:

protected function getFingerPrint(){
      $ip = $_SERVER["REMOTE_ADDR"];
      //check ip is pass from proxy
      if (!empty($_SERVER["HTTP_X_FORWARDED_FOR"])) {
         $ip .= '('.$_SERVER["HTTP_X_FORWARDED_FOR"].')';
      }
      //check ip from share internet
      if (!empty($_SERVER["HTTP_CLIENT_IP"])) {
         $ip .= '('.$_SERVER["HTTP_CLIENT_IP"].')';
      }
      $agent = $_SERVER['HTTP_USER_AGENT'];
      //system token
      $token = $this->settings->get('login_fingerprint_token');      
      if ($token == ""){
         $token = $this->generateRandomString(10);
      }
      return hash("sha256", $ip . $agent . $token);   
   }

Bei jeder Request wird dieser "Finger-Print" überpüft.
Gibt es keine Übereinstimmung, es wird ausgelogt.
   
Die Überprüfung ist in AccessControl-Admin-Bereich abschaltbar, falls ein User doch unterwegs nur mit wechselnden IPs ist.

Und damit sollte das Thema, zummindest aus meiner Sicht beendet sein und Mozilo ein Stück sicherer.
Ich schenke euch das neue Plugin hiermit . Funktioniert einwandfrei auch mit Mozilo 2.0, sollte aber nicht parallel mit dem alten Plugin benuzt werden, ein vorhandenes einfach abschalten, und natürlich die alte Passwörter passen auch nicht.
:)


MarcAurel

Zitat von: MarcAurel am 05. April 2016, 18:39:12

      if ($token == ""){
         $token = $this->generateRandomString(10);
      }

Ich rektifiziere hier, das da oben muss weg, es wäre ein Fehler wenn dazu kämme, obwohl wenig wahrscheinlich wenn der Anwender nicht daran fummelt.