Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
OmniScan — 다중 엔진 취약점 스캐너로, 내장된 Nuclei Lite, Afrog, XRay 엔진을 포함합니다. FOFA/Shodan을 통한 자산 탐색, OOB 상호작용 탐지, Python 플러그인 시스템, 레드 팀 작전을 위한 실시간 결과 관리 기능을 제공합니다. | Kitploit
도구/GitHubGitHub/d3ckx1/omniscan
OSINT (Open Source Intelligence)ReconnaissanceVulnerability ScannersWeb Vulnerability ScannersDynamic Analysis (Sandboxing)Exploit FrameworksFuzzingPenetration TestingRed Teaming
GitHubd3ckx1/omniscan

OmniScan

다중 엔진 취약점 스캐너로, 내장된 Nuclei Lite, Afrog, XRay 엔진을 포함합니다. FOFA/Shodan을 통한 자산 탐색, OOB 상호작용 탐지, Python 플러그인 시스템, 레드 팀 작전을 위한 실시간 결과 관리 기능을 제공합니다.

957개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

OmniScan 종합 취약점 스캐너

OmniScan은 Python 기반의 경량 다중 엔진 취약점 스캐너로, 레드 팀 운영 및 보안 연구를 위해 설계되었습니다. 경량 Nuclei 엔진(Lite)과 Afrog 엔진을 통합했을 뿐만 아니라 강력한 자산 수집 및 결과 관리 기능을 제공합니다.

핵심 기능

1. 다중 엔진 지원

  • Nuclei Lite 엔진 (내장):
    • Python 네이티브로 구현된 Nuclei 핵심 로직으로, Go 환경에 의존하지 않습니다.
    • 보안 강화: simpleeval로 eval을 대체하고 샌드박스 환경에서 DSL 표현식을 실행하여 악성 템플릿 코드 실행을 방지합니다.
    • 지능형 변수 생성: 정의되지 않은 템플릿 변수(예: {{lang-file}} -> etc/passwd)를 자동으로 식별하고 채우며, 지능형 퍼징을 지원합니다.
    • 심층 호환성:
      • 대부분의 Nuclei Helper 함수 지원(hmac, gzip, reverse, rand_base 등 포함).
      • flow 및 req-condition 논리 제어 지원.
      • cookie-reuse 세션 유지 및 redirects 리다이렉션 제어 지원.
    • 지능형 오탐 필터링:
      • Smart FP Reduction: 200 OK 페이지에 대해 상태 코드만 일치하고 키워드는 일치하지 않는 오탐을 지능적으로 식별 및 필터링(Strict Mode Heuristic).
      • WAF 인식: 403/429 등 WAF 차단 페이지를 자동으로 식별하여 오탐 방지.
    • OOB 상호작용 탐지 (향상):
      • 내장 Interactsh 클라이언트, 무응답 취약점(Blind RCE, SSRF 등) 자동 처리.
      • 상관 ID(Correlation ID): 각 요청에 고유한 상관 ID를 생성하여 OOB 상호작용을 정확히 매칭, 오탐 완전 제거.
      • 적응형 대기: OOB 탐지 대기 시간을 지능적으로 조정하여 속도와 정확성의 균형 유지.
  • Afrog 엔진: Afrog 스캐너를 통합하여 추가적인 취약점 탐지 기능 제공.
  • Nuclei 공식 엔진: 시스템에 설치된 Nuclei 바이너리를 호출하여 스캔 지원.
  • XRay 엔진: XRay를 호출하여 웹 스캔 지원.

2. 플러그인 시스템 (New)

  • Python 플러그인 확장: 사용자가 Python 스크립트를 스캔 플러그인으로 작성하여 복잡한 논리를 처리할 수 있습니다.
  • 시각적 진행 상황: 내장 tqdm 진행 표시줄로 각 플러그인이 각 대상에서 스캔하는 진행 상황을 실시간으로 표시.
  • 간편 사용: BasePlugin 클래스를 상속하고 check(url) 메서드만 구현하면 됩니다.
  • 원활한 통합: 플러그인 스캔 결과가 자동으로 전체 보고서에 포함되어 Nuclei 결과와 통합 관리됩니다.
  • 지정 스캔: 단일 또는 여러 플러그인 파일을 지정하여 특정 검사를 수행할 수 있습니다.
  • 예시 플러그인:
    • git_config.py: .git/config 노출 탐지
    • spring_boot.py: Spring Boot Actuator 탐지
    • ds_store.py: .DS_Store 노출 탐지
    • phpinfo.py: phpinfo() 페이지 탐지
    • backup_files.py: 일반적인 백업 파일 탐지 (.bak, .zip 등)
    • swagger_ui.py: Swagger UI 문서 탐지

3. 자산 수집

  • FOFA 검색: FOFA API 통합, 구문별 자산 일괄 검색 지원 (예: country="CN").
  • Shodan 검색: Shodan API 통합, 키워드별 자산 검색 지원.
  • 단일 대상: 단일 URL을 직접 지정하여 빠른 스캔 지원.
  • 로컬 대상 로드: 텍스트 파일에서 URL 목록을 일괄 로드 지원.
  • 지능형 활성 탐지: 스캔 전 HTTP 활성 상태를 자동으로 확인하여 유효하지 않은 대상 필터링.
  • URL 표준화: URL 프로토콜(http/https) 자동 완성 및 중복 제거.

4. 고성능 비동기 아키텍처 및 대량 템플릿 지원

  • Python asyncio 및 aiohttp 프레임워크 사용.
  • 메모리 최적화 (NEW):
    • Lazy Loading: 템플릿 파일을 필요에 따라 로드하여 한 번에 모든 파일을 로드하지 않음.
    • Batch Processing: 천만 개 규모의 POC 템플릿 일괄 스캔 지원 (기본 배치 5000개), 대규모 스캔 시 메모리 부족(OOM) 문제 완전 해결.
    • 자동 메모리 회수: 각 배치 스캔 완료 후 자동으로 메모리 해제.
  • 실시간 진행 모니터링: 상세한 배치 진행 상황 및 백분율 표시.
  • LogFilter 시스템: "Illegal cookie name" 등 비핵심 오류를 자동으로 차단하여 출력을 깔끔하게 유지.

5. 결과 관리

  • 실시간 결과 저장:
    • 취약점 발견 시 즉시 SQLite 데이터베이스와 CSV 파일에 기록하여 프로그램 중단으로 인한 데이터 손실 방지.
    • 각 대상 스캔 완료 후 요약 통계 자동 갱신.
  • 다중 형식 보고서: JSON, CSV, HTML 형식의 스캔 보고서를 실시간 생성.
  • SQLite 데이터베이스: 내장 SQLite 데이터베이스로 스캔 결과 자동 중복 제거 (템플릿 ID + 대상 + URL 기반).
  • 상세 요약:
    • 스캔 중 각 대상의 취약점 요약 실시간 출력 (해당 대상의 현재 배치 발견 및 누적 발견 총계 포함).
    • 진행 표시줄에 전역 누적 발견 취약점 총계 실시간 표시.
    • 스캔 종료 후 전체 취약점 통계 제공.

6. OOB (대역외) 상호작용 탐지

  • 완전 자동 폐쇄 루프 탐지: Blind RCE, SSRF, Blind SQLi 등 무응답 취약점 자동 처리.
  • 내장 Interactsh Client:
    • interactsh-client 바이너리를 자동으로 다운로드 및 관리합니다. (interactsh-client.zip을 업로드했으므로 이 디렉토리에서 직접 압축을 풀면 됩니다.)
    • OOB 페이로드 URL 자동 획득 (예: xxx.oast.pro).
    • DNS/HTTP/SMTP 상호작용 로그 실시간 모니터링.
    • 제로 구성: 스캐너가 템플릿의 {{interactsh-url}}을 실시간으로 획득한 페이로드로 자동 대체.

빠른 시작

환경 요구 사항

  • Python 3.8+
  • Linux / macOS / Windows

설치

  1. 리포지토리 클론:

    root@kitploit:~
    git clone https://github.com/d3ckx1/OmniScan.git
    cd omniscan
    
  2. 종속성 설치:

    root@kitploit:~
    pip3 install -r requirements.txt
    
  3. 도구 구성 (선택 사항):

    • Afrog 또는 XRay를 사용하는 경우 프로젝트 루트 디렉토리 또는 시스템 경로에 해당 실행 파일이 있는지 확인하세요.
    • config.yml 구성 (선택 사항) API Key 및 스캔 매개변수 설정.

사용 예제

1. 단일 대상 스캔

단일 URL 스캔:

root@kitploit:~
python3 omniscan.py -u http://example.com --tool lite -T ./templates/cve/

2. 자산 수집 및 스캔 (FOFA)

FOFA에서 자산을 검색하고 Nuclei Lite 엔진으로 스캔:

root@kitploit:~
python3 omniscan.py -f 'app="SpringBoot"' --tool lite -T ./templates/spring-boot/

3. 로컬 일괄 스캔

urls.txt에서 대상을 읽고 스캔:

root@kitploit:~
python3 omniscan.py -l urls.txt --tool lite -T ./templates/cve/

4. 스캔 도구 지정

  • Nuclei Lite: python3 omniscan.py -l urls.txt --tool lite -T ./templates/
  • Afrog: python3 omniscan.py -l urls.txt --tool afrog
  • XRay: python3 omniscan.py -l urls.txt --tool xray

5. 대화형 모드

--tool 매개변수 없이 실행하면 대화형 메뉴가 나타나 도구를 선택할 수 있습니다:

root@kitploit:~
python3 omniscan.py -l urls.txt

6. OOB 취약점 탐지

Blind RCE 취약점 스캔 (Interactsh 자동 활성화):

root@kitploit:~
python3 omniscan.py -l urls.txt --tool lite -T ./templates/blind-rce.yaml

OOB 상호작용이 감지되면 콘솔에 [OOB DETECTED]가 출력되고 취약점이 기록됩니다.

8. Python 플러그인 스캔 활성화

Nuclei Lite 엔진을 사용하고 모든 플러그인 활성화:

root@kitploit:~
python3 omniscan.py -l urls.txt --tool lite -T ./templates/ --plugins

9. 특정 플러그인 실행 (특정 검사)

Git Config 및 PHPInfo 플러그인만 실행:

root@kitploit:~
python3 omniscan.py -l urls.txt --tool lite -T ./templates/ --plugin-file plugins/git_config.py,plugins/phpinfo.py

10. 템플릿 분류/검증만 수행

실제 스캔 없이 템플릿 호환성만 확인:

root@kitploit:~
python3 omniscan.py --classify-only --tool lite -T ./templates/

매개변수 설명

구성 파일 (config.yml)

root@kitploit:~
app:
  lite_timeout: 10        # 요청 시간 초과 (초)
  lite_threads: 10        # 동시 스레드 수
  use_async: true         # 비동기 모드 활성화
  user_agents:            # 사용자 정의 User-Agent 풀
    - "Mozilla/5.0..."

fofa:
  email: "your_email"
  key: "your_key"

shodan:
  api_key: "your_key"

output:
  formats: ["json", "csv", "html"] # 보고서 형식

디렉토리 구조

  • omniscan.py: 메인 프로그램 진입점, 매개변수 분석 및 작업 스케줄링 담당.
  • nuclei_lite.py: Nuclei Lite 핵심 엔진, YAML 템플릿 파싱 및 스캔 구현.
  • result_manager.py: 결과 관리 모듈, 중복 제거 및 보고서 생성 처리.
  • database.py: SQLite 데이터베이스 관리.
  • config.py: 구성 로드 모듈.

자주 묻는 질문

Q: [OOB DETECTED]는 무엇을 의미하나요? A: 스캐너가 대역외 상호작용(Out-of-Band Interaction)을 성공적으로 감지했음을 의미합니다. 일반적으로 대상이 DNS 또는 HTTP 요청 콜백을 트리거하여 Blind RCE, SSRF 또는 Blind SQLi 등의 취약점이 존재함을 증명합니다.

Q: FOFA/Shodan API를 어떻게 구성하나요? A: config.yml 파일에 API Key를 입력하거나 환경 변수 FOFA_EMAIL, FOFA_KEY, SHODAN_API_KEY를 통해 설정할 수 있습니다.

Q: 어떤 운영 체제를 지원하나요? A: Omniscan은 크로스 플랫폼이며 Linux, macOS, Windows를 지원합니다. 외부 도구(예: afrog, interactsh-client)는 현재 시스템에서 실행 가능해야 합니다.

라이선스

MIT License

도구 다운로드
매개변수설명예시
-u URL단일 URL 스캔-u http://example.com
-fFOFA로 자산 검색-f 'country="CN"'
-sShodan으로 자산 검색-s 'apache'
-l FILE로컬 대상 파일 지정-l targets.txt
-T TEMPLATENuclei 템플릿 경로 지정 (파일/디렉토리)-T ./templates/
--tool NAME스캔 도구 지정 (nuclei/afrog/xray/lite)--tool lite
--severity취약점 심각도 지정 (기본값 critical,high)--severity high,medium
--pluginsPython 플러그인 스캔 활성화 (plugins/ 디렉토리 스캔)--plugins
--plugin-file FILE특정 플러그인 파일 실행 지정 (쉼표로 구분)--plugin-file plugins/test.py
--new새로 게시된 템플릿만 스캔 (Nuclei 지원 필요)--new
--no-resume중단점 재개 비활성화--no-resume
--verbose상세 디버그 로그 표시--verbose