当サイトの一部ページには、アフィリエイト・アドセンス・アソシエイト・プロモーション広告を掲載しています。

Amazonのアソシエイトとして、Security Akademeiaは適格販売により収入を得ています。

広告配信等の詳細については、プライバシーポリシーページに掲載しています。

消費者庁が、2023年10月1日から施行する景品表示法の規制対象(通称:ステマ規制)にならないよう、配慮して記事を作成しています。もし問題の表現がありましたら、問い合わせページよりご連絡ください。

参考:令和5年10月1日からステルスマーケティングは景品表示法違反となります。 | 消費者庁

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で「#ハッキング・ラボ」というハッシュタグで投稿して頂ければ、捕捉次第ここに情報を追加します。