email-forensics
メールメッセージとメールボックスデータをフォレンジック調査のために分析します。フィッシング攻撃、ビジネスメール詐欺、内部脅威の調査、またはメール証拠の分析が必要なあらゆるシナリオで利用できます。PST、OST、MBOX、EML、MSG形式に対応しています。
description の原文を見る
Analyze email messages and mailbox data for forensic investigation. Use when investigating phishing attacks, business email compromise, insider threats, or any scenario requiring email evidence analysis. Supports PST, OST, MBOX, EML, and MSG formats.
SKILL.md 本文
メールフォレンジック
メールメッセージ、メールボックスアーカイブ、メールメタデータを分析するための包括的なメールフォレンジックスキル。フィッシング攻撃、ビジネスメール詐欺(BEC)、メールなりすまし、およびメールデータからのフォレンジック的価値のあるアーティファクトの抽出の調査を可能にします。
機能
- メールボックス解析: PST、OST、MBOX、EML、およびMSGファイルを解析
- ヘッダー分析: メールヘッダーとルーティングの詳細分析
- 添付ファイル抽出: メール添付ファイルの抽出と分析
- フィッシング検出: フィッシングインジケーターと手法の識別
- なりすまし検出: メールなりすまし・なりすましの検出
- リンク分析: メールコンテンツ内のURLの抽出と分析
- タイムライン生成: メールベースの通信タイムラインの作成
- スレッド再構成: メール会話スレッドの再構築
- メタデータ抽出: 送信者、受信者、ルーティングメタデータの抽出
- 認証分析: SPF、DKIM、およびDMARCの結果分析
クイックスタート
from email_forensics import EmailAnalyzer, MailboxParser, PhishingDetector
# Parse mailbox file
parser = MailboxParser("/evidence/mailbox.pst")
emails = parser.get_all_messages()
# Analyze single email
analyzer = EmailAnalyzer()
analysis = analyzer.analyze_file("/evidence/suspicious.eml")
# Detect phishing
detector = PhishingDetector()
results = detector.scan_email(analysis)
使用方法
タスク1: メールボックス解析
入力: メールボックスファイル(PST、OST、MBOX)
処理:
- メールボックスファイルの読み込みと検証
- フォルダ構造の解析
- メッセージの抽出
- メタデータのインデックス
- メールボックスの要約生成
出力: メッセージインベントリを含む解析済みメールボックス
例:
from email_forensics import MailboxParser
# Parse Outlook PST file
parser = MailboxParser("/evidence/user_mailbox.pst")
# Get mailbox info
info = parser.get_mailbox_info()
print(f"Mailbox type: {info.format}")
print(f"Total messages: {info.message_count}")
print(f"Total folders: {info.folder_count}")
print(f"Date range: {info.oldest_date} - {info.newest_date}")
# List folders
folders = parser.get_folders()
for folder in folders:
print(f"Folder: {folder.name}")
print(f" Path: {folder.path}")
print(f" Messages: {folder.message_count}")
print(f" Unread: {folder.unread_count}")
# Get messages from folder
inbox = parser.get_messages(folder_path="Inbox")
for msg in inbox:
print(f"[{msg.date}] From: {msg.sender}")
print(f" Subject: {msg.subject}")
print(f" To: {msg.recipients}")
print(f" Has attachments: {msg.has_attachments}")
# Search messages
results = parser.search(
query="confidential",
search_body=True,
search_subject=True
)
for r in results:
print(f"Match: {r.subject}")
print(f" Folder: {r.folder}")
print(f" Match context: {r.context}")
# Export messages
parser.export_messages(
folder_path="Inbox",
output_dir="/evidence/exported/",
format="eml"
)
# Generate mailbox report
parser.generate_report("/evidence/mailbox_report.html")
タスク2: メールヘッダー分析
入力: メールメッセージ(EML、MSG、または生のヘッダー)
処理:
- すべてのヘッダーフィールドの解析
- ルーティングパスの分析
- 認証の検証
- 異常の検出
- ヘッダー分析の生成
出力: 包括的なヘッダー分析
例:
from email_forensics import HeaderAnalyzer
# Analyze email headers
analyzer = HeaderAnalyzer()
analysis = analyzer.analyze_file("/evidence/suspicious.eml")
# Get basic headers
print(f"From: {analysis.from_address}")
print(f"To: {analysis.to_addresses}")
print(f"Subject: {analysis.subject}")
print(f"Date: {analysis.date}")
print(f"Message-ID: {analysis.message_id}")
# Analyze routing path
routing = analysis.get_routing_path()
for hop in routing:
print(f"Hop {hop.number}:")
print(f" From: {hop.from_server}")
print(f" By: {hop.by_server}")
print(f" Time: {hop.timestamp}")
print(f" Delay: {hop.delay_seconds}s")
# Get authentication results
auth = analysis.get_authentication()
print(f"SPF: {auth.spf_result}")
print(f" SPF domain: {auth.spf_domain}")
print(f"DKIM: {auth.dkim_result}")
print(f" DKIM domain: {auth.dkim_domain}")
print(f"DMARC: {auth.dmarc_result}")
# Detect anomalies
anomalies = analysis.detect_anomalies()
for a in anomalies:
print(f"ANOMALY: {a.type}")
print(f" Description: {a.description}")
print(f" Severity: {a.severity}")
# Get original sender (envelope)
envelope = analysis.get_envelope_info()
print(f"Envelope From: {envelope.mail_from}")
print(f"Envelope To: {envelope.rcpt_to}")
# Get X-headers
x_headers = analysis.get_x_headers()
for header, value in x_headers.items():
print(f"{header}: {value}")
# Export analysis
analysis.export_report("/evidence/header_analysis.html")
タスク3: フィッシング検出
入力: メールメッセージ
処理:
- 送信者の信頼性を分析
- 悪意のあるインジケーターのURLをチェック
- 添付ファイルのリスク分析
- ソーシャルエンジニアリングの検出
- リスクスコアの計算
出力: リスク評価付きフィッシング分析
例:
from email_forensics import PhishingDetector, EmailAnalyzer
# Initialize detector
detector = PhishingDetector()
# Analyze email
analyzer = EmailAnalyzer()
email = analyzer.parse_file("/evidence/suspicious.eml")
# Run phishing detection
result = detector.analyze(email)
print(f"Risk Score: {result.risk_score}/100")
print(f"Classification: {result.classification}")
print(f"Confidence: {result.confidence}")
# Get indicators
for indicator in result.indicators:
print(f"INDICATOR: {indicator.type}")
print(f" Description: {indicator.description}")
print(f" Weight: {indicator.weight}")
print(f" Evidence: {indicator.evidence}")
# Check sender authenticity
sender = result.sender_analysis
print(f"Sender: {sender.display_name} <{sender.address}>")
print(f" Display name mismatch: {sender.display_name_mismatch}")
print(f" Domain reputation: {sender.domain_reputation}")
print(f" First-time sender: {sender.first_time_sender}")
# Analyze URLs
for url in result.url_analysis:
print(f"URL: {url.url}")
print(f" Domain: {url.domain}")
print(f" Display text: {url.display_text}")
print(f" Mismatch: {url.text_url_mismatch}")
print(f" Shortened: {url.is_shortened}")
print(f" Risk: {url.risk_level}")
# Check attachments
for att in result.attachment_analysis:
print(f"Attachment: {att.filename}")
print(f" Type: {att.content_type}")
print(f" Risk: {att.risk_level}")
print(f" Double extension: {att.has_double_extension}")
# Export report
detector.generate_report(result, "/evidence/phishing_report.html")
タスク4: 添付ファイル分析
入力: 添付ファイル付きメール
処理:
- すべての添付ファイルを抽出
- ファイルタイプを特定
- ハッシュを計算
- マルウェアインジケーターをチェック
- メタデータを抽出
出力: 抽出されたファイルを含む添付ファイル分析
例:
from email_forensics import AttachmentAnalyzer
# Initialize analyzer
analyzer = AttachmentAnalyzer()
# Extract from single email
attachments = analyzer.extract_from_email(
email_path="/evidence/email.eml",
output_dir="/evidence/attachments/"
)
for att in attachments:
print(f"Attachment: {att.filename}")
print(f" Content-Type: {att.content_type}")
print(f" Size: {att.size}")
print(f" MD5: {att.md5}")
print(f" SHA256: {att.sha256}")
print(f" Detected type: {att.detected_type}")
print(f" Type mismatch: {att.type_mismatch}")
print(f" Extracted to: {att.output_path}")
# Analyze specific attachment
detailed = analyzer.analyze_file("/evidence/attachments/document.pdf")
print(f"Metadata: {detailed.metadata}")
print(f"Embedded objects: {detailed.embedded_objects}")
print(f"Scripts: {detailed.contains_scripts}")
print(f"Macros: {detailed.contains_macros}")
# Extract from mailbox
mailbox_attachments = analyzer.extract_from_mailbox(
mailbox_path="/evidence/mailbox.pst",
output_dir="/evidence/all_attachments/",
filter_types=["application/pdf", "application/msword"]
)
# Find suspicious attachments
suspicious = analyzer.find_suspicious(attachments)
for s in suspicious:
print(f"SUSPICIOUS: {s.filename}")
print(f" Reason: {s.reason}")
# Check against malware hashes
malware = analyzer.check_malware_hashes("/hashsets/malware.txt")
# Generate attachment report
analyzer.generate_report("/evidence/attachment_report.html")
タスク5: メールタイムラインの作成
入力: メールボックスまたはメールの集合
処理:
- すべてのメッセージを解析
- タイムスタンプを抽出
- 年代順タイムラインを構築
- 通信パターンを識別
- アクティビティを可視化
出力: メール通信タイムライン
例:
from email_forensics import EmailTimeline
# Initialize timeline
timeline = EmailTimeline()
# Add email sources
timeline.add_mailbox("/evidence/user1.pst")
timeline.add_mailbox("/evidence/user2.pst")
timeline.add_folder("/evidence/exported_emails/")
# Build timeline
events = timeline.build()
for event in events:
print(f"[{event.timestamp}] {event.direction}")
print(f" From: {event.sender}")
print(f" To: {event.recipients}")
print(f" Subject: {event.subject}")
# Filter by date range
filtered = timeline.filter_by_date(
start="2024-01-01",
end="2024-01-31"
)
# Filter by participants
participant_emails = timeline.filter_by_participant("suspect@example.com")
# Get communication patterns
patterns = timeline.analyze_patterns()
print(f"Total messages: {patterns.total_messages}")
print(f"Unique senders: {patterns.unique_senders}")
print(f"Unique recipients: {patterns.unique_recipients}")
print(f"Peak hours: {patterns.peak_hours}")
print(f"Top correspondents: {patterns.top_correspondents}")
# Detect anomalies
anomalies = timeline.detect_anomalies()
for a in anomalies:
print(f"ANOMALY: {a.description}")
print(f" Time: {a.timestamp}")
# Export timeline
timeline.export_csv("/evidence/email_timeline.csv")
timeline.generate_visualization("/evidence/email_timeline.html")
タスク6: メールスレッドの再構成
入力: メールメッセージ
処理:
- 会話別にグループ化
- In-Reply-Toヘッダーを分析
- スレッドの階層を構築
- 欠落メッセージを特定
- スレッド全体を再構成
出力: 再構成されたメールスレッド
例:
from email_forensics import ThreadReconstructor
# Initialize reconstructor
reconstructor = ThreadReconstructor()
# Load emails
reconstructor.load_mailbox("/evidence/mailbox.pst")
# Reconstruct all threads
threads = reconstructor.reconstruct_all()
for thread in threads:
print(f"Thread: {thread.subject}")
print(f" Messages: {thread.message_count}")
print(f" Participants: {thread.participants}")
print(f" Duration: {thread.start_date} - {thread.end_date}")
print(f" Complete: {thread.is_complete}")
# Print thread hierarchy
for msg in thread.messages:
indent = " " * msg.depth
print(f"{indent}[{msg.date}] {msg.sender}: {msg.subject}")
# Find specific thread
thread = reconstructor.find_thread(subject_contains="Project Alpha")
# Find threads with missing messages
incomplete = reconstructor.find_incomplete_threads()
for t in incomplete:
print(f"Incomplete: {t.subject}")
print(f" Missing IDs: {t.missing_message_ids}")
# Export threads
reconstructor.export_threads(
output_dir="/evidence/threads/",
format="mbox"
)
# Generate thread report
reconstructor.generate_report("/evidence/threads_report.html")
タスク7: なりすまし検出
入力: メールメッセージ
処理:
- 送信者ヘッダーを検証
- 認証レコードをチェック
- 表示名トリックを分析
- エンベロープとヘッダーを比較
- なりすましを検出
出力: なりすまし分析結果
例:
from email_forensics import SpoofingDetector
# Initialize detector
detector = SpoofingDetector()
# Analyze email
result = detector.analyze_file("/evidence/suspicious.eml")
print(f"Spoofing detected: {result.is_spoofed}")
print(f"Confidence: {result.confidence}")
# Header vs Envelope analysis
print(f"Header From: {result.header_from}")
print(f"Envelope From: {result.envelope_from}")
print(f"Mismatch: {result.from_mismatch}")
# Display name analysis
display = result.display_name_analysis
print(f"Display Name: {display.name}")
print(f"Homograph attack: {display.homograph_detected}")
print(f"Executive impersonation: {display.executive_impersonation}")
print(f"Brand impersonation: {display.brand_impersonation}")
# Authentication analysis
auth = result.authentication_analysis
print(f"SPF Pass: {auth.spf_pass}")
print(f"DKIM Pass: {auth.dkim_pass}")
print(f"DMARC Pass: {auth.dmarc_pass}")
# Reply-To analysis
reply_to = result.reply_to_analysis
print(f"Reply-To: {reply_to.address}")
print(f"Reply-To differs from From: {reply_to.differs_from_sender}")
# Get all indicators
for indicator in result.indicators:
print(f"INDICATOR: {indicator.name}")
print(f" Evidence: {indicator.evidence}")
print(f" Severity: {indicator.severity}")
# Export report
detector.generate_report(result, "/evidence/spoofing_analysis.html")
タスク8: リンク分析
入力: メールコンテンツ
処理:
- すべてのURLを抽出
- URLコンポーネントを分析
- 脅威インテリジェンスに対してチェック
- URL難読化を検出
- リダイレクトチェーンを特定
出力: URL分析結果
例:
from email_forensics import LinkAnalyzer
# Initialize analyzer
analyzer = LinkAnalyzer()
# Extract links from email
links = analyzer.extract_from_email("/evidence/email.eml")
for link in links:
print(f"URL: {link.url}")
print(f" Display text: {link.display_text}")
print(f" Domain: {link.domain}")
print(f" TLD: {link.tld}")
print(f" Text matches URL: {link.text_matches_url}")
print(f" Is shortened: {link.is_shortened}")
print(f" Is IP-based: {link.is_ip_based}")
print(f" Risk score: {link.risk_score}")
# Unshorten URLs
unshortened = analyzer.unshorten_urls(links)
for u in unshortened:
print(f"Short: {u.short_url}")
print(f"Final: {u.final_url}")
print(f"Redirects: {u.redirect_count}")
# Check against threat intelligence
threats = analyzer.check_threat_intel(
links,
feed_path="/feeds/malicious_urls.txt"
)
for t in threats:
print(f"THREAT: {t.url}")
print(f" Category: {t.category}")
print(f" Source: {t.intel_source}")
# Detect URL obfuscation
obfuscated = analyzer.detect_obfuscation(links)
for o in obfuscated:
print(f"OBFUSCATED: {o.url}")
print(f" Technique: {o.obfuscation_type}")
print(f" Decoded: {o.decoded_url}")
# Analyze link destinations (safe fetch)
destinations = analyzer.analyze_destinations(links, safe_mode=True)
# Export link analysis
analyzer.generate_report("/evidence/link_analysis.html")
タスク9: ビジネスメール詐欺分析
入力: メールまたはメールボックス
処理:
- BECインジケーターを特定
- 緊急性言語を検出
- 財務リクエストを分析
- 送信者の正当性をチェック
- BEC確率をスコアリング
出力: BEC分析結果
例:
from email_forensics import BECDetector
# Initialize BEC detector
detector = BECDetector()
# Analyze single email
result = detector.analyze_email("/evidence/wire_request.eml")
print(f"BEC Score: {result.bec_score}/100")
print(f"Classification: {result.classification}")
# Check BEC indicators
for indicator in result.indicators:
print(f"INDICATOR: {indicator.type}")
print(f" Description: {indicator.description}")
print(f" Evidence: {indicator.evidence}")
print(f" Weight: {indicator.weight}")
# Language analysis
language = result.language_analysis
print(f"Urgency detected: {language.urgency_score}")
print(f"Authority claims: {language.authority_score}")
print(f"Financial keywords: {language.financial_keywords}")
print(f"Secrecy requests: {language.secrecy_score}")
# Sender analysis
sender = result.sender_analysis
print(f"Claimed identity: {sender.claimed_identity}")
print(f"Actual sender: {sender.actual_address}")
print(f"Executive impersonation: {sender.executive_impersonation}")
# Request analysis
request = result.request_analysis
print(f"Action requested: {request.action}")
print(f"Amount mentioned: {request.amount}")
print(f"Account details: {request.has_account_details}")
print(f"Wire transfer request: {request.wire_transfer}")
# Scan mailbox for BEC
mailbox_results = detector.scan_mailbox("/evidence/mailbox.pst")
for r in mailbox_results.high_risk:
print(f"HIGH RISK: {r.subject}")
print(f" BEC Score: {r.bec_score}")
# Generate BEC report
detector.generate_report("/evidence/bec_analysis.html")
タスク10: メール検索とエクスポート
入力: メールボックスファイルまたはメール集合
処理:
- メールコンテンツのインデックス
- 検索クエリの実行
- 結果のフィルタリング
- 一致するメールのエクスポート
- 検索レポートの生成
出力: エクスポートされたメール付き検索結果
例:
from email_forensics import EmailSearcher
# Initialize searcher
searcher = EmailSearcher("/evidence/mailbox.pst")
# Build search index
searcher.build_index()
# Search by keywords
results = searcher.search(
query="confidential project",
search_body=True,
search_subject=True,
search_attachments=True
)
for r in results:
print(f"Match: {r.subject}")
print(f" From: {r.sender}")
print(f" Date: {r.date}")
print(f" Score: {r.relevance_score}")
print(f" Snippet: {r.snippet}")
# Search by sender
sender_emails = searcher.search_by_sender("suspicious@example.com")
# Search by date range
date_range = searcher.search_by_date(
start="2024-01-01",
end="2024-01-31"
)
# Search by attachment name
with_attachments = searcher.search_by_attachment(
filename_pattern="*.pdf"
)
# Complex query
complex_results = searcher.advanced_search(
sender_contains="@example.com",
subject_contains="wire transfer",
date_after="2024-01-01",
has_attachments=True
)
# Export search results
searcher.export_results(
results,
output_dir="/evidence/search_results/",
format="eml",
include_attachments=True
)
# Generate search report
searcher.generate_report("/evidence/search_report.html")
設定
環境変数
| 変数 | 説明 | 必須 | デフォルト |
|---|---|---|---|
EMAIL_PARSER | メール解析ライブラリへのパス | いいえ | ビルトイン |
THREAT_INTEL_FEED | URL脅威インテリジェンスフィード | いいえ | なし |
VT_API_KEY | VirusTotal APIキー | いいえ | なし |
SAFE_BROWSE_KEY | Google Safe Browsing APIキー | いいえ | なし |
オプション
| オプション | タイプ | 説明 |
|---|---|---|
extract_attachments | ブール値 | 添付ファイルを自動抽出 |
decode_mime | ブール値 | MIMEエンコードコンテンツをデコード |
parse_html | ブール値 | HTMLメール本文を解析 |
safe_url_check | ブール値 | 安全なURL検証 |
parallel | ブール値 | 並列処理を有効化 |
使用例
例1: フィッシングキャンペーン調査
シナリオ: 組織をターゲットにしたフィッシングキャンペーンを調査
from email_forensics import MailboxParser, PhishingDetector
# Parse quarantined emails
parser = MailboxParser("/evidence/quarantine.pst")
emails = parser.get_all_messages()
# Initialize phishing detector
detector = PhishingDetector()
# Analyze all emails
phishing_emails = []
for email in emails:
result = detector.analyze(email)
if result.risk_score > 70:
phishing_emails.append(result)
print(f"PHISHING: {email.subject}")
print(f" Risk: {result.risk_score}")
print(f" Indicators: {len(result.indicators)}")
# Extract IOCs from phishing emails
iocs = detector.extract_iocs(phishing_emails)
print(f"Malicious URLs: {len(iocs.urls)}")
print(f"Sender addresses: {len(iocs.senders)}")
# Generate campaign report
detector.generate_campaign_report(phishing_emails, "/evidence/phishing_campaign.html")
例2: BEC事案調査
シナリオ: ビジネスメール詐欺の可能性について調査
from email_forensics import BECDetector, EmailTimeline, SpoofingDetector
# Analyze the suspicious request email
bec = BECDetector()
result = bec.analyze_email("/evidence/wire_request.eml")
print(f"BEC Score: {result.bec_score}")
print(f"Financial request: {result.request_analysis.wire_transfer}")
# Check for spoofing
spoof = SpoofingDetector()
spoof_result = spoof.analyze_file("/evidence/wire_request.eml")
print(f"Spoofed: {spoof_result.is_spoofed}")
# Build communication timeline
timeline = EmailTimeline()
timeline.add_mailbox("/evidence/cfo_mailbox.pst")
timeline.add_mailbox("/evidence/finance_mailbox.pst")
# Find related emails
related = timeline.filter_by_participant(result.sender_analysis.actual_address)
print(f"Related emails from sender: {len(related)}")
制限事項
- 大規模なメールボックスは処理時間が必要な場合があります
- 暗号化されたメールは復号化キーが必要です
- 一部の専有フォーマットはサポートが限定的な場合があります
- URL分析は検証のためのネットワークアクセスが必要です
- 添付ファイル分析はファイルタイプサポートに依存します
- BEC検出は偽陽性を招く可能性があります
- ヘッダー分析の精度はメール保存に依存します
トラブルシューティング
一般的な問題1: PSTファイルの破損
問題: PSTファイルを解析できません 解決方法:
- 分析する前にPST修復ツールを使用する
- 異なる解析ライブラリを試す
- 可能な場合は個別のメッセージを抽出する
一般的な問題2: エンコードされたコンテンツがデコードされない
問題: メール本文がエンコードテキストとして表示される 解決方法:
- MIMEデコーディングを有効にする
- 異常な文字エンコーディングを確認する
- 異なるデコーディング方法を試す
一般的な問題3: 添付ファイルが見つからない
問題: 添付ファイルが抽出されない 解決方法:
- 添付ファイルのサイズ制限を確認する
- 添付ファイル形式のサポートを確認する
- インライン添付ファイルを探す
関連スキル
network-forensics: メールネットワークトラフィックの分析browser-forensics: Webメール調査malware-forensics: 悪意のある添付ファイル
ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- majiayu000
- ライセンス
- Apache-2.0
- 最終更新
- 2026/5/9
Source: https://github.com/majiayu000/claude-skill-registry-data / ライセンス: Apache-2.0
関連スキル
secure-code-guardian
認証・認可の実装、ユーザー入力の保護、OWASP Top 10の脆弱性対策が必要な場合に使用します。bcrypt/argon2によるパスワードハッシング、パラメータ化ステートメントによるSQLインジェクション対策、CORS/CSPヘッダーの設定、Zodによる入力検証、JWTトークンの構築などのカスタムセキュリティ実装に対応します。認証、認可、入力検証、暗号化、OWASP Top 10対策、セッション管理、セキュリティ強化全般で活用できます。ただし、構築済みのOAuth/SSO統合や単独のセキュリティ監査が必要な場合は、より特化したスキルの検討をお勧めします。
claude-authenticity
APIエンドポイントが本物のClaudeによって支えられているか(ラッパーやプロキシ、偽装ではないか)を、claude-verifyプロジェクトを模した9つの重み付きルールベースチェックで検証できます。また、Claudeの正体を上書きしているプロバイダーから注入されたシステムプロンプトも抽出します。完全に自己完結しており、httpx以外の追加パッケージは不要です。Claude APIキーまたはエンドポイントを検証したい場合、サードパーティのClaudeサービスが本物か確認したい場合、APIプロバイダーのClaude正当性を監査したい場合、複数モデルを並行してテストしたい場合、またはプロバイダーが注入したシステムプロンプトを特定したい場合に使用できます。
anth-security-basics
Anthropic Claude APIのセキュリティベストプラクティスを適用し、キー管理、入力値の検証、プロンプトインジェクション対策を実施します。APIキーの保護、Claudeに送信する前のユーザー入力検証、コンテンツセーフティガードレールの実装が必要な場合に活用できます。「anthropic security」「claude api key security」「secure anthropic」「prompt injection defense」といったフレーズでトリガーされます。
x-ray
x-ray.mdプレ監査レポートを生成します。概要、強化された脅威モデル(プロトコルタイプのプロファイリング、Gitの重み付け攻撃面分析、時間軸リスク分析、コンポーザビリティ依存関係マッピング)、不変条件、統合、ドキュメント品質、テスト分析、開発者・Gitの履歴をカバーしています。「x-ray」「audit readiness」「readiness report」「pre-audit report」「prep this protocol」「protocol prep」「summarize this protocol」のキーワードで実行されます。
semgrep
Semgrepスタティック分析スキャンを実行し、カスタム検出ルールを作成します。Semgrepでのコードスキャン、セキュリティ脆弱性の検出、カスタムYAMLルールの作成、または特定のバグパターンの検出が必要な場合に使用します。重要:ユーザーが「バグをスキャンしたい」「コード品質を確認したい」「脆弱性を見つけたい」「スタティック分析」「セキュリティlint」「コード監査」または「コーディング標準を適用したい」と尋ねた場合も、Semgrepという名称を明記していなくても、このスキルを使用してください。Semgrepは30以上の言語に対応したパターンベースのコードスキャンに最適なツールです。
ghost-bits-cast-attack
Java「ゴーストビッツ」/キャストアタック プレイブック(Black Hat Asia 2026)。16ビット文字が8ビットバイトに暗黙的に縮小されるJavaサービスへの攻撃時に使用します。WAF/IDSを回避して、SQLインジェクション、デシリアライゼーション型RCE、ファイルアップロード(Webシェル)、パストトラバーサル、CRLF インジェクション、リクエストスマグリング、SMTPインジェクションを実行できます。Tomcat、Spring、Jetty、Undertow、Vert.x、Jackson、Fastjson、Apache Commons BCEL、Apache HttpClient、Angus Mail、JDK HttpServer、Lettuce、Jodd、XMLWriterに影響し、WAFバイパスにより多くの「パッチ済み」CVEを再度有効化します。