Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
オフェンシブセキュリティと隠蔽実行技術
Search
Fire
July 25, 2026
59
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
オフェンシブセキュリティと隠蔽実行技術
セキュリティLT会&交流会 #2での講演スライドです。
https://akiressecurity.connpass.com/event/399181/
Fire
July 25, 2026
More Decks by Fire
See All by Fire
ゼロトラストペネトレにおける情報持ち出し戦術最前線
firefire2
0
130
Azure Cloud ペンテスト入門(仮)
firefire2
0
1.1k
OSCPでのActive Directory攻略
firefire2
3
3.1k
サイバーセキュリティの話 Ver.20210904
firefire2
1
590
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
190
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
210
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
It's Worth the Effort
3n
188
29k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
640
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
Chasing Engaging Ingredients in Design
codingconduct
0
240
HDC tutorial
michielstock
2
750
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
310
Odyssey Design
rkendrick25
PRO
2
730
Transcript
2026/07/25 セキュリティLT会&交流会 #2 Offensive Security & Stealth Execution ペンテスターの視点から紐解く、正規機能を隠れ蓑にする実行技術 COM
Callback Execution Fire (@fire_fire_2)
01. オフェンシブセキュリティの概略
手法の分類:脆弱性診断から TLPTまで 手法 主な目的 重要視される要素 脆弱性診断 既知の脆弱性の網羅的な列挙 効率性、カバレッジ、再現性 ペネトレーションテスト 特定の目標達成(機密情報への到達等)
技術的深さ、エクスプロイト能力 レッドチーミング 組織全体の防御・検知・応答能力の検証 隠密性( Stealth)、実戦シナリオ TLPT 脅威ベースの高度な擬似攻撃演習 脅威インテリジェンスへの準拠、実効性 ※諸説あり
ペンテスターのミッション:検知回避 現代のエンタープライズ環境では、EDR(Endpoint Detection and Response)が常時稼働しており、挙動の監視が非常に厳しくなっ ています。 そのため、攻撃コードを単に「実行する」だけでは不十分であり、 「誰にも気づかれずに実行し続ける」 ための検知回避(Evasion) が実務の核心となります。
私たちはシステムの「バグ」だけでなく、システムの「正常な仕様」 がいかに攻撃に転用できるかを常に研究しています。
攻撃プロセスの構造 Initial Access Payload Delivery Execution フィッシングや脆弱性を通じて、標的 実行したい実体である「シェルコー OSの監視をすり抜け、CPUに命令 の端末内でコードを動かす。
ド」をメモリ上に配置する。 を解釈・実行させる。 本日のメインテーマ!
シェルコード:機械への直接命令 バイナリの世界 実行の第一歩 プログラムは最終的にCPUが直接解釈できるCPU命令 攻撃の第一歩は、このシェルコードをいかにして「正規の セットへと変換されます。 プロセスの一部」としてCPUに読み込ませるかにかかって この命令の断片が「シェルコード」であり、OSのプロセス います。 管理を介さずに機能を実行できる最小単位となります。
しかし、この「読み込み」の瞬間にこそ、防御側の最大の 監視ポイントが存在します。
API監視:防御側の主要武器 API呼び出しの常時監視 EDRはWindows APIの呼び出しをフックし、プログラムがどのような動作をしようとしているかをリアルタ イムで解析します。 疑わしい APIの即時ブロック CreateRemoteThread や WriteProcessMemory
といった、プロセスへの干渉に使われるAPIは監視 対象の筆頭です。不自然な呼び出しは即座に検知・遮断されます。 コンテキストの不整合検知 API単体ではなく、呼び出し元のスレッドの出所やコールスタックの整合性を確認し、不正なコードが混 入していないかをチェックします。
02. COM Callback Executionの詳解
IContextCallbackの仕組み 正規インターフェースの流用 検知を免れる理由 IContextCallback は、WindowsのCOM(Component この手法では、攻撃者が新たなスレッドを作成するので Object Model)における実行コンテキストの同期や切り はなく、「OSが正規に提供するコンテキスト切り替えフ 替えに使用される正規のインターフェースです。
ロー」の中にシェルコードを紛れ込ませます。 このインターフェースが持つ ContextCallback メソッド これにより、典型的なインジェクションのパターンから外 は、指定したコールバック関数を特定のコンテキスト下で れ、監視を潜り抜けることが可能になります。 実行させる機能を持ちます。
実装部分 実装の手順 // 1. COMコンテキストの取得 CoGetObjectContext IContextCallback void 1. VirtualAlloc等でメモリに配置したシェルコードのアドレス
(pPayload)を取得。 2. 標準的なCOM APIを用いて IContextCallback インターフェース // 2. シェルコードをコールバックとして登録 ContextCallback PFNCONTEXTCALL pPayload // 起点 nullptr を取得。 3. ContextCallback メソッドを呼び出す際、関数ポインタとしてシェ ルコードのアドレスを渡すことで、OS側に実行を「委託」する。
なぜこの手法が有効なのか テレメトリ(痕跡)の削減 新規スレッドの作成(Thread Creation)イベントが発生しないため、EDRの主要な検知ロジックをバイパス できます。 信頼されたコールスタック 実行時のコールスタックには combase.dll などの正規モジュールが含まれ、挙動が「システムの一部」 として見なされやすくなります。
APIフックの回避 低レイヤーの危険なAPIを直接叩くのではなく、高レイヤーのCOM APIを経由するため、監視の網に掛かりにくく なります。
Questions? ご清聴ありがとうございました。 攻撃を知ることは、より強固な防御を築くための第一歩です。