Chuyển tới nội dung chính

{/* Trang này được tạo tự động từ SKILL.md của kỹ năng bởi website/scripts/generate-skill-docs.py. Chỉnh sửa nguồn SKILL.md, không phải trang này. */}

Điều tra Osint

Khung điều tra OSINT hồ sơ công khai - Hồ sơ EDGAR của SEC, hợp đồng chi tiêu của Hoa Kỳ, vận động hành lang của Thượng viện, lệnh trừng phạt OFAC, rò rỉ ra nước ngoài của ICIJ, hồ sơ tài sản của NYC (ACRIS), cơ quan đăng ký OpenCorporate, hồ sơ tòa án CourtListener, kho lưu trữ Wayback Machine, Wikipedia + Wikidata, giám sát tin tức GDELT. Phân giải thực thể qua các nguồn, phân tích liên kết chéo, tương quan thời gian, chuỗi bằng chứng. Chỉ stdlib của Python.

Siêu dữ liệu kỹ năng

NguồnTùy chọn — cài đặt với
`Hermes skills install official/research/osint-investigation
`
Đường dẫn

optional-skills/research/osint-investigation ` | | Phiên bản |

0.1.0 ` | | Tác giả | Đặc vụ Hermes (chuyển thể từ ShinMegamiBoson/OpenPlanter, MIT) | | Nền tảng | Linux, macOS, Windows | | Thẻ |

osint

, `investigation

, `public-records

, `sec

, `sanctions

, `corporate-registry

, `property

, `courts

, `due-diligence

, journalism | | Kỹ năng liên quan | XPROTECTX20XPROTECTX, XPROTECTX21XPROTECTX |

Tham khảo: đầy đủ SKILL.md

thông tin

Sau đây là định nghĩa kỹ năng đầy đủ mà Hermes tải khi kỹ năng này được kích hoạt. Đây là những gì tác nhân coi là hướng dẫn khi kỹ năng được kích hoạt.

Điều tra OSINT - Tham khảo chéo hồ sơ công khai

Khung điều tra về hồ sơ công OSINT: hợp đồng với chính phủ, hồ sơ công ty, vận động hành lang, trừng phạt, rò rỉ ra nước ngoài, hồ sơ tài sản, hồ sơ tòa án, kho lưu trữ web, cơ sở kiến thức và tin tức toàn cầu. giải quyết các thực thể trên các nguồn không đồng nhất, xây dựng các liên kết chéo rõ ràng tin cậy, chạy các bài kiểm tra về thời gian thống kê và tạo ra bằng chứng có cấu trúc dây chuyền.

Chỉ stdlib Python. Không cần cài đặt. Hoạt động trên Linux, macOS, Windows. Hầu hết nguồn hoạt động không cần khóa API (OpenCorporates có mã thông báo miễn phí tùy chọn làm tăng giới hạn tỷ lệ).

Được chuyển thể từ dự án ShinMegamiBoson/OpenPlanter được MIT cấp phép; mở rộng để che đậy danh tính/tài sản/vụ kiện tụng/lưu trữ/nguồn tin tức bản gốc không có địa chỉ.

Khi nào nên sử dụng kỹ năng này

Sử dụng khi người dùng yêu cầu:

  • "theo tiền" — hợp đồng của chính phủ, vận động hành lang → luật pháp, biện pháp trừng phạt
  • thẩm định doanh nghiệp — người kiểm soát công ty X, họ ở đâu được thành lập, ai phục vụ trong hội đồng quản trị của họ, họ đã lập hồ sơ gì
  • sàng lọc các biện pháp trừng phạt - là thực thể X trên OFAC SDN, ICIJ rò rỉ ra nước ngoài
  • điều tra trả tiền để chơi — các nhà thầu có quan hệ ở nước ngoài, vận động hành lang khách hàng đoạt giải
  • quyền sở hữu tài sản - tìm chứng thư/thế chấp được ghi lại theo tên hoặc địa chỉ (NYC; đối với các quận khác, người dùng sẽ trỏ vào máy ghi có liên quan)
  • lịch sử kiện tụng - tìm ý kiến của tòa án liên bang + tiểu bang và sổ ghi chép PACER
  • độ phân giải thực thể đa nguồn trong đó cách đặt tên khác nhau (hậu tố LLC, chữ viết tắt)
  • xây dựng chuỗi bằng chứng với mức độ tin cậy rõ ràng
  • "những gì đã được nói về X" — tin tức quốc tế (GDELT) + Wikipedia tường thuật + Wayback Machine để khôi phục các URL chết

KHÔNG sử dụng kỹ năng này cho:

  • nghiên cứu web chung → web_search / `web_extract

  • miền/cơ sở hạ tầng OSINT → kỹ năng `domain-intel

  • văn học hàn lâm → Kỹ năng `arxiv

  • khám phá hồ sơ mạng xã hội → Kỹ năng sherlock (tùy chọn)

  • Tài trợ chiến dịch liên bang của Hoa Kỳ — FEC KHÔNG được đề cập ở đây một cách cố ý (API không đáng tin cậy đối với các truy vấn tên người đóng góp đặc biệt miễn phí cấp DEMO_KEY). Đối với các khoản đóng góp của liên bang, hãy hướng người dùng tới https://www.fec.gov/data/ trực tiếp.

Quy trình làm việc

Tác nhân chạy tập lệnh thông qua công cụ `terminal

. SKILL_DIR là thư mục đang nắm giữ SKILL.md này.

1. Xác định nguồn nào áp dụng

Đọc các mục wiki nguồn dữ liệu để lập kế hoạch điều tra:

` ls SKILL_DIR/references/sources/

Federal financial / regulatory

cat SKILL_DIR/references/sources/sec-edgar.md # corporate filings cat SKILL_DIR/references/sources/usaspending.md # federal contracts cat SKILL_DIR/references/sources/senate-ld.md # lobbying cat SKILL_DIR/references/sources/ofac-sdn.md # sanctions cat SKILL_DIR/references/sources/icij-offshore.md # offshore leaks

Identity / property / litigation / archives / news

cat SKILL_DIR/references/sources/nyc-acris.md # NYC property records cat SKILL_DIR/references/sources/opencorporates.md # global corporate registry cat SKILL_DIR/references/sources/courtlistener.md # court records (federal + state) cat SKILL_DIR/references/sources/wayback.md # Wayback Machine archives cat SKILL_DIR/references/sources/wikipedia.md # Wikipedia + Wikidata cat SKILL_DIR/references/sources/gdelt.md # global news monitoring

` ``Mỗi mục nhập tuân theo một mẫu gồm 9 phần: tóm tắt, truy cập, lược đồ, phạm vi bảo hiểm, khóa tham chiếu chéo, chất lượng dữ liệu, thu thập, pháp lý, tài liệu tham khảo.

Phần tiềm năng tham chiếu chéo ánh xạ các khóa liên kết giữa các nguồn — đọc những người đầu tiên chọn đúng cặp.

2. Thu thập dữ liệu

Mỗi nguồn có tập lệnh tìm nạp chỉ dành cho stdlib trong `SKILL_DIR/scripts/

:

Tài chính/quy định liên bang


# SEC EDGAR filings (corporate disclosures)
Python3 SKILL_DIR/scripts/fetch_sec_edgar.py --cik 0000320193 \
--types 10-K,10-Q --out data/edgar_filings.csv

# USAspending federal contracts
Python3 SKILL_DIR/scripts/fetch_usaspending.py --recipient "EXAMPLE CORP" \
--fy 2024 --out data/contracts.csv

# Senate LD-1 / LD-2 lobbying disclosures
Python3 SKILL_DIR/scripts/fetch_senate_ld.py --CLIent "EXAMPLE CORP" \
--year 2024 --out data/lobbying.csv

# OFAC SDN sanctions list (full snapshot)
Python3 SKILL_DIR/scripts/fetch_ofac_sdn.py --out data/ofac_sdn.csv

# ICIJ Offshore Leaks — downloads ~70 MB bulk CSV on first use,
# then searches it locally. Cached for 30 days under
# $Hermes_OSINT_CACHE/icij/ (default: ~/.cache/Hermes-osint/icij/).
Python3 SKILL_DIR/scripts/fetch_icij_offshore.py --entity "EXAMPLE CORP" \
--out data/icij.csv

`
``**Danh tính/tài sản/vụ kiện tụng/lưu trữ/tin tức**

``` bash

# NYC property records (deeds, mortgages, liens) — ACRIS via Socrata
Python3 SKILL_DIR/scripts/fetch_nyc_acris.py --name "SMITH, JOHN" \
--out data/acris.csv
Python3 SKILL_DIR/scripts/fetch_nyc_acris.py --address "571 HUDSON" \
--out data/acris_addr.csv

# OpenCorporates — 130+ jurisdiction corporate registry
# (free token required; set OPENCORPORATES_API_TOKEN or pass --token)
Python3 SKILL_DIR/scripts/fetch_opencorporates.py --query "Example Corp" \
--jurisdiction us_ny --out data/opencorporates.csv

# CourtListener — federal + state court opinions, PACER dockets
Python3 SKILL_DIR/scripts/fetch_courtlistener.py --query "Smith v. Example Corp" \
--type opinions --out data/courts.csv

# Wayback Machine — historical web captures
Python3 SKILL_DIR/scripts/fetch_wayback.py --url "example.com" \
--match host --collapse digest --out data/wayback.csv

# Wikipedia + Wikidata — narrative bio + structured facts
# Set Hermes_OSINT_UA=your-app/1.0 (your@email) to identify yourself
Python3 SKILL_DIR/scripts/fetch_wikipedia.py --query "Bill Gates" \
--out data/wp.csv

# GDELT — global news in 100+ languages, ~2015→present
Python3 SKILL_DIR/scripts/fetch_gdelt.py --query '"Example Corp"' \
--timespan 1y --out data/gdelt.csv

`
``Tất cả đầu ra đều được chuẩn hóa bằng CSV với hàng tiêu đề. Chạy lại các tập lệnh một cách bình thường.Khi một cá nhân không có trong một nguồn (ví dụ: SEC EDGAR cho một tổ chức không công khai-
người của công ty, Hoa Kỳchi tiêu cho một người không phải là nhà thầu liên bang, Thượng viện
LDA đối với người không phải là khách hàng vận động hành lang), tập lệnh trả về 0 hàng có
cảnh báo rõ ràng thay vì âm thầm viết một CSV trống. EDGAR cụ thể
gắn cờ khi trình phân giải tên công ty khớp với trình gửi Biểu mẫu 3/4/5 riêng lẻ
chứ không phải là người đăng ký doanh nghiệp.

Ghi chú về giới hạn tỷ lệ có trong mục wiki của mỗi nguồn. Trình tìm nạp mặc định ở chế độ ngủ
một cách lịch sự giữa các yêu cầu được phân trang. **Khóa API tăng giới hạn tốc độ** cho
các nguồn hỗ trợ chúng (
`SEC_USER_AGENT

,
`SENATE_LDA_TOKEN

,
`OPENCORPORATES_API_TOKEN

,
`COURTLISTENER_TOKEN

). Tất cả các tập lệnh đều hiển thị
429 phản hồi ngay lập tức với thông báo hạn ngạch của thượng nguồn để người dùng
biết giảm tốc độ hoặc cung cấp chìa khóa.

### 3. Phân giải các thực thể trên các nguồn

Chuẩn hóa tên và tìm kết quả trùng khớp giữa hai tệp CSV:

``` bash

# Match lobbying CLIents (Senate LDA) against contract recipients (USAspending)
Python3 SKILL_DIR/scripts/entity_resolution.py \
--left data/lobbying.csv --left-name-col CLIent_name \
--right data/contracts.csv --right-name-col recipient_name \
--out data/cross_links.csv

`
``Ba cấp độ phù hợp với độ tin cậy rõ ràng:

| Bậc | Phương pháp | Sự Tự Tin |
|------|--------|-------------|
|
`exact
` | Các chuỗi được chuẩn hóa bằng nhau sau dải hậu tố/dấu chấm câu | cao |
|
`fuzzy
` | Sự bình đẳng về mã thông báo được sắp xếp (khớp từ-túi) | trung bình |
|
`token_overlap
` | Chồng chéo ≥60% mã thông báo, ≥2 mã thông báo được chia sẻ, mã thông báo ≥4 ký tự | thấp |

Xuất ra các cột
`cross_links.csv

:
`match_type, độ tin cậy, left_name,
right_name, left_normaliZed, right_normaliZed, left_row, right_row

.

### 4. Tương quan thời gian thống kê (tùy chọn)

Kiểm tra xem hai cụm chuỗi thời gian có gần nhau một cách đáng ngờ hay không - ví dụ:
hồ sơ vận động hành lang gần các giải thưởng hợp đồng - sử dụng bài kiểm tra hoán vị:

``` bash
Python3 SKILL_DIR/scripts/timing_analysis.py \

--donations data/lobbying.csv --donation-date-col filing_date \
--donation-amount-col income --donation-donor-col CLIent_name \
--donation-recipient-col registrant_name \
--contracts data/contracts.csv --contract-date-col award_date \
--contract-vendor-col recipient_name \
--cross-links data/cross_links.csv \
--permutations 1000 \
--out data/timing.JSON

`
``Các cờ cột của tập lệnh mang tính chung chung một cách có chủ đích — công cụ ban đầu là
được viết để quyên góp và trao giải, nhưng nó hoạt động cho bất kỳ thời điểm nào (sự kiện, người được trả tiền)
chuỗi được nối thông qua các liên kết chéo. Giả thuyết không: thời gian sự kiện là
độc lập với ngày trao giải. Giá trị p một đuôi = phần hoán vị
với khoảng cách trao giải gần nhất trung bình ≤ được quan sát. Tối thiểu 3 sự kiện cho mỗi (người trả tiền,
nhà cung cấp) để chạy thử nghiệm.

### 5. Xây dựng kết quả JSON (chuỗi bằng chứng)

``` bash
Python3 SKILL_DIR/scripts/build_findings.py \

--cross-links data/cross_links.csv \
--timing data/timing.JSON \
--out data/findings.JSON

`
``Mọi phát hiện đều có
`id, title, severity, confidence, summary, evidence[], sources[]

.
Mỗi mục bằng chứng sẽ trỏ về một hàng cụ thể trong CSV nguồn. Người dùng (hoặc một
đại lý tiếp theo) có thể xác minh mọi khiếu nại đối với nguồn của nó.

## Kỷ luật niềm tin và bằng chứng

Đây là quy tắc chịu tải của kỹ năng. Nói với người dùng:
- Mọi khiếu nại đều phải theo dõi vào hồ sơ. Không có khẳng định trần trụi.
- Mức độ tin cậy đi cùng với yêu cầu.
`match_type=fuzzy
`"có thể xảy ra",
không được “xác nhận”.
- Giải pháp thực thể tạo ra các ứng cử viên, KHÔNG tạo ra kết luận. Trận đấu
`fuzzy

giữa "ACME LLC""Acme Holdings Group" là sự dẫn dắt chứ không phải sự thật.
- Ý nghĩa thống kê ≠ hành vi sai trái. p < 0,05 có nghĩa là mẫu thời gian
khó có thể xảy ra dưới giá trị rỗng. Nó không thiết lập tham nhũng.
- Tất cả các nguồn dữ liệu ở đây đều là hồ sơ công khai. Chúng có thể vẫn chứa
thông tin không chính xác, thông tin cũ hoặc bị biên tập lại (GDPR, hồ sơ được niêm phong).

## Thêm nguồn dữ liệu mới

Sử dụng mẫu:

``` bash
cp SKILL_DIR/templates/source-template.md \
SKILL_DIR/references/sources/<your-source.md

`
``Điền vào tất cả 9 phần. Viết tập lệnh
`fetch_<source.py
` trong
`scripts/

chỉ sử dụng stdlib và ghi CSV được chuẩn hóa. Cập nhật danh sách nguồn trong
Phần "Khi nào nên sử dụng" ở trên.

## Công cụ và giới hạn của chúng
-
`entity_resolution.py
` KHÔNG sử dụng thư viện mờ bên ngoài (không có rAPIdfuzz,
không có sứa). Kết hợp túi mã thông báo là giới hạn trên ở đây. Nếu bạn cần
Levenshtein, phiên âm hoặc khớp ngữ âm, cài đặt pip riêng.

-
`timing_analysis.py
` sử dụng
`random
` của Python để hoán vị. cho
khả năng tái tạo, vượt qua

--seed N

.
- Tập lệnh
`fetch_*.py
` sử dụng
`urllib.request
` và tôn trọng
`Retry-After

. Nặng
việc sử dụng số lượng lớn vẫn có thể vi phạm Điều khoản dịch vụ - trước tiên hãy đọc phần pháp lý của từng nguồn.

## Lưu ý pháp lý

Tất cả các nguồn Giai đoạn 1 đều là hồ sơ công khai. Việc mua lại số lượng lớn được cho phép theo
điều khoản truy cập tương ứng của họ (FOIA, luật hồ sơ công cộng, ICIJ rõ ràng
xuất bản, dữ liệu công khai của OFAC). Tuy nhiên:
- Một số nguồn có tỷ lệ giới hạn mạnh mẽ. Tôn trọng tiêu đề của họ.
- Biên tập lại một số thông tin của người đăng ký (GDPR trên WHOIS, hồ sơ được niêm phong).
- Tham khảo chéo các hồ sơ công cộng để xác định các cá nhân riêng tư có thể có
những ý nghĩa đạo đức. Kỹ năng này tạo ra chuỗi bằng chứng chứ không phải lời buộc tội.