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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
o365spray — Microsoft O365를 대상으로 하는 사용자명 열거 및 비밀번호 스프레이 도구 | Kitploit
도구/GitHubGitHub/0xzdh/o365spray
Password AttacksInformation GatheringPenetration TestingCloud SecurityAuthentication
GitHub0xzdh/o365spray

o365spray

Microsoft O365를 대상으로 하는 사용자명 열거 및 비밀번호 스프레이 도구

저장소 보기
1.0k1211년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

o365spray

o365spray는 Microsoft Office 365(O365)를 대상으로 하는 사용자명 열거 및 비밀번호 스프레이 도구입니다. 이 도구는 감사의 글에서 언급된 연구자들이 발견하고 식별한 다양한 열거 및 스프레이 기술을 재구현합니다.

교육, 승인 및/또는 연구 목적으로만 사용하세요.

경고: Autologon, oAuth2 및 RST 사용자 열거 모듈은 사용자당 한 번의 인증 시도를 제출하여 작동합니다. 모듈을 단일 실행에서 비밀번호 스프레이와 함께 실행하면, o365spray는 비밀번호 스프레이를 수행하기 전에 자동으로 잠금 타이머를 재설정합니다. 열거만 단독으로 실행하는 경우, 사용자는 각 인증 시도가 몇 번, 언제 이루어졌는지 인지하고 비밀번호 스프레이를 수행하기 전에 수동으로 잠금 타이머를 재설정해야 합니다.

목차

  • 사용법
  • 모듈
    • 검증
    • 열거
    • 스프레이
  • FireProx URL
    • 열거
    • 스프레이
  • 사용자 에이전트 무작위화
  • 감사의 글
  • 버그
  • 이전 버전

사용법

o365spray

도메인이 O365를 사용 중인지 확인:
o365spray --validate --domain test.com

지정된 도메인에 대해 사용자명 열거 수행:
o365spray --enum -U usernames.txt --domain test.com

지정된 도메인에 대해 비밀번호 스프레이 수행:
o365spray --spray -U usernames.txt -P passwords.txt --count 2 --lockout 5 --domain test.com

root@kitploit:~
usage: o365spray [flags]

o365spray | Microsoft O365 User Enumerator and Password Sprayer -- v3.0.4

options:
  -h, --help            도움말 메시지를 출력하고 종료

Target:
  -d DOMAIN, --domain DOMAIN
                        검증, 사용자 열거 및/또는 비밀번호 스프레이를 위한
                        대상 도메인.

Actions:
  --validate            도메인 검증만 실행.

  --enum                사용자 열거 실행.

  --spray               비밀번호 스프레이 실행.

Credentials:
  -u USERNAME, --username USERNAME
                        쉼표로 구분된 사용자명.

  -p PASSWORD, --password PASSWORD
                        쉼표로 구분된 비밀번호.

  -U USERFILE, --userfile USERFILE
                        사용자명 목록이 포함된 파일.

  -P PASSFILE, --passfile PASSFILE
                        비밀번호 목록이 포함된 파일.

  --paired PAIRED       username:password 형식의 자격 증명 목록이 포함된 파일.

Password Spraying Configuration:
  -c COUNT, --count COUNT
                        잠금 계정 타이머를 재설정하기 전에 사용자당 실행할
                        비밀번호 시도 횟수.
                        기본값: 1

  -l LOCKOUT, --lockout LOCKOUT
                        잠금 정책 재설정 시간(분 단위).
                        기본값: 15분

Module Configuration:
  --validate-module VALIDATE_MODULE
                        실행할 검증 모듈을 지정.
                        기본값: getuserrealm

  --enum-module ENUM_MODULE
                        실행할 열거 모듈을 지정.
                        기본값: office

  --spray-module SPRAY_MODULE
                        실행할 비밀번호 스프레이 모듈을 지정.
                        기본값: oauth2

  --adfs-url ADFS_URL   비밀번호 스프레이를 위한 대상 도메인의 ADFS 로그인 페이지
                        AuthURL.

Scan Configuration:
  --sleep [-1, 0-120]   HTTP 요청을 `N`초마다 제한. 값 `-1`을 전달하면
                        무작위화(1초~2분) 가능.
                        기본값: 0

  --jitter [0-100]      지터는 --sleep 기간을 지정된 백분율(0-100)만큼 확장.
                        기본값: 0

  --rate RATE           열거 및 스프레이 중 동시 연결(시도) 수.
                        기본값: 10

  --poolsize POOLSIZE   ThreadPoolExecutor의 최대 크기.
                        기본값: 10000

  --safe SAFE           잠긴 계정이 `N`개 관찰되면 비밀번호 스프레이 실행을 종료.
                        기본값: 10

HTTP Configuration:
  --useragents USERAGENTS
                        무작위화를 위한 사용자 에이전트 목록이 포함된 파일.

  --timeout TIMEOUT     HTTP 요청 시간 초과(초). 기본값: 25

  --proxy PROXY         트래픽을 전달할 HTTP/S 프록시
                        (예: http://127.0.0.1:8080).

  --proxy-url PROXY_URL
                        FireProx API URL.

Output Configuration:
  --output OUTPUT       결과 및 테스트 케이스 파일의 출력 디렉토리.
                        기본값: 현재 디렉토리

Debug:
  -v, --version         도구 버전 출력.

  --debug               디버그 출력 활성화.

모듈

검증

  • getuserrealm (기본값)

열거

  • autologon
  • oauth2 (기본값)
  • office
  • onedrive
  • rst

onedrive 모듈은 대상 사용자가 이전에 OneDrive에 로그인한 적이 있어야 합니다. 유효한 사용자가 아직 OneDrive를 사용하지 않은 경우 해당 계정은 '유효하지 않음'으로 표시됩니다.

스프레이

  • activesync
  • adfs
  • autodiscover
  • autologon
  • oauth2 (기본값)
  • reporting
  • rst

oAuth2 모듈은 페더레이션 스프레이에 사용될 수 있지만, 대상 테넌트에서 비밀번호 동기화가 활성화된 경우에만 작동합니다. 그렇지 않으면 인증이 항상 실패합니다. 기본 메커니즘은 페더레이션이 확인되면 'adfs' 모듈로 기본 설정됩니다.

FireProx 기본 URL

Microsoft는 비밀번호 스프레이를 더 어렵게 만들었으므로 FireProx와 같은 도구를 사용하면 IP 주소 기반 속도 제한을 우회하는 데 도움이 됩니다.

o365spray와 함께 FireProx를 사용하려면 아래 기본 URL 테이블을 기반으로 주어진 o365spray 모듈에 대한 프록시 URL을 생성하세요. 그런 다음 프록시 URL을 --proxy-url로 전달할 수 있습니다.

참고: FireProx URL을 생성하는 데 사용된 기본 URL과 일치하는 올바른 --enum-module 또는 --spray-module 플래그를 사용해야 합니다.

열거

OneDrive URL의 'tenant' 값은 --domain 플래그로 제공된 도메인 이름 값입니다.

스프레이

사용자 에이전트 무작위화

이제 User-Agent 무작위화가 지원되며, --useragents 플래그에 User-Agent 파일을 제공하여 수행할 수 있습니다. o365spray는 resc/user-agents.txt를 통해 4,800개 이상의 에이전트가 포함된 예제 파일을 제공합니다.

예제 데이터 세트의 에이전트는 다음에서 수집되었습니다:

  • https://github.com/sqlmapproject/sqlmap/blob/master/data/txt/user-agents.txt
  • https://www.useragentstring.com/pages/useragentstring.php?name=

Omnispray

o365spray 프레임워크가 새로운 도구인 Omnispray로 포팅되었습니다. 이 도구는 원래의 열거 및 스프레이 프레임워크를 모듈화하여 O365뿐만 아니라 일반적인 대상을 대상으로 할 수 있도록 합니다. Omnispray에는 수정하여 모든 대상에 활용할 수 있는 열거 및 스프레이용 템플릿 모듈이 포함되어 있습니다.

감사의 글

버그

버그/오류가 발견되면 자세한 내용과 함께 이슈를 개설하거나(또는 제안된 수정 사항이 포함된 풀 리퀘스트) 제출해 주세요. 이전 버전 사용에 대한 자세한 내용은 아래 섹션을 참조하세요.

이전 버전 사용

문제가 발생하면 코드 재작성 이전의 버전을 확인해 보세요:

root@kitploit:~
# v1.3.7
git checkout e235abdcebad61dbd2cde80974aca21ddb188704

# v2.0.4
git checkout a585432f269a8f527d61f064822bb08880c887ef
도구 다운로드
모듈기본 URL
autodiscoverhttps://outlook.office365.com/
autologonhttps://autologon.microsoftazuread-sso.com/
oauth2https://login.microsoftonline.com/
officehttps://login.microsoftonline.com/
rsthttps://login.microsoftonline.com/
onedrivehttps://<tenant>-my.sharepoint.com/
모듈기본 URL
activesynchttps://outlook.office365.com/
adfs현재 구현되지 않음
autodiscoverhttps://autodiscover-s.outlook.com/
autologonhttps://autologon.microsoftazuread-sso.com/
oauth2https://login.microsoftonline.com/
reportinghttps://reports.office365.com/
rsthttps://login.microsoftonline.com/
저자도구/연구링크
gremwello365enum: office.com을 통한 인증 없는 사용자 열거o365enum
grimhackeroffice365userenum: ActiveSync 사용자 열거 연구 및 발견office365userenum / 블로그 게시물
RaikiaUhOh365: Autodiscover를 통한 인증 없는 사용자 열거UhOh365
dafthackMSOLSpray: MSOL을 통한 비밀번호 스프레이MSOLSpray
byt3bl33d3rMSOLSpray: Python 재구현Gist
nyxgeekonedrive_user_enum: OneDrive 사용자 열거onedrive_user_enum / 블로그 게시물
Mr-Un1k0d3radfs-spray: ADFS 비밀번호 스프레이adfs-spray
Nestori SyynimaaAADInternals: oAuth2 및 autologon 모듈AADInternals
Daniel Chronlund / xFreed0mInvoke-AzureAdPasswordSprayAttack / ADFSpray: Office 365 보고 API 비밀번호 스프레이Invoke-AzureAdPasswordSprayAttack / ADFSpray
Optiv (여러 저자)Go365: RST 사용자 열거 및 비밀번호 스프레이 모듈Go365
byt3bl33d3rSprayingToolkit: 코드 참조SprayingToolkit
sensepostruler: 코드 참조Ruler