
Eine entfernte msfconsole, geschrieben in Python 2.7, um sich mit dem msfrcpd server von metasploit zu verbinden. Dieses Tool gibt Ihnen die Möglichkeit, Module dauerhaft als Daemon auf Ihrem Server zu laden, wie autopwn2.
Dieses Tool wird von mir nicht mehr gewartet. Es gibt bessere Alternativen von Rapid7 selbst, wie hier beschrieben: Wie man Metasploit remote ausführt
Beispiel:
Um msf-Befehle von anderen Orten als dem metasploit-framework-Verzeichnis aus nutzbar zu machen, setzen Sie die GEM_HOME-Variable. Um den erforderlichen Pfad zu finden, wechseln Sie in das metasploit-framework-Verzeichnis und führen Sie aus:
$ rvm gemdir
/usr/local/rvm/gems/ruby-2.5.1@metasploit-framework
$ rvm use 2.5.1@metasploit-framework
Um Metasploit als Daemon zu starten, müssen Sie das Dienstprogramm msfd ausführen, das standardmäßig auf Port 55554 öffnet.
$ ./msfd -a 127.0.0.1
Um eine Verbindung zum Daemon herzustellen, verwenden Sie netcat wie im folgenden Beispiel:
$ nc 127.0.0.1 5554
Eine entfernte msfconsole, geschrieben in Python 2.7, um eine Verbindung zum msfrpcd-Server von Metasploit herzustellen. Dieses Tool gibt Ihnen die Möglichkeit, Module dauerhaft als Daemon auf Ihrem Server zu laden, wie autopwn2. Obwohl es Ihnen die Möglichkeit gibt, den msfrpcd-Server remote zu nutzen, wird empfohlen, ihn lokal mit einer SSH- oder Mosh-Shell zu verwenden, da die Zertifikatsvalidierung nicht aktiviert ist.
[*] Connecting to server:
Host => myDomain.com,
Port => 55553,
User => msf,
Pwd => ***,
SSL => True
[+] Successfully connected
[*] Console id: 19
, ,
/ \
((__---,,,---__))
(_) O O (_)_________
\ _ / |\
o_o \ M S F | \
\ _____ | *
||| WW|||
||| |||
=[ metasploit v4.12.22-dev-52b81f3 ]
+ -- --=[ 1577 exploits - 906 auxiliary - 272 post ]
+ -- --=[ 455 payloads - 39 encoders - 8 nops ]
+ -- --=[ Free Metasploit Pro trial: http://r-7.co/trymsp ]
msf >
Usage: Main.py [options]
Options:
-h, --help show this help message and exit
-r RESOURCE, --resource=RESOURCE
Path to resource file
-u USERNAME, --user=USERNAME
Username specified on msfrpcd
-p PASSWORD, --pass=PASSWORD
Password specified on msfrpcd
-s, --ssl Enable ssl
-P PORT, --port=PORT Port to connect to
-H HOST, --host=HOST Server ip
-c, --credentials Use hardcoded credentials
-e, --exit Exit after executing resource script
Mit der Option -c können Sie die in Main.py fest codierten Anmeldeinformationen verwenden. Sie können diese gerne ändern, damit Sie nicht ständig die Parameter für die Anmeldeinformationen verwenden müssen.
Mit der Option -r geben Sie ein Ressourcen-Skript an, das von Ihrem Computer in die Konsole geladen werden soll.
Dies lädt ein Ressourcen-Skript und verwendet die fest codierten Anmeldeinformationen:
python Main.py -c -r /root/resource/handler/allHandlers.rc
Dies meldet sich über Befehlszeilenargumente beim msfrpcd-Server an:
python Main.py --ssl --port 55553 --host 127.0.0.1 --user msf --pass msf
Zuerst muss Metasploit installiert sein. Wenn Sie den Installer nicht verwenden können, weil Sie keine grafische Oberfläche oder ähnliches haben, verwenden Sie diese Anleitung von Rapid7: Nightly installers. Dies installiert alle benötigten Abhängigkeiten:
curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall && \
chmod 755 msfinstall && \
./msfinstall
git clone https://github.com/allfro/pymetasploit.git pymetasploit
cd pymetasploit && sudo python setup.py install
Vergessen Sie auch nicht, Ihren msfrpcd-Server zu starten:
cd metasploit-framework/
ruby msfrpcd -U msf -P msf -p 55553
Und es ist wahrscheinlich eine gute Idee, die PostgreSQL-Datenbank zu starten und eine Verbindung herzustellen: Ändern Sie übrigens das Passwort in der echo-Zeile.
sudo update-rc.d postgresql enable
sudo service postgresql start
echo "create database msf;create user msf with password 'password';grant all privileges on database msf to msf;" > createdb_sql.txt
sudo -u postgres /usr/bin/psql < /home/postgres/createdb_sql.txt
In Metasploit:
db_connect msf:[email protected]/msf