本文较为详细的讲述了Python实现远程调用MetaSploit的方法,对Python的学习来说有很好的参考价值。具体实现方法如下:
(1)安装Python的msgpack类库,MSF官方文档中的数据序列化标准就是参照msgpack。
root@kali:~# apt-get install python-setuptools root@kali:~# easy_install msgpack-python
(2)创建createdb_sql.txt:
create database msf; create user msf with password 'msf123'; grant all privileges on database msf to msf;
(3)在PostgreSQL 执行上述文件:
root@kali:~# /etc/init.d/postgresql start root@kali:~# sudo -u postgres /usr/bin/psql < createdb_sql.txt
(4)创建setup.rc文件
db_connect msf:msf123@127.0.0.1/msf load msgrpc User=msf Pass='abc123'
(5)启动MSF并执行载入文件
root@kali:~# msfconsole -r setup.rc * SNIP * [*] Processing setup.rc for ERB directives. resource (setup.rc)> db_connect msf:msf123@127.0.0.1/msf [*] Rebuilding the module cache in the background... resource (setup.rc)> load msgrpc User=msf Pass='abc123' [*] MSGRPC Service: 127.0.0.1:55552 [*] MSGRPC Username: msf [*] MSGRPC Password: abc123 [*] Successfully loaded plugin: msgrpc
(6)Github上有一个Python的类库,不过很不好用
root@kali:~# git clone git://github.com/SpiderLabs/msfrpc.git msfrpc root@kali:~# cd msfrpc/python-msfrpc root@kali:~# python setup.py install
测试代码如下:
#!/usr/bin/env python import msgpack import httplib class Msfrpc: class MsfError(Exception): def __init__(self,msg): self.msg = msg def __str__(self): return repr(self.msg) class MsfAuthError(MsfError): def __init__(self,msg): self.msg = msg def __init__(self,opts=[]): self.host = opts.get('host') or "127.0.0.1" self.port = opts.get('port') or 55552 self.uri = opts.get('uri') or "/api/" self.ssl = opts.get('ssl') or False self.authenticated = False self.token = False self.headers = {"Content-type" : "binary/message-pack" } if self.ssl: self.client = httplib.HTTPSConnection(self.host,self.port) else: self.client = httplib.HTTPConnection(self.host,self.port) def encode(self,data): return msgpack.packb(data) def decode(self,data): return msgpack.unpackb(data) def call(self,meth,opts = []): if meth != "auth.login": if not self.authenticated: raise self.MsfAuthError("MsfRPC: Not Authenticated") if meth != "auth.login": opts.insert(0,self.token) opts.insert(0,meth) params = self.encode(opts) self.client.request("POST",self.uri,params,self.headers) resp = self.client.getresponse() return self.decode(resp.read()) def login(self,user,password): ret = self.call('auth.login',[user,password]) if ret.get('result') == 'success': self.authenticated = True self.token = ret.get('token') return True else: raise self.MsfAuthError("MsfRPC: Authentication failed") if __name__ == '__main__': # Create a new instance of the Msfrpc client with the default options client = Msfrpc({}) # Login to the msfmsg server using the password "abc123" client.login('msf','abc123') # Get a list of the exploits from the server mod = client.call('module.exploits') # Grab the first item from the modules value of the returned dict print "Compatible payloads for : %s\n" % mod['modules'][0] # Get the list of compatible payloads for the first option ret = client.call('module.compatible_payloads',[mod['modules'][0]]) for i in (ret.get('payloads')): print "\t%s" % i
相信本文所述方法对大家的Python学习可以起到一定的学习借鉴作用。

Pythonは、データサイエンス、Web開発、自動化タスクに適していますが、Cはシステムプログラミング、ゲーム開発、組み込みシステムに適しています。 Pythonは、そのシンプルさと強力なエコシステムで知られていますが、Cは高性能および基礎となる制御機能で知られています。

2時間以内にPythonの基本的なプログラミングの概念とスキルを学ぶことができます。 1.変数とデータ型、2。マスターコントロールフロー(条件付きステートメントとループ)、3。機能の定義と使用を理解する4。

Pythonは、Web開発、データサイエンス、機械学習、自動化、スクリプトの分野で広く使用されています。 1)Web開発では、DjangoおよびFlask Frameworksが開発プロセスを簡素化します。 2)データサイエンスと機械学習の分野では、Numpy、Pandas、Scikit-Learn、Tensorflowライブラリが強力なサポートを提供します。 3)自動化とスクリプトの観点から、Pythonは自動テストやシステム管理などのタスクに適しています。

2時間以内にPythonの基本を学ぶことができます。 1。変数とデータ型を学習します。2。ステートメントやループの場合などのマスター制御構造、3。関数の定義と使用を理解します。これらは、簡単なPythonプログラムの作成を開始するのに役立ちます。

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

Python 3.6のピクルスファイルのロードレポートエラー:modulenotFounderror:nomodulenamed ...

風光明媚なスポットコメント分析におけるJieba Wordセグメンテーションの問題を解決する方法は?風光明媚なスポットコメントと分析を行っているとき、私たちはしばしばJieba Wordセグメンテーションツールを使用してテキストを処理します...


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SublimeText3 中国語版
中国語版、とても使いやすい

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません
