SMB / MSRPC / NTLM
このカテゴリは SMB セッション、NTLM トークン、Endpoint Mapper、
relay を扱います。CLI は通常 SMBConnection だけを見ますが、
dialect と署名鍵は内側の smb.SMB / smb3.SMB3 が持ちます。
関連する技術
Section titled “関連する技術”- SMB / NetBIOS — 139/445、署名、SMB3 ApplicationKey
- NTLM / SPNEGO / NEGOEX — Type1/2/3、MIC、CBT
- DCE/RPC と NDR — EPM、string binding
- Kerberos —
cifs/<host>の AP-REQ
SimpleSMBServer は SMB 2.0.2、2.1、3.1.1 に対応します。relay を足すときは
inbound server、outbound client、attack module、target 状態の 4 境界を
崩さないでください。
コマンド一覧
Section titled “コマンド一覧”| コマンド | 概要 |
|---|---|
| DumpNTLMInfo.py | SMB または RPC で NTLM のネゴシエーションを行い、チャレンジに含まれる情報、SMB の設定、時刻などを表示します。 |
| Get-GPPPassword.py | ローカルまたは SMB 共有上の Group Policy Preferences XML を探し、cpassword を抽出・復号します。 |
| attrib.py | SMB 上のファイルやディレクトリの DOS/NTFS 属性を照会・変更します。 |
| filetime.py | SMB 上のファイルやディレクトリについて、作成・アクセス・更新・変更の時刻を照会・変更します。 |
| getArch.py | RPC Endpoint Mapper への接続結果から、対象ホストが 32 ビットか 64 ビットかを推定します。 |
| karmaSMB.py | クライアントが要求した共有名やファイル名に合わせてペイロードを返す、検証用の SMB サーバーを起動します。 |
| ntlmrelayx.py | 受け取った NTLM 認証を選択した対象へリレーし、対応する攻撃モジュールを実行します。複数の受信・転送プロトコルに対応します。 |
| rpcdump.py | Endpoint Mapper に問い合わせ、対象ホストが公開する RPC インターフェースと接続情報を一覧にします。 |
| rpcmap.py | 指定した DCE/RPC 接続先で、管理インターフェースや探索によって利用可能な UUID、バージョン、opnum を調べます。 |
| sambaPipe.py | Samba の外部パイプモジュール読み込みを検証するため、共有に .so を配置して名前付きパイプを開きます。 |
| smbclient.py | SMB 共有、ディレクトリ、ファイル、ACL を操作する対話シェルです。入力ファイルによる一括実行にも対応します。 |
| smbserver.py | ローカルディレクトリを SMB 共有として公開します。SMB1 と SMB 2.0.2/2.1/3.1.1、NTLM/Kerberos 認証、読み取り専用設定に対応します。 |
| rdp_check.py | RDP/CredSSP で指定したアカウントの認証可否を確認します。 |

