Communityコーディング&開発github.com

yaklang/macos-process-injection

macOSプロセスインジェクションのプレイブック。dylibハイジャック、DYLD環境変数、XPCエクスプロイト、Machポート操作、Electron/Chromium悪用などを通じて、実行中または起動中のmacOSプロセスにコードを注入する必要がある場合に使用します。

macos-process-injection とは?

このスキルは、macOS環境におけるプロセスインジェクション攻撃のための包括的なプレイブックを提供します。dylibハイジャック、DYLD_INSERT_LIBRARIES環境変数の悪用、XPCサービスへの不正コード注入、Machポートを介したプロセス間通信の操作、そしてElectron/Chromiumベースのアプリケーションのフレームワーク特性を利用した注入手法をカバーしています。各手法は、macOSのセキュリティメカニズム(SIP、ハードニング付きランタイム、コード署名制約)の回避方法と、実際の攻撃シナリオに基づいた詳細な手順を含んでいます。このスキルは、macOS上で動作するClaude Codeやその他のAIエージェントが、権限昇格や永続性の確立、ターゲットプロセス内での任意コード実行を必要とするタスクを自動化するために設計されています。各インジェクション手法の原理、必要な前提条件、検出回避テクニック、および実行例が明確に文書化されており、セキュリティ研究者やレッドチームメンバーがmacOSの内部メカニズムを深く理解するためのリファレンスとしても機能します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/yaklang/hack-skills/tree/main/skills/macos-process-injection

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

macos-process-injection は何をしますか?

macOSプロセスインジェクションのプレイブック。実行中または起動中のmacOSプロセスに、dylibハイジャック、DYLD環境変数、XPCエクスプロイト、Machポート操作、Electron/Chromium悪用などを通じてコードを注入する必要がある場合に使用します。

概要

このスキルは、macOS環境でプロセスインジェクションを実行するための様々な手法をカバーしています。各手法は、その仕組み、必要な前提条件、および実際の実装手順とともに説明されています。

インジェクション手法

1. Dylibハイジャック

DYLD_INSERT_LIBRARIES環境変数を使用して、ターゲットプロセスにカスタムdylibを強制的に読み込ませる手法。

サポート対象: ターミナルから起動されるプロセス、スクリプトや別のプロセスから起動されるプロセス。

制限事項: ハードニング付きランタイムが有効なプロセスや、com.apple.security.cs.disable-library-validation権限を持たないプロセスでは機能しません。

使用例:

DYLD_INSERT_LIBRARIES=/path/to/inject.dylib /Applications/App.app/Contents/MacOS/App

2. DYLD環境変数

DYLD環境変数(DYLD_FRAMEWORK_PATH、DYLD_LIBRARY_PATHなど)を悪用して、正当なライブラリを悪意のあるバージョンで置き換える手法。

サポート対象: 動的リンクを使用するmacOSアプリケーション。

制限事項: SIP(システム整合性保護)が有効なシステムでは、保護されたディレクトリ内のライブラリの読み込みを防止する場合があります。

使用例:

DYLD_FRAMEWORK_PATH=/path/to/malicious /Applications/App.app/Contents/MacOS/App

3. XPCエクスプロイト

XPCサービスに不正コードを注入する手法。XPCサービスはアプリケーション間通信のためのメカニズムであり、これにより特権昇格が可能になります。

サポート対象: XPCサービスを使用するmacOSアプリケーション。

制限事項: XPCサービスのエントロピーポリシーによる制限や、サンドボックス化されたサービスには対応していない場合があります。

使用例:

# XPCサービスに接続
launchctl load /path/to/malicious.plist

4. Machポート操作

Machポートを介して、ターゲットプロセスのアドレス空間にアクセスし、コードを注入する手法。

サポート対象: 同一ユーザーが所有するプロセス、またはルート権限を持つプロセス。

制限事項: task_for_pid 権限が必要であり、macOS Mojave以降では制限されています。

使用例:

// Mach APIを使用したプロセスインジェクションの例
task_t target_task;
task_for_pid(mach_task_self(), target_pid, &target_task);
// ... メモリ割り当てとコード注入

5. Electron/Chromiumの悪用

ElectronおよびChromiumベースのアプリケーションのJavaScriptエンジンまたはNode.js統合機能を悪用して、コードを注入する手法。

サポート対象: Electronベースのアプリケーション(例:Slack、Discord、Visual Studio Code)。

制限事項: nodeIntegrationやcontextIsolationなどのElectronのセキュリティ設定によって制限されます。

使用例:

// アプリのプリロードスクリプトを介したコード注入
document.addEventListener('DOMContentLoaded', function() {
    // ここに悪意のあるコード
});

注意事項

  • 使用する前に、各手法の法的および倫理的な影響を理解してください。
  • テスト目的でのみ使用し、承認された環境でのみ実行してください。
  • macOSのセキュリティアップデートにより、手法が機能しなくなる可能性があります。

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

yaklang/401-403-bypass-techniques

401/403 bypass playbook. Use when encountering access-denied responses on admin panels, API endpoints, or restricted paths. Covers path manipulation, HTTP method tampering, header injection, protocol downgrade, and automated bypass tools.

yaklang/active-directory-acl-abuse

Active Directory ACL abuse playbook. Use when exploiting misconfigured AD permissions including GenericAll, WriteDACL, DCSync rights, shadow credentials, LAPS reading, GPO abuse, and BloodHound-guided attack paths.

yaklang/active-directory-certificate-services

AD Certificate Services attack playbook. Use when targeting misconfigured AD CS for privilege escalation via ESC1-ESC13 template abuse, NTLM relay to enrollment, CA officer abuse, and certificate-based persistence.

yaklang/active-directory-kerberos-attacks

Kerberos attack playbook for Active Directory. Use when targeting AD authentication via AS-REP roasting, Kerberoasting, golden/silver/diamond tickets, delegation abuse, or pass-the-ticket attacks.

yaklang/ai-ml-security

AI/ML security playbook. Use when assessing model supply chain attacks (pickle RCE, poisoned weights), adversarial examples, model poisoning, model stealing, data privacy attacks (membership inference, model inversion), and autonomous agent security risks.

yaklang/android-pentesting-tricks

Android pentesting playbook. Use when testing Android applications for SSL pinning bypass, exported component abuse, WebView vulnerabilities, intent redirection, root detection bypass, tapjacking, and backup extraction during authorized mobile security assessments.

yaklang/anti-debugging-techniques

Anti-debugging detection and bypass playbook. Use when reversing protected binaries that detect debuggers via ptrace, PEB flags, timing checks, or signal/exception handlers on Linux and Windows.

yaklang/api-auth-and-jwt-abuse

API authentication and JWT abuse playbook. Use when testing bearer tokens, API keys, claim trust, header spoofing, rate limits, and API auth boundary weaknesses.

yaklang/api-authorization-and-bola

API authorization and BOLA testing playbook. Use when APIs expose object identifiers, nested resources, hidden writable fields, or weak function-level authorization.

yaklang/api-recon-and-docs

API reconnaissance and documentation review playbook. Use when discovering endpoints, schemas, versions, OpenAPI specs, hidden docs, and surface area for API testing.

yaklang/api-sec

Entry P1 category router for API security. Use when choosing between API recon, authorization, token abuse, and hidden-parameter workflows before any deeper API topic skill.

yaklang/arbitrary-write-to-rce

Arbitrary write to RCE playbook. Use when you have an arbitrary write primitive (from heap exploitation, format string, or OOB write) and need to convert it into code execution by targeting GOT, hooks, _IO_FILE vtable, exit_funcs, TLS_dtor_list, modprobe_path, .fini_array, or C++ vtables.

yaklang/authbypass-authentication-flaws

Authentication bypass testing playbook. Use when assessing login flows, password reset logic, account recovery, MFA bypass, token predictability, brute-force resistance, and session boundary flaws.

yaklang/auth-sec

Entry P1 category router for authentication and authorization. Use when testing login flows, sessions, object authorization, JWT, OAuth, CORS, CSRF, and enterprise SSO weaknesses before any deeper auth topic skill.

yaklang/binary-protection-bypass

Binary protection bypass playbook. Use when identifying and bypassing ASLR, PIE, NX/DEP, stack canary, RELRO, FORTIFY_SOURCE, CET, and MTE protections in ELF binaries to enable exploitation.

yaklang/browser-exploitation-v8

Browser and V8 exploitation playbook. Use when exploiting JavaScript engine vulnerabilities including JIT type confusion, incorrect bounds elimination, and V8 sandbox bypass to achieve renderer RCE and sandbox escape in Chrome/Chromium.

yaklang/business-logic-vuln

Entry P1 category router for business logic testing. Use when workflow abuse, race conditions, pricing flaws, or multi-step state attacks matter more than parser-level input injection.

yaklang/business-logic-vulnerabilities

Business logic vulnerability playbook. Use when reasoning about workflows, race conditions, price manipulation, coupon abuse, state machines, and multi-step authorization gaps.

yaklang/classical-cipher-analysis

Classical cipher analysis playbook. Use when encountering substitution ciphers, Vigenere, transposition, XOR, or encoded text in CTF challenges that requires frequency analysis, Kasiski examination, or known-plaintext cryptanalysis.

yaklang/clickjacking

Clickjacking playbook. Use when testing whether target pages can be framed, whether X-Frame-Options or CSP frame-ancestors are properly configured, and whether UI redress attacks can trigger sensitive actions.

関連スキル