Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
OneForAll — 멀티 소스 서브도메인 열거 도구로, 50개 이상의 수집 모듈, DNS 무차별 대입, 패시브 DNS 분석, 인증서 투명성, 검색 엔진 스크래핑, 서브도메인 인수 탐지 기능을 제공하여 정찰 작업을 수행합니다. | Kitploit
도구/GitHubGitHub/shmilylty/oneforall
OSINT (Open Source Intelligence)ReconnaissanceInformation GatheringPenetration TestingSubdomain EnumerationDNS Analysis
GitHubshmilylty/oneforall

OneForAll

멀티 소스 서브도메인 열거 도구로, 50개 이상의 수집 모듈, DNS 무차별 대입, 패시브 DNS 분석, 인증서 투명성, 검색 엔진 스크래핑, 서브도메인 인수 탐지 기능을 제공하여 정찰 작업을 수행합니다.

저장소 보기
10.0k1.4k1304개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

OneForAll

Build Status codecov Maintainability License python python

👊OneForAll은 강력한 서브도메인 수집 도구입니다 📝English Document

Example

🚀시작 가이드

📢 이 문서를 꼭 읽어 주시기 바랍니다. OneForAll을 빠르게 익히는 데 도움이 됩니다!

🐍설치 요구 사항

OneForAll은 Python 3.6.0을 기반으로 개발 및 테스트되었으며, Python 3.6.0 이상의 버전이 필요합니다. Python 환경 설치는 Python 3 설치 가이드를 참고하세요. 다음 명령어로 Python 및 pip3 버전을 확인합니다.

python -V
pip3 -V

다음과 유사한 출력이 나타나면 Python 환경에 문제가 없는 것입니다.

Python 3.6.0
pip 19.2.2 from C:\Users\shmilylty\AppData\Roaming\Python\Python36\site-packages\pip (python 3.6)
✔설치 단계 (git 버전)
  1. 다운로드

해당 프로젝트는 개발 중이며 지속적으로 업데이트됩니다. 다운로드 시 git clone**을 사용하여 최신 코드 저장소를 클론하고, 이후 업데이트를 편리하게 진행하세요. Releases에서 다운로드하는 것은 권장하지 않습니다. Releases의 버전 업데이트가 느리고 업데이트가 불편하기 때문입니다. 본 프로젝트는 이미 Gitee에 미러링되어 있습니다. 중국 사용자는 Gitee를 통해 클론하는 것이 더 빠릅니다.

git clone https://gitee.com/shmilylty/OneForAll.git

또는:

git clone https://github.com/shmilylty/OneForAll.git
  1. 설치

pip3를 사용하여 OneForAll의 의존성을 설치할 수 있습니다. 다음은 Windows 시스템에서 pip3를 사용한 의존성 설치 예시입니다. 참고: Python3가 시스템 Program Files 디렉터리(예: C:\Program Files\Python36)에 설치된 경우, 관리자 권한으로 명령 프롬프트(cmd)를 실행하여 다음 명령어를 수행하세요!

cd OneForAll/
python3 -m pip install -U pip setuptools wheel -i https://mirrors.aliyun.com/pypi/simple/
pip3 install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
python3 oneforall.py --help

다른 플랫폼은 의존성 설치를 참고하세요. 의존성 설치 중 특정 라이브러리 컴파일이 실패하는 경우 자주 묻는 질문 및 답변.md 문서의 해결 방법을 참고하세요. 그래도 해결되지 않으면 그룹에 가입하여 문제를 보고해 주세요.

  1. 업데이트

다음 명령어를 실행하여 프로젝트를 업데이트합니다 (/config/setting.py 및 /config/api.py의 수정 사항은 보존됩니다).

git stash        # 로컬 변경사항 임시 저장
git fetch --all  # 프로젝트 업데이트 가져오기
git pull         # 다운로드 및 덮어쓰기
git stash pop    # 로컬 변경사항 복원
✔설치 단계 (docker 버전)

먼저 설정 파일을 다운로드하고 편집하여 자신의 api 및 개인 설정을 추가합니다. 원본 파일 구조를 유지하세요.

config
├── api.py
├── default.py
├── __init__.py
├── log.py
└── setting.py

이미지를 가져와서 실행합니다. ~/.config를 자신의 설정 파일 폴더 경로로 바꾸세요.

docker pull shmilylty/oneforall
docker run -it --rm -v ~/results:/OneForAll/results -v ~/.config:/OneForAll/config shmilylty/oneforall --target example.com run

매개변수는 명령어 끝에 직접 추가합니다. 결과는 로컬 디렉터리 ~/results에 출력됩니다. 다른 위치에 저장하려면 직접 수정하세요.

✨사용 데모

pip3를 통해 의존성을 설치한 경우 다음 명령어로 예제를 실행합니다.

python3 oneforall.py --target example.com run
python3 oneforall.py --targets ./example.txt run

Example

🧐결과 설명

python3 oneforall.py --target example.com run 명령어를 예로 들면, OneForAll이 기본 매개변수로 정상 실행되면 results 디렉터리에 해당 결과가 생성됩니다.

Result

example.com.csv는 각 메인 도메인 아래 서브도메인 수집 결과입니다.

all_subdomain_result_1583034493.csv는 OneForAll 실행 시 수집된 서브도메인의 전체 결과를 모은 파일로, example.com.csv를 포함합니다. 일괄 수집 시나리오에서 전체 결과를 편리하게 얻을 수 있습니다.

result.sqlite3는 각 OneForAll 실행 시 수집된 서브도메인의 SQLite3 결과 데이터베이스입니다. 데이터베이스 구조는 아래 그림과 같습니다.

Database

example_com_origin_result와 같은 테이블은 각 모듈의 초기 서브도메인 수집 결과를 저장합니다.

example_com_resolve_result와 같은 테이블은 서브도메인을 해석한 결과를 저장합니다.

example_com_last_result와 같은 테이블은 이전 서브도메인 수집 결과를 저장합니다 (두 번 이상 수집해야 생성됨).

example_com_now_result와 같은 테이블은 현재 서브도메인 수집 결과를 저장합니다. 일반적으로 이 테이블을 참조하면 됩니다.

자세한 내용은 필드 설명을 참조하세요.

🤔사용 도움말

명령줄 매개변수는 자주 사용되는 몇 가지 기본 매개변수만 제공합니다. 더 자세한 매개변수 설정은 setting.py를 참조하세요. 명령줄 인터페이스에서 자주 사용해야 한다고 생각하는 매개변수나 부족한 부분이 있으면 피드백을 환영합니다. 잘 알려진 이유로 차단된 수집 인터페이스를 사용해야 하는 경우 먼저 setting.py에서 프록시를 구성하세요. 일부 수집 모듈은 API를 제공해야 합니다 (대부분 무료로 계정을 등록하여 얻을 수 있음). 사용하려면 api.py에서 API 정보를 구성하고, 사용하지 않으면 관련 오류 메시지를 무시하세요. (자세한 모듈은 수집 모듈 설명을 읽어보세요.)

OneForAll 명령줄 인터페이스는 Fire를 기반으로 구현되었습니다. Fire의 고급 사용 방법은 Fire CLI 사용을 참조하세요.

oneforall.py는 메인 프로그램 진입점입니다. oneforall.py는 brute.py, takerover.py 및 dbexport.py 등의 모듈을 호출할 수 있습니다. 서브도메인 브루트포싱을 위해 brute.py가 분리되었고, 서브도메인 인수 위험 검사를 위해 takerover.py가 분리되었으며, 데이터베이스 내보내기를 위해 dbexport.py가 분리되었습니다. 이러한 모듈은 독립적으로 실행될 수 있으며, 더 다양한 매개변수를 허용합니다. 이러한 모듈을 개별적으로 사용하려면 사용 도움말을 참조하세요.

❗참고: 사용 중 문제나 의문이 있을 경우 먼저 Issues에서 검색해 보시고, 자주 묻는 질문 및 답변도 참조하세요.

oneforall.py 사용 도움말

다음 도움말 정보는 최신이 아닐 수 있습니다. python oneforall.py --help를 사용하여 최신 정보를 확인하세요.

python oneforall.py --help
NAME
    oneforall.py - OneForAll 도움말 정보

SYNOPSIS
    oneforall.py COMMAND | --target=TARGET <flags>

DESCRIPTION
    OneForAll은 강력한 서브도메인 수집 도구입니다

    Example:
        python3 oneforall.py version
        python3 oneforall.py --target example.com run
        python3 oneforall.py --targets ./domains.txt run
        python3 oneforall.py --target example.com --valid None run
        python3 oneforall.py --target example.com --brute True run
        python3 oneforall.py --target example.com --port small run
        python3 oneforall.py --target example.com --fmt csv run
        python3 oneforall.py --target example.com --dns False run
        python3 oneforall.py --target example.com --req False run
        python3 oneforall.py --target example.com --takeover False run
        python3 oneforall.py --target example.com --show True run

    Note:
        매개변수 alive의 선택 가능한 값 True, False는 각각 활성 서브도메인과 전체 서브도메인 결과 내보내기를 의미합니다.
        매개변수 port의 선택 가능한 값은 'default', 'small', 'large'입니다. 자세한 내용은 config.py 구성을 참조하세요.
        매개변수 fmt의 선택 가능한 형식은 'csv', 'json'입니다.
        매개변수 path의 기본값은 None이며, OneForAll 결과 디렉터리 경로를 사용합니다.
도구 다운로드