• Stars
    star
    459
  • Rank 95,377 (Top 2 %)
  • Language
    Python
  • Created almost 3 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Python3 o365 User Enumeration Tool

Oh365 User Finder v1.1.0

ko-fi

Oh365UserFinder is used for identifying valid o365 accounts and domains without the risk of account lockouts. The tool parses responses to identify the "IfExistsResult" flag is null or not, and responds appropriately if the user is valid. The tool will attempt to identify false positives based on response, and either automatically create a waiting period to allow the throttling value to reset, or warn the user to increase timeouts between attempts.

Oh365UserFinder can also easily identify if a domain exists in o365 using the -d or --domain flag. This saves the trouble of copying the url from notes and entering it into the URL bar with the target domain.

With version 1.1.0, password spraying is now possible. If MFA is enabled, the tool SHOULD identify it when reporting a valid account. Keep in mind that account lockouts are possible if too many incorrect attempts are made. Make sure to consult with your client to determine the lockout policy if you have any concerns.

Usage

Installing Oh365UserFinder

git clone https://github.com/dievus/Oh365UserFinder.git

Change directories to Oh365UserFinder and run:

pip3 install -r requirements.txt

This will run the install script to add necessary dependencies to your system.

python3 oh365UserFinder.py -h

This will output the help menu, which contains the following flags:
-e, --email - Required for running Oh365UserFinder against a single email account\n
-r, --read - Reads from a text file containing emails (ex. -r emails.txt)\n
-t, --timeout - Sets a pause between attempts in seconds (ex. -t 60)\n
-w, --write - Writes valid emails to a text document (ex. -w validemails.txt)\n
-c, --csv - Writes valid emails to a CSV file (ex. -c validemails.csv)\n
-d, --domain - Checks if the listed domain is valid or not (ex. -d mayorsec.com)\n
--verbose - Outputs test verbosely\n
-ps, --pwspray - Password sprays a list of accounts\n
-p, --password - Password to be tested\n
-el, --elist - Emails to be tested

Examples Commands

Validate a Domain Name in O365

python3 oh365Finder.py -d mayorsec.com

Validate a single email

python3 oh365UserFinder.py -e [email protected]

Validate a list of emails and write to file

python3 oh365UserFinder.py -r testemails.txt -w valid.txt

Validate a list of emails, write to file and timeout between requests

python3 oh365UserFinder.py -r emails.txt -w validemails.txt -t 30

Validate a list of emails and write to CSV

python3 oh365UserFinder.py -r emails.txt -c validemails.csv -t 30

Password Spray a list of emails

python3 oh365UserFinder.py -p <password> --pwspray --elist <listname>

Notes

Make note that Microsoft does have some defense in place that can, from time to time, provide false positives in feedback. If you suspect that this is occurring take a pause in testing, and return and increase the duration between attempts using the -t flag.

Acknowledgements

This started as a port over from Python2 to Python3 of a tool named o365Creeper developed by Korey Mckinley, and it quickly spiraled into what it is now.

More Repositories

1

PowerShellForPentesters

Course repository for PowerShell for Pentesters Course
PowerShell
400
star
2

threader3000

Multi-threaded Python Port Scanner with Nmap Integration
Python
281
star
3

lnkbomb

Malicious shortcut generator for collecting NTLM hashes from insecure file shares.
Python
248
star
4

msLDAPDump

LDAP enumeration tool implemented in Python3
Python
174
star
5

ADGenerator

Active Directory Generator files for Movement, Pivoting, and Persistence for Pentesters and Ethical Hackers.
PowerShell
172
star
6

msdorkdump

Google Dork File Finder
Python
162
star
7

printspoofer

155
star
8

msImpersonate

msImpersonate - User account impersonation written in pure Python3
Python
105
star
9

geeMailUserFinder

Python Gmail User Enumeration Tool
Python
96
star
10

msdnsscan

MayorSec DNS Enumeration Tool
Python
70
star
11

GatekeeperLite

Lite version of my Gatekeeper backdoor for public use.
Python
55
star
12

Python3-C2-Course-Code-Modules

Modules for my C2 course students to use for their own projects.
Python
54
star
13

PowerShellRunner

PowerShell runner for executing malicious payloads in order to bypass Windows Defender.
PowerShell
34
star
14

Firefox-Dumper

Tool to transfer credential files from Firefox to your local machine to decrypt offline.
Python
23
star
15

PythonCreateYourOwnSeries

Files for my Python3 Create Your Own Tool Series
Python
22
star
16

MayorbotC2

My attempt at weaponizing Discord.
Python
19
star
17

BlackLister

Blacklist generator for password filters
Python
10
star
18

msToolSet-Docker

Dockerized version of my most used tools.
Python
10
star
19

helper

PowerShell
10
star
20

bufferoverflow

Repository of Ruby related buffer overflow boilerplates
Python
9
star
21

MayorSecPasswordGenerator

Simple Python tool that generates a pseudo-random password with numbers, letters, and special characters in accordance with password policy best practices.
Python
7
star
22

toolsdirectory

PowerShell
7
star
23

CVE-2021-37832

CVE-2021-37832 - Hotel Druid 3.0.2 SQL Injection Vulnerability - 9.8 CVSS 3.1
6
star
24

CVE-2020-28351

CVE-2020-28351 - Reflected Cross-Site Scripting attack in ShoreTel version 19.46.1802.0.
5
star
25

CVE-2021-37833

CVE 2021-37833 Hotel Druid 3.0.2 Reflected Cross Site Scripting
4
star
26

reverse-shells

3
star
27

Wordlists

3
star
28

mayorscan

Mayor's Toolkit
Shell
3
star
29

MayorSecWorkoutTracker

MayorSec Workout Tracker
Python
3
star
30

Project_Plus

HTML
2
star
31

PythonBOF

Python
2
star
32

msesxicontroller

Python ESXi CLI Controller
Python
2
star
33

pingsweep

The first tool I wrote when I started Pentesting.
Shell
2
star
34

MayorSec-SecuroText3000

SecuroText3000 will take unencrypted text files and encrypt the content utilizing a highly modified Vigenere cipher key. The increased key deviates from the typical alphabetical system, which increases the difficulty in cracking when the full key is not known.
Python
2
star
35

dievus

Config files for my GitHub profile.
1
star
36

skidnomore3000

Shell
1
star