Warnhinweis:
Die Informationen auf meinem Blog dienen ausschließlich und ausschließlich nur für Lehr- und Bildungszwecke. Ich dulde keinerlei illegale Aktivitäten und übernehmen auch zu keiner Zeit irgendeine Verantwortung für Handlungen jeglicher Art welche durch diese Informationen durchgeführt wurden!
Anwender, die sich nicht mit dem Thema IT-Sicherheit befassen, lassen absolut die Finger von Metasploit und/oder ähnlichen Tools, da diese nach Inkrafttreten des sogenannten Hackerparagrafen (§ 202c StGB) in Deutschland als Computerprogramm zum Ausspähen von Daten aufgefasst werden und somit allein schon der Besitz in Deutschland unter Strafe steht, wenn keine Berechtigung vorliegt.
Warning:
All the information displayed on my site are for learning or educational purposes only! I do not condone any illegal activity and take no responsibility at all for actions performed by anyone!
[xyz-ihs snippet=“ad“]
Es gibt viele Gründe das Metasploit Framework an eine Datenbank anzubinden. Allein der Zuwachs an Geschwindigkeit oder das direkte einspielen von den Sicherheitslücken welche über den Nessus-Scan gewonnen wurden sind hier die Hauptargumente.
Am einfachsten benutzt man hierzu die PostgesSQL Datenbank, welche von Metasploit bevorzugt wird. Laden Sie sich hierzu hier die neuste Version von PostgeSQL für OS X herunter und führen die Installation durch.
Während der Installation werden Sie gebeten ein Benutzerpasswort für Postges festzulegen. Merken Sie sich dieses gut, da Sie diese benötigen um später die Verbindung zwischen Metasploit Framework und der Datenbank aufzubauen.
Nach der Installation von PostgesSQL starten Sie PGAdmin III und klicken doppelt auf Connect on the local PostgeSQL database und geben das von Ihnen festgelegte Benutzerpasswort für Postgres ein. Danach legen Sie unter „Login Roles“ einen Neuen Benutzer durh auswählen des Punktes „New Login Role“. Nennen Sie diesen zum Beispiel „user“ klicken Sie nun auf den Tab „definition“ und geben diesem neu angelegten Benutzer ein Login Passwort zum Beispiel „pass“. Bestätigen Sie alle Änderungen durch „Continue“.
legen Sie nun eine neue Datenbank an durch klicken auf den Punkt „databases“, wählen Sie hier „New Database“. Ich empfehle hier den Naben der Datenbank auf „Metasploit“ festlegen, so dass Sie diese leicht wieder finden können. Als „owner“ wählen die hier den „user“ aus. Jetzt noch alles mit OK bestätigen.
[xyz-ihs snippet=“ad“]
Als nächstes starten Sie die msfconsole und geben dort db_connect ein. Hier erscheint jetzt die Aufforderung die RubyGems für Postgres zu installieren. Diese Installieren Sie durch das eingeben von:
gem install pg
Beenden Sie jetzt das Metasploit Framework mit dem Befehl:
exit
und starten Sie die Metasploit Konsole neu. Wenn Sie sich an meine obige Anleitung gehalten haben. müssen Sie nur nun folgendes in der Metasploit Console eingeben:
db_connect user:pass@127.0.0.1:5432/Metasploit
Jetzt müssten Sie folgendes im Terminal ausgegeben bekommen:
[xyz-ihs snippet=“ad“]
Verwendetes System:
MacBook Pro mid 2010
OS X 10.7.5 (Lion)
Metasploit Version: 4.5.0 – dev
PostgreSQL Version: 9.2
Xcode Version 4.5.2
© Raffael Haberland 2012
security.haberland.it, info@haberland.it
Hallo,
wenn ich metasploit starte kommt bei mir das erste mal :
[*] Starting the Metasploit Framework console…/[-] Failed to connect to the database: could not connect to server: Connection refused
Is the server running on host „localhost“ (127.0.0.1) and accepting
TCP/IP connections on port 7337?
danach startet es normal aber zb. search dauret gaaanz lange etc..
was ist das problem bei mir ? muss ich eine database installieren?
ich benuze mint qiana.
mit freundlichen grüßen ,
jenny
Sie müssen einen Datenbank installieren, bzw. den Server starten oder den richtigen Port einstellen. Verwenden Sie postgres und legen dort einen Benutzer mit Passwort an.
Hallo ,
Ich habe das selbe problem und nuze auch Linux ,
haben sie eine Anleitung dafür?
best regards,
tom
Was für eine Anleitung 😉 Wie Sie das ganze mit einer DB Verbinden steht doch in meinem Blog.
Also funktioniert es auch mit linux direkt so wie im Blog geschrieben?
Auch die cmds?
gem install pg
db_connect user:pass@127.0.0.1:5432/Metasploit
oder ist es so nur beim Mac?
best regards,
Tom
Ja, das sollte klappen, Mac baut auf UNIX auf und sollte von daher ähnlich sein.
db_connect user:pass@127.0.0.1:5432/Metasploit geht auf jeden Fall, da das denn bei msf ein Befehl ist.
gem install pg müsste auch gehen, da das Ruby ist, von daher sollte klappen
Dann ist gut aber Ich verstehe eins nicht:
db_connect user:pass@127.0.0.1:5432/Metasploit
wieso auf port 5432? Auf dem fehler steht doch:
Is the server running on host “localhost” (127.0.0.1) and accepting
TCP/IP connections on port 7337?
Also will Metasploit port 7337 oder hab ichs falsch verstanden?
Und ich habe noch eine frage :
was für ports braucht metasploit im allgemeinen?
Ich benuze iptables und habe alle ausgehenden und eingehenden ports blockiert außer:
(21,25,43,110,123,143,194,220,443,465,990,993,994,995,4557,4559,80)tcp
(53)udp die ports habe ich ausgehend aktiviert.
Muss ich bei der nuzung von meta… noch irgendwelche ports zulassen? und ein oder aus ?
Bedanke mich herzlich,
tom
Ich weis nicht auf welchen Port Sie Ihre DB gelegt haben. Die Ports die MSF benutzt können Sie selbst wählen, hier gibt es keine Standart Ports 😉
Ich habe postge noch nicht installiert,
wegen den ports :
reichen meine offenen? Ich hatte mir sorgen gemacht weil bei der installation im setup stand das ich die firewall ausschalten soll bevor ich msf starte aber ich habe immer meine fw angelassen.
Sie brauchen sich doch keine Sorgen um die offenen Ports machen, da Sie das ganze doch eh unter laborbedinungen machen und in einem separaten Netzwerk austesten 😉
Unter labor bedingungen mit eigenen Pcs und in einem separaten netz das stimmt ,dann brauche ich mir keine sorgen zu machen wie sie sagten 🙂 .
Jezt habe ich ein problem beim einrichten von postges ich habe das PostgreSQL package installiert und danach pgAdmin 3 das passwort habe ich über cmd:
$ sudo -u postgres psql postgres
\password postgres
erstellt.
Beim schritt 2:Nach der Installation von PostgesSQL starten Sie PGAdmin III und klicken doppelt auf Connect on the local PostgeSQL database und geben das von Ihnen festgelegte Benutzerpasswort für Postgres ein. Danach legen Sie unter “Login Roles” einen Neuen Benutzer durh auswählen des Punktes “New Login Role”. Nennen Sie diesen zum Beispiel “user” klicken Sie nun auf den Tab “definition” und geben diesem neu angelegten Benutzer ein Login Passwort zum Beispiel “pass”. Bestätigen Sie alle Änderungen durch “Continue”.
legen Sie nun eine neue Datenbank an durch klicken auf den Punkt “databases”, wählen Sie hier “New Database”. Ich empfehle hier den Naben der Datenbank auf “Metasploit” festlegen, so dass Sie diese leicht wieder finden können. Als “owner” wählen die hier den “user” aus. Jetzt noch alles mit OK bestätigen.
hier habe ich gescheitert weil pgAdmin3 bei mir auf deutsch ist und ich finde kein „Connect on the local PostgeSQL database“
bei den optionen gibt es zb. „Einen neuen server hinzufügen“,es gibt auch einen stecker da steht „Verbindung zum Server hinzufügen“.
Ich weiß nicht wie ich weiter komme und bitte um hilfe.
Danke im voraus,
tom
Voilá, dann machen Sie mal die Man-Page von pg auf mit „man postgres“ dann legen Sie einen neue Datenbank an und einen neuen User, danach schauen Sie auf welchem Port Ihre Datenbank „hört“ und verbinden msf mit der DB. Den Rest macht msf für Sie.
Falls Sie das ganze über die „GUI“ machen wollen, müssen Sie erst einen neuen Server hinzufügen. Eine Verbindung, wäre z.B. wenn Sie einen ausgelagerten Server verwenden wollen z.B. bei Amazon oder so.
Kann ich auch alles local machen ohne externen server? Es ist mir nämlich unheimlig einen server von dritten wie amazon zu benutzen.
Ich habe versucht einen user anzulegen mit : tommy@am ~ $createuser -d -r -P -E username
ohne -S sonst hat der user keine root rechte.
Aber es ging nicht da kommt nur ein error :
createuser: could not connect to database postgres: FATAL: role „Tommy“ does not exist
Was hab ich falsch gemacht?
Eine server connection habe ich natürlich noch nicht (ist mir auch lieber wenn ich es nicht brauche)wenn ich es trotzdem brauche dann wenn es geht „local“.
Danke nochmal für die hilfe
natürlich können Sie das auch lokal machen, würde ich Ihnen sogar empfehlen.
User anlegen
Bitte verwenden Sie doch mal Google für solche trivialen Fälle 😉
Ich hab es auf die strecke bekommen .
Habe die DB und den user gelöscht, sie können den post mit den details löschen.
Wie soll ich mit man postgres eine neue DB anlegen und dann ein user?Habs einfach nicht hin bekommen :/
könnten sie mir bitte eine schritt für schritt anleitung for:dann machen Sie mal die Man-Page von pg auf mit “man postgres” dann legen Sie einen neue Datenbank an und einen neuen User, danach schauen Sie auf welchem Port Ihre Datenbank “hört” . Posten?!
Danke ihnen herzlich
Wenn Sie den Server warten sollte eigentlich dabei stehen, welcher Port verwendet wird, Standard Port sollte jedoch meines Wissens 5432 sein
Danke hat alles prima geklappt.
Noch ein tipp für jenen der es nicht schafft,
1.einfach postgres installieren
2.normal msf runterladen dann den setup starten
3.abwarten alles wird automatisch beim setup gemacht auch die DB 😉
easy
best regards
Freut mich, dass es geklappt hat.