
쓰레기 입력에서 IoC를 추출하고 여러 CTI 서비스를 사용하여 평판을 확인하는 간단한 애플리케이션입니다.

쓰레기 입력에서 IoC를 추출하고 여러 서비스를 사용하여 평판을 확인하는 간단한 애플리케이션입니다.
🌐 demo.cyberbro.net
Cybergordon과 IntelOwl에서 영감을 받았습니다.
이 프로젝트는 복잡한 솔루션을 배포하지 않고도 여러 서비스를 사용하여 관측 가능 항목의 평판을 확인할 수 있는 간단하고 효율적인 방법을 제공하는 것을 목표로 합니다. 문서는 https://docs.cyberbro.net/ 에서 확인하세요.
[!TIP] 사용자 정의 보고서를 작성하려면 MCP(Model Context Protocol)를 통해 선호하는 LLM(Claude, OpenAI gpt-5...)과 Cyberbro를 사용하세요.
자세한 내용은 Cyberbro MCP를 확인하세요.

[!TIP] 게으르다면 Docker가 필요합니다.
git clone을 실행하고,.env.sample을.env로 복사한 후,docker compose up을 실행한 다음localhost:5000으로 이동하세요. 네, 그게 전부입니다!
git clone https://github.com/stanfrbd/cyberbro
cd cyberbro
cp .env.sample .env
[!NOTE] API 키가 없나요? 괜찮습니다.
.env.sample을.env로 복사하고 선택적 값은 비워 두세요. 프록시를 사용하는 경우 주의하세요.
모든 무료 엔진을 사용할 수 있습니다!
.env 파일에 (필요한 경우 프록시 포함) 값을 입력하세요.[!WARNING]
.env에는 민감한 비밀이 포함되어 있으며 절대 커밋해서는 안 됩니다. 프로덕션/팀 배포의 경우 SOPS, Vault 또는 이에 상응하는 비밀 관리자 워크플로를 사용하세요.
ABUSEIPDB=token_here
ALIENVAULT=token_here
CRIMINALIP_API_KEY=token_here
CROWDSTRIKE_CLIENT_ID=client_id_here
CROWDSTRIKE_CLIENT_SECRET=client_secret_here
DFIR_IRIS_API_KEY=token_here
DFIR_IRIS_URL=https://dfir-iris.local
GOOGLE_CSE_CX=cx_here
GOOGLE_CSE_KEY=key_here
GOOGLE_SAFE_BROWSING=token_here
HISTER_TOKEN=token_here
HISTER_BASE_URL=https://hister.example.com
IPAPI=token_here
IPINFO=token_here
MDE_CLIENT_ID=client_id_here
MDE_CLIENT_SECRET=client_secret_here
MDE_TENANT_ID=tenant_here
MISP_API_KEY=token_here
MISP_URL=https://misp.local
MISP_FEEDBACK_SERVER_URL=https://misp-feedback.local
MISP_FEEDBACK_TOKEN=token_here
OPENCTI_API_KEY=token_here
OPENCTI_URL=https://demo.opencti.io
PROXY_URL=
RANSOMWARE_LIVE_API_KEY=token_here
RL_ANALYZE_API_KEY=token_here
RL_ANALYZE_URL=https://spectra_analyse_url_here
ROSTI_API_KEY=token_here
SHODAN=token_here
SPUR_US=token_here
THREATFOX=token_here
VIRUSTOTAL=token_here
WEBSCOUT=token_here
[!IMPORTANT]
v0.13.0버전부터 Cyberbro는 더 이상secrets.json및/config페이지를 지원하지 않습니다. 논의 165를 참조하세요.
이전secrets.json이 이미 있는 경우 다음 명령으로.env로 변환하세요:python3 scripts/secrets_json_to_env.py
문서에서 배포를 위한 고급 옵션을 참조하세요.
[!WARNING]
compose플러그인을docker-compose가 아닌docker compose로 설치했는지 확인하세요. Docker에서 앱은 로컬.env에서FLASK_HOST=127.0.0.1로 설정하더라도 컨테이너 내부에서0.0.0.0에 바인딩됩니다.
docker compose up # use -d to run in background and use --build to rebuild the image
이미지를 빌드하기 전에
.env를 편집하는 것을 잊지 마세요.
모든 Docker 배포 옵션을 보려면 문서에서 배포를 위한 고급 옵션을 참조하세요.
종속성을 설치하기 전에 venv를 생성하는 것이 좋습니다.
pip install -r requirements.txt
gunicorn으로 앱 실행 (클린 모드).gunicorn -c prod/gunicorn.conf.py app:app
python3 app.py
[!CAUTION] 프로덕션 환경에서 사용하려면 보안 문제를 방지하기 위해 잘 구성된 리버스 프록시 + WAF를 사용하세요.
/api/에서 사용 가능하며 GUI 또는 명령줄을 통해 액세스할 수 있습니다.현재 3개의 엔드포인트가 있습니다:
/api/analyze - 텍스트를 분석하고 분석 ID 반환 (JSON)./api/is_analysis_complete/<analysis_id> - 분석 완료 여부 확인 (JSON)./api/results/<analysis_id> - 이전 분석 결과 검색 (JSON).curl -X POST "http://localhost:5000/api/analyze" -H "Content-Type: application/json" -d '{"text": "cyberbro.net", "engines": ["reverse_dns", "rdap_whois"]}'
{
"analysis_id": "e88de647-b153-4904-91e5-8f5c79174854",
"link": "/results/e88de647-b153-4904-91e5-8f5c79174854"
}
curl "http://localhost:5000/api/is_analysis_complete/e88de647-b153-4904-91e5-8f5c79174854"
{
"complete": true
}
curl "http://localhost:5000/api/results/e88de647-b153-4904-91e5-8f5c79174854"
[
{
"observable": "cyberbro.net",
"rdap_whois": {
"abuse_contact": "[email protected]",
"creation_date": "2024-12-20",
"data_source": "rdap",
"emails": [
"[email protected]"
],
"expiration_date": "2026-12-20",
"link": "https://rdap.verisign.com/net/v1/domain/CYBERBRO.NET",
"name_servers": [
"anderson.ns.cloudflare.com",
"lisa.ns.cloudflare.com"
],
"organization": null,
"registrant": null,
"registrant_country": null,
"registrant_email": null,
"registrar": "Cloudflare, Inc.",
"update_date": "2025-11-20"
},
"reverse_dns": {
"reverse_dns": [
"172.67.197.226",
"104.21.42.7"
]
},
"reversed_success": true,
"type": "FQDN"
}
]
[!NOTE] 전용 문서 페이지에서 사용 가능한 모든 엔진 이름을 확인할 수 있습니다.
[!NOTE] 질문이 있으신가요? https://docs.cyberbro.net을 확인하거나 이슈를 제출하세요.
고급 구성(배포 전supervisord.conf튜닝, 표시 엔진 선택,/api/접두사 변경 등)은 전용 문서 페이지를 확인하세요.
이 프로젝트에 풀 리퀘스트를 보내고 개선에 도움을 주신 모든 놀라운 기여자분들께 큰 감사를 드립니다:
여러분의 기여에 진심으로 감사드립니다!
MIT License
Copyright (c) 2024-2026 stanfrbd
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
이 프로젝트에 사용된 로고는 개인 및 상업적 용도로 무료이며 여기에서 찾을 수 있습니다.