Die Klingel.

Es gibt diejenigen, die diese Nachricht vor Ihnen gelesen haben.
Abonnieren Sie Artikel frisch.
Email
Name
Nachname
Wie willst du die Glocke lesen?
Ohne spam.

Mit dem Internet und dem Computer verfügen wir über immer mehr Kennwörter. Dies sind Kennwörter und loggen sich der Mailbox an, an Skype, an die Websites, auf denen wir registriert sind (venkontakte, Klassenkameraden usw.), und weitere fortschrittliche Benutzer verwenden auch Kennwörter für verschiedene Programme, Kennwörter für FTP, Lizenzschlüssel, und diese Liste kann noch lange fortgesetzt werden. Je mehr Kennwörter bei uns erscheinen (natürlich die Anmeldungen zu ihnen), desto offensichtlicher, desto offensichtlicher, dass eine Art zuverlässiger Speicher für sie benötigt wird. Natürlich können wir .txt Dokument erstellen und alles dort schreiben und aufbewahren. Es kann sein, dass das Lesen dieser Linien, denkst: "Ich mache es einfach, was ist es schlecht?". Vielleicht nicht schlecht, aber es ist nicht bequem, außerdem gibt es mehr die beste Art Speicherkennwörter. Ich bin sicher, dass Sie es mögen werden. Diese Methode ist zu verwenden des Passwortmanagers namens Keepass. Was sind seine Vorteile?

1) Alle Ihre Passwörter befinden sich in einem Programm, das sicher vor Passworthackern geschützt ist und gleichzeitig verschlüsselt ist, dass sie den AES-Algorithmus verschlüsselt (128-Bit-Blockschiffe mit einer 256-Bit-Taste). Wenn Sie das Programm eingeben, müssen Sie ein Passwort eingeben, ansonsten können Sie keinen Zugriff erhalten. Es wird empfohlen, dass das Kennwort aus mindestens 20 Zeichen besteht, wenn der Hacker ein solches Passwort auswählen möchte, es wird seit Jahrzehnten benötigt. Es ist unwahrscheinlich, dass jemand daran interessiert ist, ein so langes Passwort aufzunehmen.
2) Komfortable Schnittstelle. Programme, Sie können Gruppen an Passwörter (z. B. eine Gruppe ") kombinieren Soziale Netzwerke", Panel" Mail ");
3) Autonabe-Funktion - Das Programm kann automatisch das Login und das Kennwort eingeben.
4) Tragbare Version Keepass ermöglicht es Ihnen, alle Ihre Passwörter bequem auf dem Flash-Laufwerk zu tragen.
5) In Keepass gibt es einen Passwortgenerator, also ist es nun nicht notwendig, sie selbst zu erfinden. Passwortgenerator enthält auch zusätzliche Einstellungen, können Sie angeben, welche Zeichen verwendet werden oder nicht verwenden, und wie oft sie sich in einem Passwort erfüllen sollten.

Dies sind die Hauptvorteile. Überlegen Sie nun, wie Sie mit dem Keepass-Programm arbeiten können. Beginnen wir mit der Installation und der Russifizierung von Keepass. (Keepass Laden Sie das Programm am Ende dieses Artikels herunter). Die Installation ist intuitiv, daher werden wir nicht aufhören. Nach der Installation muss das Programm russisch sein. Dazu finden Sie in dem von Ihnen heruntergeladenen Archiv die "russische" Datei und kopieren Sie sie in den Ordner mit installiertes Programm. Normalerweise ist der Pfad: "C / Programmdateien / Keepass Password Safe". Aber vielleicht ein anderer Pfad, abhängig von Ihren Einstellungen.

Starten Sie dann das Programm. Wenn es zuerst beginnt, ist es das Fenster:

Wir werden gebeten, einzuschließen, ob automatisches Update. Natürlich muss es getan werden, sodass wir die erste Option wählen: "Aktivieren (empfehlen)". Wir sehen das Hauptprogrammfenster:

Keepass ist immer noch auf Englisch und Sie müssen die Russifizierung abschließen. Um es abzuschließen, fahren Sie fort, um die Sprache anzeigen zu können. Bildschirmfoto:

Hier wählen wir russisch

So geht das Keepass Russiat an.

Gehen Sie nun mit der Erstellung unserer Passwortbasis weiter. Dafür klicken Sie auf: Datei / Neu oder nur Strg + N.

Erfinden Sie den Namen für unsere Datenbank und klicken Sie auf "Speichern". Bitte beachten Sie, wo Sie die Datenbank mit Kennwörtern speichern, da hier alle Ihre Kennwörter gespeichert werden. Wenn Sie beispielsweise die Kennwortdatenbank auf einen anderen Computer übertragen möchten, müssen Sie diese Datei kopieren. Möglicherweise gibt es einige andere Situationen, in denen Sie eine Passwort-Basisdatei benötigen. Behalten Sie es daher, wo Sie es leicht finden können. Beziehen Sie sich darauf ein wichtiger Moment Extrem sorgfältig.

Hier müssen wir das Hauptkennwort aufstellen, das am Eingang des Programms verwendet wird. Es muss mindestens 20 Zeichen sein, wie zu Beginn des Artikels erwähnt. Das Kennwort von weniger als 20 Zeichen sollte nicht verwendet werden. Speichern Sie nicht die Anzahl der Zeichen im Passwort. Jetzt ist das einzige Passwort, das Sie sich erinnern müssen, andere werden im Programm gespeichert. Überprüfen Sie auch das Kontrollkästchen in der Nähe der "Key-Datei", ohne dass Sie das Kennwort selbst kennen, können Sie das Programm nicht eingeben. Dieser Schritt kompliziert das Hacken Ihrer Passwortbasis, wenn jemand versucht, es zu tun. Ein solcher Schutz wird in Keepass verwendet. Klicken Sie auf "Neu".

Hier fragen wir den Namen der Schlüsseldatei und speichern Sie sie. Erinnern Sie sich, wo Sie es sparen. Kennwortdatenbankdatei und schlüsseldatei. - Dies sind zwei grundlegende Dateien, die zur Eingabe der Kennwortdatenbank erforderlich sind. Sie müssen sie nicht verlieren, sonst werden nicht in Keepass gespeicherte Kennwörter funktionieren.

In diesem Fenster müssen Sie Zufallszahlen generieren. Obwohl es schwierig klingt, ist es aber sehr einfach. Bewegen Sie den Mauszeiger über den grauen Bereich und erzeugt somit Zufallszahlen. "Wie lange wird eine Maus über einen grauen Bereich fahren?" - du fragst. Bitte beachten Sie, dass es unten einen leeren Bereich gibt (der zweite Pfeil gibt es an). Bewegen Sie die Maus in zufälliger Reihenfolge, bis diese Fläche gefüllt ist.

Was sollte als Ergebnis passieren? Sehen Sie sich einen Screenshot an:

Wir sehen, dass die Anzahl der Bits 256 beträgt, es bedeutet, dass wir alle alles getan haben und jetzt auf "OK" klicken. Unser Schlüssel ist fertig!

Jetzt ist auch alles fertig. OK klicken".

Klicken Sie im Fenster "Erstellen eines neuen Kennworts erstellen" auf "OK".

Alles ist fertig und auf dem Screenshot können wir sehen, wie das Keepass aussieht.

Wie zu Beginn des Artikels erwähnt, können in diesem Programm Kennwörter nach Gruppen sortiert werden. Darin wurden bereits die Standard-, Kennwortspeichergruppen und Kennwortprüfsätze erstellt. Auf der linken Seite befinden sich Gruppen und auf den richtigen Kennwörtern. Natürlich brauchen wir keine Testunterlagen. Entferne sie.

Entfernen Sie auch die Gruppe. Wenn diese Gruppen, die bereits für Sie geeignet sind, können Sie diese nicht löschen. Wir werden bestehende Gruppen löschen und andere erstellen, neue. Um die Gruppe zu entfernen, klicken Sie darauf rechtsklick Mäuse und wählen Sie den Artikel "Gruppe löschen".

Die Gruppen wurden also entfernt, und jetzt erstellen wir neue. Um dies zu tun, können Sie eine Gruppe bearbeiten / hinzufügen

Wir geben den Namen der Gruppe ein. Lassen Sie uns in dieser Gruppe Passwörter an unsere postfächer. Hier ist eine Gruppe von Passwörtern und rufen wir an - "Mail". Bildschirmfoto:

Wie Sie sehen, sind wir von einer Gruppe von Kennwörtern mit dem Namen "Mail" entstanden. Ein ordnungsgemäß gewählter Name macht es leicht zu verstehen, welche Kennwörter angenommen werden sollen. Fazit: Lassen Sie uns die Namen verstehen und Sie leichter finden und schnell den gewünschten Eintrag finden.

Die folgende Aufgabe ist in der Gruppe aufzunehmen. Wie bereits erraten, werden das Login und das Kennwort an der E-Mail in der Datensatz gespeichert, sowie einige nützliche Dinge. Sprechen Sie etwas weiter über sie. Und jetzt sehen wir uns, wie Sie dem Konzern einen Eintrag hinzufügen können. Um dies zu tun, gehen Sie zu "Edit / Add Record ..."

Wir haben das Fenster "Hinzufügen von Record" geöffnet

Füllen Sie das Formular aus, 1) Erfinden Sie den Namen des Datensatzes, 2) Der Name ist ein Login, 3) löschen Sie das Kennwort, das bereits vorhanden ist, und geben Sie denjenigen, den wir für E-Mail verwenden, können Sie auch einen Link auf die Seite einstellen was Sie benötigen, um ein Login und ein Kennwort und ein Kennwort einzugeben und auch Kommentare zu schreiben. In den Kommentaren können wir die Antwort angeben sicherheitsfrage Oder einige andere Daten, die wir auf die Registrierung hingewiesen haben, generell alles, was wir brauchen. Hier ist ein Beispiel:

Dies ist das, was der Datensatz erstellt hat.

Melden Sie sich übrigens an (in Keepass er heißt Name), Sie können sich mit Asterisks verstecken, wie das Kennwort ausgeblendet ist. Gehen Sie dazu auf die Registerkarte Ansicht und wählen Sie den entsprechenden Element aus.

Fassen wir die Arbeit zusammen zusammen. Wir haben alle ein Rekord hinzugefügt, und dies reicht aus, um zu verstehen, wie dieser Prozess passiert. Jetzt ähneln Sie, um alle Ihre Passwörter in dieses Programm zu übertragen. So erstellen Sie Ihre Datenbank und können bequem die Kombinationen von Anmeldungen und Kennwörtern, die Sie benötigen, und schnell und schnell finden.

Wie "herauszumachen" Anmelden und Kennwort aus dem Datensatz? Drücken Sie die rechte Maustaste auf den Datensatz. Sehen Sie sich einen Screenshot an:

Das Menü ist angezeigt. Sein sorgfältig überprüft ist, dass Sie sehen, dass Sie den Namen, das Kennwort kopieren, ändern, ändern und den Datensatz löschen. Dies sind die grundlegendsten Funktionen. Aber hier gibt es einen anderen sehr nützlicher Chipdas heißt "Start Autonoming". Wie benutze ich? Erstens setzen wir den Cursor in das Login-Feld in das Formular auf der Site und gehen Sie dann zur Datensatz und wählen Sie "Autolation starten". Das Programm tritt automatisch in das Login und das Kennwort ein.

Eine weitere nützliche Sache, die im Keepass-Passwort-Generator ist. Was es ist und warum er braucht, hoffe ich, dass jeder versteht. Es ist auf der Registerkarte Tools. Dort ist alles intuitiv klar, ich denke, es wird leicht herauszufinden.

Dies kann abgeschlossen werden. Beste Wünsche an dich.

Ist es möglich, irgendwie Hack-Keep-Kennwörter zu hacken?

Wenn jemand nicht weiß, was Keepass ist, in Kürze - Dies ist ein Passwort-Manager-Programm, mit dem Sie einen Assistenten aufbewahren können, um mit Hilfe eines Kennworts gespeichert zu werden. Sie können über Kennwortmanager in unserem Detail lesen.

Bis vor kurzem war das Hacken von Keepass unmöglich, aber der andere Tag, ein bestimmtes Denis-Anzakovic, das auf dem Netzwerk veröffentlicht wurde kostenloses Dienstprogramm KeeStarce, mit dem ein Angreifer Kennwörter des beliebten Kennwortmanagers stehlen kann.

Laden Sie kostenlos Keefarce nach diesem direkten Link herunter.

Hacken von Keepass mit Sängerin Keefarce

Um den Manager zu hacken passwort Keepass. Und fusionskennwörter sind erforderlich, damit er offen ist, d. H. An den Benutzer, der für einige Zeit mit einem Passwort-Assistenten eingegeben hat, deckte das Programm nicht ab.

Die Verwendung von KeeFarce ist sehr einfach. Kopieren Sie einfach Dateien in den Keepass-Ordner:

  • Bootstrapdll.dll.
  • Keefarcedll.dll.
  • Microsoft.Diagnostic.Runtime.dll.

Und führen Sie die ausführbare Datei keefarce.exe aus


Nach dem Start des injizierten Programms laufender Prozess Keepass Dann exportiert das Dienstprogramm alle Passwörter in cSV-Datei. Im Ordner Appdata.

So schützen Sie sich vor dem Hacken von Keepass

Überprüfen Sie zunächst Ihren Computer für Trojaner (), da dieses Schema kann implementiert werden, wenn der Angreifer hat fernzugriff Auf Ihrem Computer oder auf Ihrem Computer ist ein physischer Zugriff, während Sie einen offenen Passwort-Manager lange Zeit verlassen, um sich vom Computer zu entfernen.

Die zweite und vor allem lassen den Kennwortmanager nicht lange offen. Wir gingen in das Programm, zog das notwendige Anmelde- und Kennwort heraus, das an der Site angemeldet ist, und den Manager sofort geschlossen. Mehr als o. richtige Einstellung Keepass, das Sie in Artikel "" lesen können. Übrigens habe ich über diese Bedrohung gesprochen und empfohlen, die Zeit der automatischen Schließung des Programms auf einfache Weise zu reduzieren, auch bevor dieses Dienstprogramm erschien.

Was ist mit anderen Kennwortmanagern?

Diese Sicherheitsanfälligkeit (nicht genau dieses Dienstprogramms) kann auch verwendet werden, um Passwörter aus anderen Kennwortspeicherprogrammen zu stehlen. Ich denke, bald wird es keine kleine Anzahl ähnlicher Tools geben, die sowohl getrennt als auch in verschiedenen schädlichen Programmen eingebaut werden.

Ist es notwendig, die Verwendung von Kennwortmanagern abzulehnen?

Du entscheidest. Ich persönlich glaube, dass es mit der richtigen Verwendung von Keepass und der richtigen Computerhygiene keine Probleme geben sollte.

In einem der vergangenen Videos habe ich bereits über das Programm zum sicheren Kennwortspeicher gesprochen. Infolge bestimmter Experimente stellte sich jedoch heraus, dass Kennwörter nicht so sicher waren, aber dies betrifft die klassische Version des Programms. Sehen Sie sich in diesem Video die professionelle Version von Keepass an. Zumal es auch kostenlos als klassische Version ist. Wenn Sie zuerst von diesem Programm erfahren, rate ich Ihnen, zuerst meine Bewertung zu der klassischen Version zu sehen, damit keine zusätzlichen Fragen auftreten.

Und so tun wir in dieser Lektion:

Wir werden mit dem Hacking Classic-Version des Keepas-Passworts durch Schlüssellogger umgehen.

Wir importieren die Datenbank von der klassischen Version in professionell;

Betrachten Sie die wichtigsten Unterschiede und Innovationen;

Und wir werden versuchen, die Key Logger-Ohm Professional-Version zu hacken.

Und zuerst wird zu den Website-Entwicklern des Programms www.Heepass.info \\ download. Laden Sie beide Versionen in ein tragbares Format herunter, während ich eine Datenbank mit Kennwörtern auf einem Flash-Laufwerk trage, dann sollte das Anzeigenprogramm auch vom Flash-Laufwerk beginnen, ohne das Betriebssystem zu installieren.

Ich habe es bereits getan, sowie eine Testdatenbank für die klassische Version erstellt. Auf der dieser MomentIch habe ein lanagentisches Spionageprogramm in meinem System. Dieses Programm bezieht sich auf Key Logger-AM, d. H. Programme, die alle Benutzeraktionen auf dem Computer aufnehmen. Nun lernen wir, wie zuverlässig dieses Programm Schützt unsere Passwörter!

Wir führen die klassische Version aus und öffnen Sie die erstellte Datenbank darin, geben Sie das Kennwort in die Datenbank ein und melden Sie sich an der Website Rutracker.org ein.

Sehen wir uns jetzt, dass ich Lanagent, Update-Protokolle abfangen konnte, und sehen Sie, dass das Programm sowohl den Assistenten als auch das Login und das Kennwort für den Rutracker-Standort ergriffen hat. Selbst wenn wir versuchen, Daten über die Zwischenablage einzugeben, erfasst das Programm auch den Inhalt des Puffers. Andererseits ist das Passwort für die Datenbank nutzlos, wenn der Angreifer nichts zu verwenden hat, d. H. Die Basis befindet sich auf unserem Flash-Laufwerk. Aber in dieser Situation können Programme hintergrundmodus Kopieren Sie den Inhalt des Flash-Laufwerks oder der zu zirkulierten Dateien, auf die sich ausgebaut und daher unmerklich für uns unmerklich kopiert, kann die Basis kopiert werden, und alle Kennwörter werden mit dem Schlüsselmaster geöffnet!

Im Allgemeinen können Sie die folgende Ausgabe vornehmen, die klassische Version ist geeignet, um keine Kennwörter in explizit offener Form zu speichern, sondern bei Verwendung von Spyware, sondern nicht hilft. Und beseitigen Sie diesen Bruch, die professionelle Version wird uns helfen!

1) Ruß das Programm für einen bequemeren Betrieb ( www.. keepass. die Info. \ Übersetzungen \ Russisch. \\ 2.28 \\ Unzip in einem Ordner mit dem Programm \\AUSSICHT. \ Veränderung. Sprache. \ Russisch.)

2) Erstellen. neue Basis (Datei \\ NEW \\ Geben Sie den Pfad und den Namen an, um das Hauptkennwort festzulegen)

3) Wir übertragen Daten von der alten Basis, um nicht alles manuell zu fahren ( Datei \\ Import \\Keepass 1. x. \\ Wir geben den Pfad zur alten Datenbank an \\ OK \\ ein, um das Kennwort in die Datenbank \\ Neue Bezeichner einzugeben)

Betrachten Sie nun, was neu und interessant in dieser Version erschienen. Ich werde nicht alle Innovationen in Betracht ziehen, es wird viel Zeit brauchen, sondern sich auf das Beste auf die meisten konzentrieren, meiner Meinung nach interessant:

1) Geben Sie das Hauptkennwort in den geschützten Modus ein, mit dem Sie den Betrieb von Key Logger-A blockieren können, wenn Sie das Hauptkennwort eingeben ( Service \\ Settings \\ Security \\ Geben Sie das Hauptkennwort in den geschützten Modus ein)

2) Passwortgenerator erstellt gemäß der gewählten Komplexität 30 Kennwörter sofort. Von dem Sie wählen können, Ihrer Meinung nach die komplizierteste.

3) Die autonatale Sprache ist einfacher zu bedienen als in der klassischen Version. Ich sprach nicht über ihn in der Überprüfung der klassischen Version, also schauen wir uns an, was er helfen kann!

Standardmäßig wird die nächste Abfolge der Befehle durch automatische Eingabe ausgelöst. Eine Anmeldung, Registerkarte, Kennwort und Eingabetaste werden in das aktive Feld eingegeben. Diese Reihenfolge ist zu sehen, wenn open Entry \\ AutoLEction \\ Verwenden Sie die folgende Reihenfolge. UND diese Option Passt in den meisten Fällen, da es zum Eingang zum Rutracker ging.

Es ist jedoch nicht für die Eingabe von E-Mails über die Website www.mail.ru geeignet. Da ich eine Testbox nicht auf mail.ru habe, aber bk.ru, dann können Sie für diese Site einen einzelnen Eingabealgorithmus eingeben. (Benutzername) (Registerkarte) (unten) (unten) (unten) (Tab).

Die Liste der Befehle wird angegeben, es gibt auch ein Zertifikat, obwohl es in Englisch ist, aber wenn Sie möchten, können Sie es herausfinden. Aus meiner eigenen Praxis würde manchmal das Team verwenden (Verzögerung 1000)Dies ist ein Befehl der Verzögerung zwischen den Teams. Es passiert einfach, dass der Browser mit einem langsamen Internet keine Zeit hat, die Reihenfolge der Befehle anzunehmen, da er Zeit braucht, um über diesen Befehl nachzudenken, dieser Befehl hilft (5000 - 5 Sekunden Verzögerung).

4) Doppelkomplikation eines Sets - wann diese MethodeDas Programm wird nicht explizit in die Daten eingerichtet, es ist Teil des Anmeldes und des Kennworts in der Zwischenablage, und der Teil gibt die Zeichen ein.

Überprüfen Sie nun, ob Lanagent unsere Passwörter öffnen kann!? Wie Sie sehen, hat es nichts herausgefunden, aber das Programm hat daher perfekt ausgearbeitet und jetzt sind Ihre Kennwörter am meisten so viel wie möglich geschützt!

  • Lernprogramm

Der andere Tag brauchte ich, um die Entschlüsselung der Keepass-Datenbank zu implementieren. Ich wurde von der Tatsache getroffen, dass es kein einziges Dokument gibt, und kein einzelner Artikel mit umfassenden Informationen über den Dateidecodieralgorithmus. KDB I.KDBX unter Berücksichtigung aller Nuancen. Dies veranlasste mich, diesen Artikel zu schreiben.


Im Moment gibt es zwei Versionen von Keepass:

  • Keepass 1.x (erzeugt Dateien.kdb);
  • Keepass 2.x (erzeugt Dateien.kdbx).

Die Struktur der Keepass-Datenbank (.kdb,. Kdbx) strukturiert aus 3 teilen:

  • Unterschrift (nicht verschlüsselt);
  • Titel (nicht verschlüsselt);
  • Daten (verschlüsselt).

Datenbank dekodieren.

Sequenzierung:
  1. Wir lesen die Datenbanksignatur.
  2. Wir lesen den Datenbankkopf.
  3. Wir erstellen einen Hauptschlüssel.
  4. Entschlüsseln Sie die Datenbank.
  5. Überprüfen Sie die Integrität der Daten.
  6. Wenn die Datei komprimiert wurde, entpacken Sie es aus.
  7. Passwörter entschlüsseln.

Die Absätze 5, 6 und 7 umfassen nur K.KDBX-Dateien!

Unterschrift
Basensignatur (4 Bytes)

Die erste Signatur ist dieselbe für.KDB i.kdbx-Dateien. Sie sagt das diese Datei Es ist die Keepass-Datenbank:

  • 0x9A2D903.
Versionssignatur (4 Bytes)

Die Buchsignatur zeigt die Keepass-Version an und ist daher unterschiedlich für.Kdb i.kdbx-Dateien:

  • 0xb54bfb65 - Keepass 1.x (file.kdb).
  • 0xB54BFB66 - Keepass 2.x Pre-Release (file.kdbx).
  • 0xb54bfb67 - Keepass 2.x Post-Release (file.kdbx).
FileVesion (4 Byte)

Die dritte Signatur ist nur in files.kdbx und enthält die Version der Datei. Für files.kdb. diese Information In der Datenbankkopf enthalten.


Somit ist in Keepass 1.x die Signaturlänge 8 Byte und in Keepass 2.x - 12 Bytes.

Titel

Nach der Unterzeichnung der Datenbank beginnt der Titel.

Header Keepass 1.x.

Die title.kdb-Datei besteht aus den folgenden Feldern:

  1. Flaggen (4 Bytes): Dieses Feld zeigt an, welche Verschlüsselungstypen beim Erstellen einer Datei verwendet werden:
    • 0x01 - SHA256;
    • 0x02 - AES256;
    • 0x04 - ARC4;
    • 0x08 - Twofish.
  2. Version (4 Bytes): Dateiversion.
  3. Master-Samen (16 Bytes): Zum Erstellen eines Hauptschlüssels.
  4. Verschlüsselung IV (16 Bytes): Wird zum Entschlüsseln von Daten verwendet.
  5. Anzahl der Gruppen (4 Bytes): Gesamtzahl der Gruppen in der Datenbank.
  6. Anzahl der Einträge (4 Bytes): Gesamtzahl der Einträge in der Datenbank.
  7. Inhaltshash (32 Bytes): Hash-entschlüsselte Daten.
  8. Verwandeln Sie den Samen (32 Bytes): Wird verwendet, um einen Master-Schlüssel zu erstellen.
  9. Transformationsrunden (4 Bytes): Wird verwendet, um einen Master-Schlüssel zu erstellen.
Header Keepass 2.x.

V.kdbx-Dateien Jedes Headerfeld besteht aus 3 Teilen:

  1. Feld-ID (1 Byte): Mögliche Werte von 0 bis 10.
  2. Datenlänge (2 Bytes).
  3. Daten ([Datenlänge] Byte)

TITEL.KDBX-Datei besteht aus den folgenden Feldern:

  • ID \u003d 0x01 Kommentar: Dieses Feld kann im Titel dargestellt werden, es gab jedoch keiner in meiner Datenbank.
  • ID \u003d 0x02-Chiffrige-ID: UUID, die das verwendete Verschlüsselungsverfahren angibt (zum Beispiel für AES 256 UUID \u003d).
  • ID \u003d 0x03 Komprimierungsflags: Algorithmus-ID zum Komprimieren der Datenbank:
    • 0x00: keine;
    • 0x01: gzip.
  • ID \u003d 0x04 Master-Samen: Wird verwendet, um einen Master-Schlüssel zu erstellen.
  • ID \u003d 0x05 Transformieren Sie den Samen: Wird verwendet, um einen Master-Schlüssel zu erstellen.
  • ID \u003d 0x06 Transformationsrunden: Wird verwendet, um einen Master-Schlüssel zu erstellen.
  • ID \u003d 0x07 Verschlüsselung IV: Zum Entschlüsseln von Daten.
  • ID \u003d 0x08 Geschützte Stream-Taste: Zum Entschlüsseln von Kennwörtern.
  • ID \u003d 0x09 Stream Start Bytes: Die ersten 32 Bytes der Entschlüsselungsdatenbank. Sie werden verwendet, um die Integrität der entschlüsselten Daten und der Richtigkeit des Hauptschlüssels zu überprüfen. Diese 32 Bytes werden zufällig jedes Mal erzeugt, wenn die Datei Änderungen speichert.
  • ID \u003d 0x0a innerer Random-Stream-ID: Algorithmus-ID zum Entschlüsseln von Kennwörtern:
    • 0x00: keine;
    • 0x01: Arc4;
    • 0x02: SALSA20.
  • ID \u003d 0x00 Ende des Headers: Das letzte Datenbank-Header-Feld, die die Datenbank selbst beginnt.
Hauptschlüsselgeneration.

Generation Master-Schlüssel tritt in 2 Stufen auf:

  1. Erzeugung des zusammengesetzten Schlüssels;
  2. Generation Master-Schlüssel basierend auf einem zusammengesetzten Schlüssel.
1. Erzeugung des zusammengesetzten Schlüssels

Um einen Verbundschlüssel zu generieren, wird der SHA256-Hash-Algorithmus verwendet. Die folgenden Tabellen präsentiert einen Pseudocode, um eine Verbindungstaste zu erstellen, basierend auf welcher Version von Keepass verwendet wird und welche Eingabedaten zum Entschlüsseln der Datenbank erforderlich sind (nur Passwort nur, nur der Schlüssel oder alle zusammen):


Keepass 1.x.



Keepass 2.x.



Ich ziehe auf die Tatsache aufmerksam, dass, wenn Sie mehrere Entitäten benötigen, um die Datenbank zu entschlüsseln (z. B. ein Kennwort und einen Schlüsselschlüssel), müssen Sie zunächst einen Hash aus jeder Entität bringen, und verbinden Sie sie dann miteinander (CONCAT) und nehmen Sie den Hash zusammen aus der kombinierten Sequenz.

2. Erzeugen eines Master-Schlüssels basierend auf einem Composite-Schlüssel
  1. Müssen verschlüsseln Der oben erworbene zusammengesetzte Schlüssel mit dem AES-256-EZB-Algorithmus.
    • Sie müssen den Transformationssamen von der Kopfzeile verwenden.
    • Diese Verschlüsselung muss von Transformationsrunden (aus dem Titel) erzeugt werden.
  2. Mit Hilfe von SHA256 erhalten wir einen Hash aus einem verschlüsselten Verbindungsschlüssel.
  3. Wir verbinden den Master-Samen mit dem Hash.
  4. Mit Hilfe von SHA256 erhalten wir Hash aus der kombinierten Sequenz - dies ist unser Hauptschlüssel!

Pseudocode

void generatemasterkey () (// verschlüsseln Sie die Verbundschlüssel-Taste Time Times for (Int i \u003d 0; i< TransformRounds; i++) { result = encrypt_AES_ECB(TransformSeed, composite_key); composite_key = result; }

// Holen Sie sich einen Hash aus dem verschlüsselten Composite-Key Hash \u003d SHA256 (Composite_key); // Wir kombinieren den resultierenden Hash mit dem Mastered-Feld von der Key \u003d Concat Header (Mastersed, Hash); // Holen Sie sich einen Hash aus dem Master_Key \u003d SHA256 (Key), der oben kombiniert ist;

Decodieren von Data Keepass 1.x

Unmittelbar nach dem Titel beginnt die verschlüsselte Datenbank selbst. Entschlüsselungsalgorithmus Weiter:

  1. Alle verbleibenden Akte entziffern
  2. Mit Hilfe von SHA256 erhalten wir Hash aus entschlüsselten Daten ( bytes vom vorherigen Punkt berücksichtigen nicht).
  3. Wir prüfen, ob der resultierende Hash mit dem Content-Hash-Feld vom Titel zusammenfällt:
    • esley Hash fällt zusammen, wir haben unsere Datenbank erfolgreich entschlüsselt! Sie können die entschlüsselten Daten als .xml-Datei speichern und sicherstellen, dass alle Anmeldungen mit Passwörtern korrekt entschlüsselt werden,
    • esley Hash fällt nicht zusammen, es bedeutet, dass es kein treues Passwort oder die Schlüsseldatei war, oder die Daten wurden beschädigt.

Pseudocode

bool decryt shakass1x () (// Bestimmen Sie die Länge der verschlüsselten Datenbank // (Dateigröße - Signaturgröße - Headergröße) db_len \u003d file_size - Signature_size - header_size;

// entschlüsselt data decrypted_data \u003d decrypt_aes_256_cbc (master_key, verschlüssung, verschlüsselt_data); // Wir lernen die Anzahl der "unnötigen" Bytes extra \u003d entschlüstelt_data; // Holen Sie sich einen Hash aus den Daten (ohne zusätzliches Byte!) Content_hash \u003d sha256 (entschlüstelt_data [:( db_len - extra)]; // Prüfen Sie, ob der resultierende HASH mit dem Contenthash-Feld aus dem IF-Header (contentehash \u003d\u003d content_hash) stimmt, true; Sonst false zurückgeben;

Ceepass 2.x Data-Entschlüsselung

Unmittelbar nach dem Ende des Header-Felds beginnt die verschlüsselte Datenbank selbst den Header. Entschlüsselungsalgorithmus Weiter:

  1. Alle verbleibenden Akte entziffern Verwenden des AES-256-CBC-Algorithmus.
    • Verwenden Sie als Schlüssel den oben generierten Master-Schlüssel.
    • Verwenden Sie als Initialisierungsvektor die Verschlüsselung IV aus dem Titel.
  2. Die letzten paar Bytes der entschlüsselten Datenbank sind nicht erforderlich - dies sind mehrere identische Bytes am Ende der Datei (Polsterung). Um ihren Einfluss zu beseitigen, müssen Sie das letzte Byte der Decryne-Datenbank lesen. Dies ist die Anzahl der "extra" -Bytes, die in der Zukunft nicht berücksichtigt werden müssen.
  3. Wir prüfen, ob die ersten 32 Bytes der entschlüsselten Datenbank mit dem Feld STROM-Start-Bytes zusammenfallen:
    • wenn diese Daten übereinstimmen, haben wir den richtigen Master-Schlüssel generiert,
    • wenn die Daten nicht übereinstimmen, bedeutet dies, dass er nicht mit einem ungültigen Kennwort, einem Dateischlüssel oder WuA versehen wurde, oder die Daten wurden beschädigt.
  4. Wenn der vorherige Artikel erfolgreich abgeschlossen wird, verwerfen Sie die ersten 32 Bytes. Überprüfen Sie das Feld Kompressionsflagsfeld. Wenn die GZIP-Dateikomprimierung verwendet wurde, entpacken Sie die Daten.
  5. Wir überprüfen die Integrität der Daten. Die Daten sind in Blöcke unterteilt, die maximale Blockgröße beträgt 1024 * 1024. Jeder Datenblock beginnt mit einem Titel. Die Kopfstruktur ist wie folgt:
    • Block-ID (4 Byte): Blocknummer beginnend mit 0;
    • Flash-Datenblock (32 Bytes);
    • Blockgröße (4 Byte).
  6. Folglich ist das Verfahren wie folgt:
    • Lesen Sie den Blocktitel.
    • Blockdaten lesen.
    • Mit SHA256 erhalten wir Hash aus den Blockdaten.
    • Wir prüfen, ob der Hash mit dem HASHE vom Titel zusammenfällt.
  7. Wir führen eine Folge von Aktionen aus dem vorherigen Element für jeden Datenblock aus. Wenn die Daten in allen Blöcken gespeichert werden, schneiden Sie alle Header der Blöcke aus, und die resultierende Reihenfolge ist eine entschlüsselte Datenbank.
  8. BEACHTUNG: Auch in der decoded.kdbx-Kennwortdatei kann sich ein verschlüsseltes Formular befinden.
  9. Wir speichern die entschlüsselten und entkapften Daten als .xml-Datei.
  10. Wir finden darin alle Knoten namens "Wert", das "geschützte" Attribut, den Wert dieses Attributs "True" und nehmen Sie die Werte dieser Knoten an. Dies ist immer noch verschlüsselte Kennwörter.
  11. Wir decodieren alle verschlüsselten Kennwörter mit dem Base64Decode-Algorithmus.
  12. In der inneren Random-Stream-Header-ID sehen wir uns an, welchen Algorithmus bei verschlüsselten Kennwörtern verwendet wird. In meinem Fall war es SALSA20.
  13. Wir erzeugen eine Pseudo-Random-64-Byte-Sequenz mit dem SALSA20-Algorithmus:
    • Verwenden Sie als Schlüssel das mit SHA256 erhaltene geschützte Stream-Schlüsselkopffeld.
    • Als Initialisierungsvektor verwenden wir die konstante 8-Byte-Sequenz 0xE830094B97205D2A.
  14. WICHTIG: Mit dieser 64-Byte-Sequenz können Sie genau entschlüsseln 64 Zeichen in der Reihenfolge miteinander dekodierte Passwörter verbunden. Wenn dies nicht ausreicht, um alle Kennwörter zu entschlüsseln, müssen Sie die folgende pseudo-zufällige Sequenz generieren und Kennwörter fortsetzen usw. bis zum Ende.
  15. Um das endgültige Kennwort zu erhalten, ist es erforderlich, einen XOR mit einem Base64Decode-Kennwort mit einer in dem vorherigen Absatz erhaltenen pseudo-zufälligen Sequenz decodiert zu machen (in der untenstehenden Pseudocode ist eine verständliche Abfolge von Aktionen dargestellt).
  16. SEHR WICHTIG: Passwörter müssen in der Reihenfolge entschlüsseln! Es ist in der Sequenz, in der sie in präsentiert werden xML-Datei..
  17. Wir finden in der XML-Datei alle Knoten namens "Wert", dem "geschützten" Attribut, dem Wert dieses Attributs "True":
    • Ersetzen Sie den Attributwert auf "false".
    • Knotenwert Wir ersetzen das entschlüsselte Kennwort.
  18. Und nur jetzt haben wir eine vollständig entschlüsselte Keepass 2.x-Datenbank! Hurra! \u003d)

Pseudocode

bool decryt shapeTAs2x () (// Bestimmen Sie die Länge der verschlüsselten Datenbank // (Dateigröße - Signaturgröße - Headergröße) db_len \u003d file_size - Signature_size - header_size;

// entschlüsselt data decrypted_data \u003d decrypt_aes_256_cbc (master_key, verschlüssung, verschlüsselt_data); // Wir lernen die Anzahl der "unnötigen" Bytes extra \u003d entschlüstelt_data; Db_len - \u003d extra; // Wir prüfen, ob die ersten 32 Bytes der entschlüsselten Datenbank // mit dem Feld streamstartbytes zusammenfallen, wenn der Header (StreamStartBytes! \u003d Entschlüstelt_data) false zurückgibt; // Rendieren Sie diese 32 Bytes db_len - \u003d 32; entschlüsselt_data + \u003d 32; // Überprüfen Sie das Komprimierungsflagfeld des Headers // Wenn die Datei komprimiert wurde, entpacken Sie ihn nicht, wenn (komprimierflock \u003d\u003d 1) entpacken (entschlüstelt_data); // Überprüfen Sie die Integrität der While-Daten (db_len\u003e (BlockheerizeSize)) (// Lesen Sie den Block_Data-Datenbank-Header \u003d entschlüstelt_data; entschlüstelt_data + \u003d blockhesesize; db_len - \u003d blockhesesize; if (block_data.blockDataSize \u003d\u003d 0) (Pause;) // Empfangen von Hash-Datenblock Hash \u003d SHA256 (Entschlüsselt_Data); // Überprüfen Sie, ob der resultierende HASH mit dem Hash des Headers übereinstimmt, wenn (block_data.blockdatahash \u003d\u003d Hash) (Pure_Data + \u003d Entschlüsselt_Data; Entschlüsselt_Data + \u003d block_data.blockDataSize; db_len - \u003d block_data.blockDataSize;) sonst (Rückgabe falsch;)) // Speichern Sie die entschlüsselten und entkapitalen Daten als XML-Datei XML \u003d Pure_Data.toxml (); // Holen Sie sich einen Hash aus dem Schutzstreamschlüssel \u003d SHA256 (Schutzstreamkey); // Initialisieren Sie den SALSA20 IV_SALSA \u003d 0xE830094B97205D2A-Algorithmus; Salsa.setaste (Schlüssel); Salsa.setiv (IV_SALSA); strom_pointer \u003d 0; key_stream \u003d salsa.generatekeystream (); // Entschlüsseln während Kennwörter (TRUE) (// Finden Sie den folgenden Ansatz mit dem Namen "Wert", // "geschütztes" Attribut "Wert des Attributs" True "Node \u003d XML.FindNextelement (" Wert "," geschützt ") , "True"); if (node \u200b\u200b\u003d\u003d null) (brechen;) // endende Knoten und decodiert mit dem base64decode decoded_pass \u003d base64decode (node.value); // Entschlüsseln Sie das Kennwort mit der pseudo-zufälligen Sequenz Key_stream für (int i \u003d 0; ich< len(decoded_pass); i++) { decoded_pass[i] = decoded_pass[i] ^ key_stream; stream_pointer++; //если 64 байтной псевдослучайной последовательности не хватило, //генерируем еще одну последовательность if (stream_pointer >\u003d 64) (Key_stream \u003d salsa.generateKeystream (); strom_pointer \u003d 0;)) // Ersetzen Sie den Wert des Attributs "geschützt" auf "false" node.attribute.Value \u003d "(! Lang: false"; //заменяем зашифрованный пароль дешифрованным node.value = decoded_pass; } return true; !}


Hier im Allgemeinen und alles, was ich erzählen wollte. Ich hoffe, dass diese Führung jemanden aus zusätzlichen Kopfschmerzen retten und informativ und informativ ist \u003d)

Stichworte:

  • kryptographie.
  • keepass
  • aES-256.
  • sHA256.
Tags hinzufügen

Die Klingel.

Es gibt diejenigen, die diese Nachricht vor Ihnen gelesen haben.
Abonnieren Sie Artikel frisch.
Email
Name
Nachname
Wie willst du die Glocke lesen?
Ohne spam.