
واجهة msfconsole عن بُعد مكتوبة بلغة Python 2.7 للاتصال بخادم msfrcpd الخاص بـ metasploit. تمنحك هذه الأداة القدرة على تحميل الوحدات بشكل دائم كـ daemon على خادمك مثل autopwn2.
لن يتم الحفاظ على هذه الأداة من قبلي بعد الآن. هناك بدائل أفضل من Rapid7 نفسها كما هو موضح هنا: How to run metasploit remotley
مثال:
لجعل أوامر msf قابلة للاستخدام من خارج دليل metasploit-framework، قم بتعيين متغير GEM_HOME. للعثور على المسار المطلوب، انتقل إلى دليل metasploit-framework ونفذ:
$ rvm gemdir
/usr/local/rvm/gems/ruby-2.5.1@metasploit-framework
$ rvm use 2.5.1@metasploit-framework
لبدء تشغيل Metasploit كخدمة خلفية (daemon)، تحتاج إلى تشغيل أداة msfd، والتي تفتح على المنفذ 55554 افتراضيًا.
$ ./msfd -a 127.0.0.1
للاتصال بالخدمة الخلفية، استخدم netcat كما في المثال التالي:
$ nc 127.0.0.1 5554
وحدة تحكم msf عن بُعد مكتوبة بلغة Python 2.7 للاتصال بخادم msfrpcd الخاص بـ metasploit. تمنحك هذه الأداة القدرة على تحميل الوحدات بشكل دائم كخدمة خلفية على الخادم الخاص بك مثل autopwn2. على الرغم من أنها تمنحك القدرة على استخدام خادم msfrpcd عن بُعد، يُوصى باستخدامها محليًا مع قشرة ssh أو mosh لأن التحقق من الشهادة غير ممكن.
[*] 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 >
الاستخدام: 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
مع الخيار -c يمكنك استخدام بيانات الاعتماد المضمنة بشكل ثابت في Main.py، لا تتردد في تغييرها حتى لا تضطر إلى استخدام معاملات بيانات الاعتماد في كل مرة.
مع الخيار -r تحدد ملف نصي للموارد (resource script) لتحميله من جهاز الكمبيوتر الخاص بك إلى وحدة التحكم.
سيؤدي هذا إلى تحميل ملف نصي للموارد واستخدام بيانات الاعتماد المضمنة:
python Main.py -c -r /root/resource/handler/allHandlers.rc
سيؤدي هذا إلى تسجيل الدخول إلى خادم msfrpcd عبر وسائط سطر الأوامر:
python Main.py --ssl --port 55553 --host 127.0.0.1 --user msf --pass msf
أولاً، يجب أن يكون لديك metasploit مثبتًا. إذا لم تتمكن من استخدام المثبت لأنه ليس لديك بيئة رسومية أو أيًا كان، استخدم هذا الدليل من rapid7: Nightly installers. سيؤدي هذا إلى تثبيت جميع التبعيات المطلوبة:
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
ولا تنسَ أيضًا تشغيل خادم msfrpcd الخاص بك:
cd metasploit-framework/
ruby msfrpcd -U msf -P msf -p 55553
ومن الجيد أيضًا بدء تشغيل قاعدة بيانات postgresql والاتصال بها: بالمناسبة، قم بتغيير كلمة المرور في سطر echo.
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
في Metasploit:
db_connect msf:[email protected]/msf