
패시브 OSINT 분류 콘솔: 이메일, 사용자명, 도메인, IP, 암호화폐 지갑 정찰을 위한 도구입니다. 사례 관리, 선별된 리소스 링크, 방어 연구를 위한 내보내기 가능한 보고서를 제공합니다.
v0.1.0 – 베타: 내 컴퓨터에서는 잘 됨 에디션

이번 릴리스의 변경 사항과 베타 범위는 CHANGELOG.md를 참조하세요.
오픈소스 정찰 콘솔
브라우저가 아닌, 헌터를 위해 만들어졌습니다.
OSINT Menace는 Defensive Thinking Project입니다.
OSINT Menace는 사건 기반 OSINT 조사를 위한 Python 애플리케이션으로, 터미널 워크스페이스와 Docker화된 웹 인터페이스를 제공합니다. 분석가는 공개 출처 관찰 내용을 수집하고, 결과를 검토하고, 유용한 발견 사항을 사건에 저장하고, 보고서를 내보낼 수 있습니다.
이 도구는 방어적 조사, 디지털 발자국 검토, 조사 메모 작성, 그리고 승인된 보안 작업을 위해 설계되었습니다. 수동적 조회, 생성된 출처 링크, 공공 기록 피벗, DNS/RDAP 정보, 인증서 투명성, 지갑 탐색기, 그리고 분석가가 제어하는 사건 관리를 선호합니다.
이것은 나중에 더 완전한 사이트로 성장할 예정인 초기 로컬 빌드입니다. 현재 버전은 로컬 분석가 콘솔 및 Docker 호스팅 프로토타입으로 유용합니다.
설치된 버전은 python menace.py --version으로 확인하세요.
전체 터미널 워크플로와 명령 참조는 CLI.md를 참조하세요.
터미널 검색은 GitHub/Bluesky/GitLab/Hacker News 공개 프로필,
전화 메타데이터, Bitcoin/Ethereum 요약 및 최근 트랜잭션, 공개 페이지
텍스트/발췌, 그리고 구조화된 기록 출처 일치를 지원합니다. 사용자 이름/Auto 검색은 기본적으로
직접 확인과 전체 후보 프로필 링크 목록으로 설정되며, 다른 유형은 기본적으로
수집으로 설정됩니다. --mode links, --mode collect, 또는 --mode both를 명시적으로 선택하세요.
CLI는 또한 OSINT Links 카탈로그와 독립형 HTML 내보내기를 제공합니다.
SEC와 CourtListener는 소스 구성이 필요하며, CLI는 누락된 구성과 차단/속도 제한된
요청을 명시적으로 보고합니다. CLI 가이드의 커버리지 및 자격 증명 표를 참조하세요.
브라우저나 웹 서버를 시작하지 않고 OSINT Menace를 실행하세요:
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python menace.py
번호가 매겨진 메뉴는 활성 사건, 선택적 저장, 중복 감지, 사건/항목 관리, 검토 상태, 메모/태그, 안내식 문서 편집, 일괄 입력, 그리고 Word/Markdown/JSON/HTML 보고서 마법사를 지원합니다. 직접 명령은 동일한 저장 데이터 작업을 지원합니다:
python menace.py search exampleuser --type username
python menace.py search example.com --type domain --json
python menace.py create "Investigation One"
python menace.py cases
python menace.py search exampleuser --type username --case CASE_ID --link 1 --link 3
python menace.py dossier --fields
python menace.py dossier CASE_ID --field summary --value "Analyst summary here"
python menace.py show CASE_ID
python menace.py export CASE_ID --format docx --output investigation.docx
python menace.py export demo --format docx --output demo.docx
--case는 --link가 단일 대상에서 번호가 매겨진 링크를 선택하지 않는 한 전체 결과를 저장합니다.
링크는 분석가가 검증할 때까지 후보로 남습니다.
명령 앞에 --data-dir /path/to/data를 사용하면 다른 데이터 디렉터리를 선택합니다;
기본값은 이 체크아웃의 data 폴더입니다. Word 내보내기는 저장된 문서
필드를 사용합니다. 기존 출력 파일은 절대 덮어쓰지 않습니다.
플래그는 python menace.py --help 또는 python menace.py search --help를 사용하세요.
원래의 osint_tool.py 검색 CLI도 계속 사용할 수 있습니다.
data/cases 아래에 JSON 파일로 저장되는 사건 워크스페이스.OSINT Menace는 기본적으로 의도적으로 보수적입니다.
기본 포함:
기본 제외:
Auto 모드는 줄바꿈, 쉼표 또는 세미콜론으로 구분된 혼합 대상을 허용합니다. 가능한 대상 유형을 감지하고 일치하는 모듈을 실행합니다.
예시:
[email protected]
John P. Smith
example.com
1.1.1.1
0x0000000000000000000000000000000000000000
이메일 검색 포함:
사용자 이름 검색 포함:
{username}을 사용한 선택적 사용자 정의 포럼 URL 패턴.전화 검색 포함:
Signal 및 Life360 계정 검색은 의도적으로 자동화되지 않습니다.
전체 이름 검색 포함:
도메인 검색 포함:
IP 검색 포함:
지갑 검색 포함:
사건은 조사를 위한 작업 폴더입니다. 다음 위치에 저장됩니다:
data/cases/
사건 워크플로는 다음을 지원합니다:
사건 내의 Edit Dossier를 사용하여 제공된 배경, 조사 결과, 방법론, 미완료 작업, 외부 검색 메모를 작성하세요. 문서는 제공된 조사 템플릿의 구조를 따릅니다. 저장된 검색과 선택된 링크는 지원 기록으로 남아 캡처 로그에 나열됩니다. 문서 필드는 분석가가 입력하며 HTML, Markdown, JSON 내보내기에 포함됩니다. HTML 보고서의 인쇄 작업을 사용하여 브라우저를 통해 PDF를 인쇄하거나 저장하세요. 사건, 문서 편집기 또는 보고서 페이지에서 Download Word를 사용하여 편집 가능한 DOCX를 받으세요. 내보내기 전에 문서 편집 내용을 저장하세요. 사진 첨부는 이 버전에서 구현되지 않았습니다.
각 사건은 네 가지 형식으로 내보낼 수 있습니다:
JSON: 기계 판독 가능한 사건 데이터.Word: 편집 가능한 DOCX 문서 및 저장된 증거.Markdown: 경량 보고서 텍스트.HTML Report: 메타데이터, 요약, 발견 사항, 링크, 메모, 인쇄 지원이 포함된 스타일이 적용된 최종 보고서 페이지./osint-links 페이지에는 다음에서 파생된 엄선된 OSINT 카테고리 및 링크 세트가 포함되어 있습니다:
https://start.me/p/L1rEYQ/osint4all
출처는 OSINT Links 페이지 하단에 표시됩니다. 로컬 카탈로그는 다음 위치에 저장됩니다:
data/catalog/osint_links.json
기본 카탈로그는 명백히 안전하지 않은 신원 생성, onion 미러, 스크래핑된 데이터 항목을 제외합니다.
상태 확인:
curl http://localhost:8088/health
검색 실행:
curl -sS http://localhost:8088/api/search \
-H 'Content-Type: application/json' \
-d '{"search_type":"auto","query":"[email protected]\nexampleuser\nexample.com"}'
지원되는 search_type 값:
auto
email
username
phone
name
domain
ip
wallet
.
├── menace.py # Main CLI entry point and direct commands
├── cli_workspace.py # Interactive search and case workflows
├── cli_catalog.py # Platform coverage and OSINT Links catalog
├── collectors.py # Direct public-source collectors
├── discovery.py # Search modes and result classification
├── terminal_output.py # Readable terminal output
├── app.py # Flask routes, case management, reports, API
├── osint_tool.py # Shared search helpers and original CLI
├── dossier.py # Dossier fields and Markdown sections
├── word_report.py # Word report generation
├── demo.py # Fictional demo case
├── Dockerfile # Python/Gunicorn container
├── docker-compose.yml # Local service definition
├── requirements.txt # Python dependencies
├── INSTALL.md # Installation and operations guide
├── CLI.md # Terminal workflow and command reference
├── README.md # Product and developer overview
├── data/
│ ├── cases/ # Saved case JSON files
│ └── catalog/ # OSINT Links catalog
├── exports/ # Created for local exports, excluded from Git
├── tests/ # Automated CLI, collector, and report tests
├── static/
│ └── styles.css # Cyberpunk UI styling
└── templates/ # Flask/Jinja HTML templates
프로젝트 루트에서 의존성이 설치된 상태로:
python -m unittest discover -s tests -v
git diff --check
테스트는 임시 사건 디렉터리와 모의 네트워크 응답을 사용합니다. 실제 제공자
가용성은 이 테스트 스위트와 별개입니다. 로컬 보고서를 exports/ 아래에 저장하세요, 예를 들어:
python menace.py export demo --format docx --output exports/demo.docx