Meterpreterプロンプトでrun scraperコマンドを実行するとArgumentErrorが発生する
目次
問題
ターゲット端末に遠隔操作しているとき、Meterpreterプロンプト上でrun scrapterコマンドを実行しても、"Could not excute scraper: ArgumentError wrong number of arguments"というエラーメッセージが出るという報告を受けました。
Meterpreterスクリプト【補足】
run scraperコマンドは、scraperという名のMeterpreterスクリプトを実行するコマンドです。
Meterpreterセッションを奪った後、システムをさらに悪用するための定義済みのスクリプトが用意されています。これをMeterpreterスクリプトと呼びます。
現在のMetasploitではMeterpreterスクリプトがどこに格納しているかは確認していませんが、昔のバージョンであれば"/opt/metasploit-framework/embedded/framework/scripts/meterpreter"ディレクトリに配置されていました。
原因
新しいMetasploitではMeterpreterスクリプトをサポートしなくなったことが原因と考えられます。
今回はrun scraperコマンドがうまくいかないという話でしたが、他にもrun hashdumpコマンド、run persistanceコマンドも動作しないと推測できます。
対応方法
旧バージョンのMetasploitで実験する方法
旧バージョンで実験する方法を検証して頂きました。ありがとうございます🙇♀️
代替モジュールを用いる
Meterpreterスクリプトの1つであるpersistanceスクリプトはrun persistanceコマンドが実行できました。
しかし、Kaliのバージョンが上がると非推奨となり、それに伴いターゲット端末側でエラーが起きるという現象が報告されていました。
代わりにMetasploitに"post/windows/manage/persistence_exe"モジュールが用意されています。
未確認ですが、scraperもモジュールとして用意されている可能性があります(今なくても、今後サポートされる可能性あり)。
同様の動作を別の方法で実現する
MeterpreterスクリプトはRubyで書かれています。つまり、scraperスクリプトもRubyで記述されています。
実際に開いてみると動作やコマンドを把握できます。Windowsのレジストリにアクセスするので、おそらくRailgunを使っているはずです。
動作を解読して、モジュール化するというのもありだと思います。MeterpreterスクリプトもMetasploitのモジュールもどちらもRubyで記述します。scraperスクリプトのソースをどの程度流用できるかはわかりません。
おわりに
新しい情報をお待ちしております🙇♀️
Twitterで「#ハッキング・ラボ」というハッシュタグで投稿して頂ければ、捕捉次第ここに情報を追加します。
Posted by ipusiron
関連記事
ミジンコが気になったお得情報【2024年11月】
11/29はロッテリア 肉(29)の日 BLACK FRIDAY by 三井住友 ...
UnrealIRCのバックドアに接続しようとしても失敗する
問題 P.398のステップ9にて、Metasploitable2のUnreal ...
『1日で自作するポータブル・ハッキング・ラボ』の書籍ページを公開しました
『1日で自作するポータブル・ハッキング・ラボ』の書籍ページ(固定ページ)を公開し ...
What is Hacking Lab?
What is Hacking Lab? A hacking lab is a ...
M1 Macでハッキング・ラボに挑戦できるか?
いきさつ 『ハッキング・ラボのつくりかた』に対して、次のような質問が来たので記事 ...
Kaliの仮想マシンにおいて起動時に止まる現象を解消する
問題 VirtualBoxを用いて、KaliをゲストOSとした仮想マシンを構築し ...