apify-osint-threat-intel

作者: apify

當使用者要求「尋找CVE」、「檢查我的網域是否遭到入侵」、「威脅情報」、「OSINT」、「安全新聞」、「攻擊面…」時,使用此技能。

npx skills add https://github.com/apify/awesome-skills --skill apify-osint-threat-intel

OSINT Threat Intelligence

Real-time security intelligence powered by live threat data via Apify actors. Never answer security questions from training knowledge alone. CVEs, breaches, and threat actor activity change daily — always gather live data first, then analyze.


Prerequisites

CLI rules (always follow)

Always pass --user-agent apify-awesome-skills/apify-osint-threat-intel on every apify CLI call — it's critical for telemetry, never omit it.

apify actors call "ACTOR_ID" -i 'INPUT_JSON' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null
apify datasets get-items DATASET_ID --format json --user-agent apify-awesome-skills/apify-osint-threat-intel > /tmp/results.json 2>/dev/null
jq '.[] | "\(.field1) | \(.field2)"' /tmp/results.json
apify actors info "ACTOR_ID" --input --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null   # check schema

Actor Routing Table

Data NeedActor IDNotes
CVE lookupapify/google-search-scraperQuery: site:nvd.nist.gov [product] [version]
NVD full recordapify/website-content-crawlerURL: nvd.nist.gov/vuln/detail/CVE-XXXX-XXXXX
CISA known exploitedapify/rag-web-browserURL: cisa.gov/known-exploited-vulnerabilities-catalog
GitHub advisoriesapify/rag-web-browserURL: github.com/advisories?query=[product]
Exploit-DB searchapify/google-search-scraperQuery: site:exploit-db.com [product] [version]
Security newsdata_xplorer/google-news-scraper-fastKeywords: "[target]" vulnerability OR exploit OR breach
Reddit threat discussionharshmaur/reddit-scrapersearchTerms + withinCommunity — one subreddit per run (netsec, then a second run for cybersecurity); a value like netsec OR cybersecurity silently drops the filter and searches all of Reddit. Always set postedAfter (YYYY-MM-DD) for recency — searchTime is not enforced and the Actor pads the cap with years-old posts. Pay-per-event: $0.02 per run + $0.002 per post; maxPostsCount is per search term.
Threat intel Twitter/Xapidojo/tweet-scraperKeywords: #threatintel [target], search mode
Breach mention searchapify/google-search-scraperQuery: "[domain]" site:pastebin.com OR intext:breach
Vendor security advisoryapify/website-content-crawlerDirect vendor security page URL
Shodan exposure hintsapify/google-search-scraperQuery: site:shodan.io "[domain OR org name]"
Threat actor researchapify/rag-web-browserMITRE ATT&CK: attack.mitre.org/groups/

Prefer apify/google-search-scraper and apify/rag-web-browser over website-content-crawler for speed.
Use website-content-crawler only when you need the full page body (e.g. NVD detail, vendor advisory).
Do NOT use website-content-crawler on: reddit.com, twitter.com, pastebin.com, linkedin.com.


Core Workflow

Step 0 — Clarify scope before running anything

Ask the user:

  • Target type: domain, IP, software/version, CVE ID, threat actor name, or keyword?
  • Goal: one-time lookup vs. ongoing monitoring brief?
  • Autonomy: full autopilot, or checkpoint before each actor call?

Step 1 — Identify module

User saysModuleSteps
"Find CVEs for [product]"CVE Intelligence2a
"Is [domain] breached / exposed"Domain Threat Profile2b
"Research [threat actor / malware]"Threat Actor Profile2c
"Security news about [topic]"Security News Brief2d
"Attack surface of [company]"Attack Surface Discovery2b + 2d
"Full threat report on [target]"Multi-Module2a + 2b + 2c + 2d

Step 2a — CVE Intelligence

Gather live CVE data for a product or version:

# 1. Search NVD via Google
apify actors call "apify/google-search-scraper" -i '{
  "queries": "site:nvd.nist.gov CVE [PRODUCT] [VERSION]",
  "maxPagesPerQuery": 1
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

# 2. Pull full NVD record for each CVE ID found
apify actors call "apify/website-content-crawler" -i '{
  "startUrls": [{"url": "https://nvd.nist.gov/vuln/detail/CVE-XXXX-XXXXX"}],
  "proxyConfiguration": {"useApifyProxy": true},
  "maxCrawlPages": 1
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

# 3. Check if CVE is in CISA's Known Exploited Vulnerabilities list
apify actors call "apify/rag-web-browser" -i '{
  "query": "[CVE-ID] site:cisa.gov/known-exploited-vulnerabilities-catalog",
  "maxResults": 3
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

# 4. Check Exploit-DB for public PoC
apify actors call "apify/google-search-scraper" -i '{
  "queries": "site:exploit-db.com [PRODUCT] [VERSION]",
  "maxPagesPerQuery": 1
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

Synthesize: severity (CVSS), exploitability (CISA KEV = active exploitation), public PoC exists (yes/no), patch available (yes/no).

Step 2b — Domain Threat Profile

# 1. Search for breach mentions
apify actors call "apify/google-search-scraper" -i '{
  "queries": "\"[DOMAIN]\" breach OR leak OR hacked OR \"data exposed\"",
  "maxPagesPerQuery": 1
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

# 2. Check paste sites for credential leaks
apify actors call "apify/google-search-scraper" -i '{
  "queries": "\"[DOMAIN]\" site:pastebin.com OR site:ghostbin.com OR site:rentry.co",
  "maxPagesPerQuery": 1
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

# 3. Check Shodan exposure hints via Google
apify actors call "apify/google-search-scraper" -i '{
  "queries": "site:shodan.io \"[DOMAIN OR ORG]\"",
  "maxPagesPerQuery": 1
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

# 4. Scan r/netsec for mentions — one subreddit per run; repeat with "withinCommunity": "cybersecurity"
#    postedAfter = today minus 365 days (YYYY-MM-DD). 3 terms × 5 posts = 15 posts ≈ $0.05.
#    Use `postUrl` as the Source and `createdAt` for the date stamp.
apify actors call "harshmaur/reddit-scraper" -i '{
  "searchTerms": ["[DOMAIN] breach", "[DOMAIN] hack", "[DOMAIN] vulnerability"],
  "withinCommunity": "netsec",
  "postedAfter": "[YYYY-MM-DD]",
  "maxPostsCount": 5,
  "crawlCommentsPerPost": false
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

Step 2c — Threat Actor Profile

# 1. MITRE ATT&CK lookup
apify actors call "apify/rag-web-browser" -i '{
  "query": "[THREAT ACTOR NAME] site:attack.mitre.org",
  "maxResults": 3
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

# 2. Recent activity via news
apify actors call "data_xplorer/google-news-scraper-fast" -i '{
  "keywords": ["[THREAT ACTOR NAME] attack OR campaign OR malware"],
  "timeframe": "30d",
  "maxArticles": 15
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

# 3. Community threat intel on Twitter/X
apify actors call "apidojo/tweet-scraper" -i '{
  "searchTerms": ["#threatintel [THREAT ACTOR]", "[THREAT ACTOR] TTPs"],
  "maxItems": 20,
  "sort": "Latest"
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

# 4. Reddit discussion — postedAfter = today minus 365 days; `createdAt` of the newest post = "Last seen"
apify actors call "harshmaur/reddit-scraper" -i '{
  "searchTerms": ["[THREAT ACTOR NAME]"],
  "withinCommunity": "netsec",
  "postedAfter": "[YYYY-MM-DD]",
  "maxPostsCount": 10,
  "crawlCommentsPerPost": false
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

Step 2d — Security News Brief

# 1. Google News for topic
apify actors call "data_xplorer/google-news-scraper-fast" -i '{
  "keywords": ["[TOPIC] vulnerability OR CVE OR breach OR exploit"],
  "timeframe": "7d",
  "maxArticles": 20
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

# 2. Reddit r/netsec latest — sort goes into the URL (/new/); `searchSort` does not apply to startUrls
apify actors call "harshmaur/reddit-scraper" -i '{
  "startUrls": [{"url": "https://www.reddit.com/r/netsec/new/"}],
  "maxPostsCount": 15,
  "crawlCommentsPerPost": false
}' --user-agent apify-awesome-skills/apify-osint-threat-intel --json 2>/dev/null

Step 3 — Triage and assess

For every finding, apply this classification:

SeverityCriteria
CriticalCVSS ≥ 9.0 OR on CISA KEV list OR public PoC + unpatched
HighCVSS 7.0–8.9 OR active exploitation reported in news
MediumCVSS 4.0–6.9 OR breach mention without active exploit
LowCVSS < 4.0 OR historical, patched, no active exploitation
InformationalExposure hints without confirmed vulnerability

Step 4 — Deliver structured report

Output format:

## Threat Intelligence Report — [TARGET]
Date: [today]

### Executive Summary
[2–3 sentence risk verdict]

### Critical Findings
- [CVE/Finding] — Severity: [X] — Status: [Patched/Unpatched/Active exploit]
  Source: [URL]

### Breach/Exposure Indicators
- [Finding] — Source: [URL]

### Threat Actor Activity (if applicable)
- [Actor] — TTPs: [list] — Last seen: [date]

### Recommended Actions
1. [Immediate action]
2. [Short-term action]
3. [Monitoring recommendation]

### Data Sources
[Bullet list of all URLs cited]

Data Quality Rules

  • Every claim needs a source URL — no ungrounded assertions
  • Empty results are intelligence — report them explicitly ("no paste mentions found")
  • Date-stamp all findings — CVE severity, patch status, and breach reports are time-sensitive
  • Confidence tiers:
    • [Confirmed] — primary source (NVD, CISA, vendor advisory)
    • [Reported] — news + community corroboration
    • [Unverified] — single secondary source, flag clearly
  • Parallelize independent actor calls (CVE search + news + Reddit can run simultaneously; the two Reddit runs — netsec, cybersecurity — too)
  • Budget: warn user if >10 actor calls needed; get approval before proceeding

Troubleshooting

ProblemFix
google-search-scraper returns 0 resultsSimplify query, remove site: filter, try broader terms
website-content-crawler times out on NVDUse rag-web-browser as fallback with direct CVE URL
harshmaur/reddit-scraper returns 0 items, or posts from unrelated subredditsRead the RUN-SUMMARY record in the run's key-value store: inputWarnings says when withinCommunity was dropped (more than one name) or a date was unparseable, emptyReason explains 0 items. Shorten the term (Reddit search is literal). Fallback: fatihtahta/reddit-scraper-search-fast with {"subredditName": "netsec", "subredditKeywords": ["[TERM]"], "subredditTimeframe": "month", "maxPosts": 10} ($0.00149 per post, no start fee; fields title, url, subreddit, created_utc, score, num_comments)
tweet-scraper returns sparse resultsBroaden to #cybersecurity [term] or drop hashtag requirement
CISA KEV page too large to crawlUse rag-web-browser with specific CVE ID as query

Example prompts

  • "Check if example.com has any known vulnerabilities or appears in recent breach data."
  • "What's the latest threat intel on CVE-2026-1234 — is it actively exploited?"
  • "Profile the APT28 group — recent campaigns, TTPs, and infrastructure."

Boundary: This skill researches organizations, infrastructure and named threat groups. It won't build cross-platform profiles of private individuals.

來自 apify 的更多技能

apify-influencer-brand-collabs
apify
探索Instagram品牌與創作者的合作關係,透過串聯Apify Actors。當使用者詢問某品牌與誰合作、某創作者曾與哪些品牌進行付費合作時使用…
apify-actor-development
apify
建立、除錯及部署無伺服器雲端程式,用於網頁爬取、自動化及資料處理。支援 JavaScript、TypeScript 及 Python 範本,內建 Crawlee、Playwright 與 Cheerio 函式庫,適用於 HTTP 及瀏覽器爬取。包含透過 apify run 進行本地測試(具備隔離儲存)、輸入/輸出結構驗證,以及透過 apify push 部署至 Apify 平台。需進行 Apify CLI 驗證,並在 .actor/actor.json 中強制加入 generatedBy 元資料以供 AI 使用...
apify-actorization
apify
將現有專案轉換為無伺服器 Apify Actors,並整合語言專屬 SDK。支援 JavaScript/TypeScript(使用 Actor.init() / Actor.exit())、Python(非同步上下文管理器),以及透過 CLI 包裝器的任何語言。提供結構化工作流程:使用 apify init 建立專案骨架、套用 SDK 包裝、設定輸入/輸出架構、以 apify run 進行本地測試,再透過 apify push 部署。包含輸入與輸出架構驗證、Docker 容器化,以及可選的按事件付費...
apify-content-analytics
apify
透過 Apify Actors 進行多平台內容分析,支援 Instagram、Facebook、YouTube 及 TikTok。涵蓋 17 種以上專用 Actors,可處理貼文、Reels、限時動態、留言、Hashtag、粉絲及廣告等內容,並動態使用 mcpc CLI 擷取 Actor 架構,以判斷所需輸入與可用輸出欄位。結果提供三種格式:快速聊天顯示、CSV 匯出或 JSON 匯出,並可自訂結果數量。需在 .env 檔案中設定 Apify Token,並使用 Node.js 20.6+...
apify-ecommerce
apify
從50多個電子商務平台提取產品數據、價格、評論及賣家資訊。三種工作流程模式:產品與定價(價格追蹤、競爭對手分析)、客戶評論(情感分析、品質問題)及賣家情報(透過Google Shopping發現供應商)。支援Amazon(20多個地區)、Walmart、eBay、IKEA、Costco及歐洲零售商;可透過產品網址、分類網址或關鍵字搜尋輸入。可選AI驅動分析,生成價格洞察...
apify-generate-output-schema
apify
為 Apify Actor 分析其原始碼,生成輸出結構(dataset_schema.json、output_schema.json、key_value_store_schema.json)。用於…
apify-influencer-discovery
apify
使用Apify Actors在Instagram、Facebook、YouTube和TikTok上發現並評估網紅。將發現請求路由至15個以上專門的Actors,涵蓋所有主要平台的個人資料抓取、標籤搜尋、互動分析及利基發現。透過mcpc動態獲取Actor架構,以在執行前確定所需輸入與可用輸出欄位。支援三種匯出模式:內嵌聊天顯示、CSV或JSON檔案輸出,並可自訂結果數量...
apify-ultimate-scraper
apify
自動化網頁爬蟲,為55多個平台選擇最佳Actor,包括Instagram、TikTok、YouTube、Facebook、Google地圖等。涵蓋8大主要平台的55多個預配置Actor,並提供針對特定使用案例的選擇指引(潛在客戶開發、網紅發現、品牌監控、競爭對手分析、趨勢研究)。支援三種輸出格式:快速聊天顯示、CSV匯出或JSON匯出,並可自訂結果數量限制。包含多Actor工作流程模式,適用於複雜...