Hackerboard WikiHaboBlog

[HaBo]

 
Cryptography & Encryption Ver- und Entschlüsselung, Algorithmen, Kryptoanalyse ? Kryptographie in der Praxis. Blowfish, Triple-DES, XOR u.a.

C++ Firefox Passwörter

Diskussion: C++ Firefox Passwörter im Forum Cryptography & Encryption, in der Kategorie Security Area; Hallo, ich wollte fragen wie die Firefox Passwörter (signons.sqlite) verschlüsselt sind bzw wie ich sie mit c++ wieder entschlüsseln kann??? ...

Antwort
Alt 25.11.09, 14:37   #1 (permalink)
 
Registriert seit: 25.11.09
metoin Leistung: Facit NTK
Likes: 0
Standard C++ Firefox Passwörter


Hallo,

ich wollte fragen wie die Firefox Passwörter (signons.sqlite) verschlüsselt sind bzw wie ich sie mit c++ wieder entschlüsseln kann???


Danke im Vorraus


MFG Metoin

metoin ist offline   Mit Zitat antworten
Alt 25.11.09, 15:00   #2 (permalink)
 
Benutzerbild von Extinction
 
Registriert seit: 02.01.07
Extinction Leistung: Facit NTK
Likes: 0
Standard

Geht es um das Auslesen der Datenbank oder um das entschlüsseln?

Öffnen kannst du die unter Linux z.B. so:
Code:
extinction@extinction-desktop:~$ sqlite3 /home/extinction/.mozilla/firefox/4ikoei22.default/signons.sqlite
SQLite version 3.6.16
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .tables
moz_disabledHosts  moz_logins       
sqlite> select * from moz_logins;
*Hier der Inhalt deiner login-Daten Tabelle*
Für's laden in C++ mach ich hier mal n bischen copy&paste aus nem Projekt...
sqlite3 class and helper functions   

//Bin mir grad nich sicher, ob es diese Header waren:
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
#include <stdio.h>
#include <sqlite3.h>

class SQLITE3 {
private:
sqlite3 *db;
char *zErrMsg;
char **result;
int rc;
int nrow,ncol;

public:

std::vector<std::string> vcol_head;
std::vector<std::string> vdata;
int db_open;

SQLITE3 (): zErrMsg(0), rc(0),db_open(0)
{
db_open = 0;
}

void init(std::string tablename="init.db")
{
if (!ExistFile(tablename))
{
std::ofstream out; out.open(tablename.c_str()); out.close();
}
rc = sqlite3_open(tablename.c_str(), &db);
if( rc )
{
fprintf(stderr, "Can't open database: %sn", sqlite3_errmsg(db));
sqlite3_close(db);
}
db_open=1;
}

void close()
{
sqlite3_close(db);
db_open=0;
}

int exe(std::string s_exe)
{
rc = sqlite3_get_table(
db, /* An open database */
s_exe.c_str(), /* SQL to be executed */
&result, /* Result written to a char *[] that this points to */
&nrow, /* Number of result rows written here */
&ncol, /* Number of result columns written here */
&zErrMsg /* Error msg written here */);

if(vcol_head.size()<0) vcol_head.clear();
if(vdata.size()<0) vdata.clear();

if( rc == SQLITE_OK )
{
for(int i=0; i < ncol; ++i)
vcol_head.push_back(result[i]); /* First row heading */
for(int i=0; i < ncol*nrow; ++i)
if (result[ncol+i]!=NULL) vdata.push_back(result[ncol+i]);
else vdata.push_back("");
} else if (rc != 0 && rc != 1) std::cout << "Error no.: " << rc << std::endl;
sqlite3_free_table(result);
return rc;
}

~SQLITE3()
{
sqlite3_close(db);
}
};

SQLITE3 sql;

int sql_close_if_open()
{
if (sql.db_open) sql.close();
return sql.db_open;
}

void sql_exe(std::string cmd)
{
sql.vcol_head.clear();
sql.vdata.clear();
sql.exe(cmd);
}

void sql_exe(std::string cmd, std::vector<std::string> *header, std::vector<std::string> *Data)
{
sql.vcol_head.clear();
sql.vdata.clear();
sql.exe(cmd);
*header = sql.vcol_head;
*Data = sql.vdata;
}

Ich hab mir die Klasse aber auch nicht ausgedacht, k.A. wo ich die her hatte... ^^
Die letzten 3 Funktionen sind von mir. Man merkt, dass ich nicht gerne mit Klassen arbeite.

Nicht vergessen die SQLITE3 Librarys zu includieren. Wie du das unter Win machst, sei das Problem eines Anderen...

Bzgl. der Hashes (denk ich doch mal, dass es welche sind, habe mich da nicht mit auseinander gesetzt) kann ich dir auch nicht weiter helfen. Bin mir auch gar nicht sicher, ob das mit den Forenregeln vereinbar ist.
Schau dir da einfach mal den Source vom Firefox an oder google... "signons.sqlite hash encryption" oder so.
Extinction ist offline   Mit Zitat antworten
   
HaBOT
 

Werbung ist gerade online    
Alt 25.11.09, 20:20   #3 (permalink)
Themenstarter
 
Registriert seit: 25.11.09
metoin Leistung: Facit NTK
Likes: 0
Standard

ne auslesen kann ich ich möchte es nur entschlüsseln
metoin ist offline   Mit Zitat antworten
Alt 05.01.10, 00:35   #4 (permalink)
 
Benutzerbild von Stein
 
Registriert seit: 10.10.05
Stein Leistung: Facit NTK
Stein eine Nachricht über ICQ schicken
Likes: 0
Standard

http://board.gulli.com/thread/382176...r-amp-firefox/

Zitat:
Gespeicherte Passwörter in Firefox werden nur dann verschlüsselt abgelegt, wenn auch ein Masterpasswort gesetzt ist.
Wenn du also kein Masterpasswort hast werden die also unverschlüsselt gespeichert anders währe auch sehr wenig sinnvoll da Firefox ja Opensource ist.
Stein ist offline   Mit Zitat antworten
Antwort
   

Werbung ist gerade online    

[HaBo] » Security Area » Cryptography & Encryption » C++ Firefox Passwörter
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61