pixelbubble / ProtOSINT

ProtOSINT is a Python script that helps you investigate Protonmail accounts and ProtonVPN IP addresses
MIT License
343 stars 62 forks source link

ProtOSINT

ProtOSINT is a Python script that helps you investigate ProtonMail accounts and ProtonVPN IP addresses.

Description

This tool can help you in your OSINT investigation on Proton service (for educational purposes only).
ProtOSINT is separated in 3 sub-modules:

:warning: Important update of the ProtonMail API [2021-11-07] :warning:

Since several days, we observe an update in ProtonMail's API:

Advice for using ProtOSINT nowadays

image

Then, using ProtOSINT, get additional information (the public key attached to the email, the date the PGP key was created and the encryption used).

Prerequisite

Python 3

Usage

python3 protosint.py

Tips for ProtonMail investigation

ProtonMail is case-insensitive

The account name in the ProtonMail is case-insensitive and ProtonMail considers the "." "_" "-" symbols as transparent.
Additionnaly, any words put after a "+" sign are not taken into account.
It means that all of these email adresses below are the same as mikemike@protonmail.com:

Timestamp

ProtOSINT does not always give you the creation time of the ProtonMail account itself. The timestamp returned by ProtonMail API is the time and date when the primary PGP key for the email was created.

Example 1: my target keeps the default settings

In this case, ProtOSINT gives me the real date of creation of the ProtonMail account.

Example 2: my target changes the email encryption keys

In this case, ProtOSINT does not give me the "real" date of creation of the ProtonMail account but the date of creation of the primary PGP key.

Email encryption keys

ProtOSINT allow you to know which encryption key is used for a ProtonMail account:

Custom domain

In the first sub-module of ProtOSINT [1], you can import a custom domain like alias@mycustumdomain.com. In fact, the premium ProtonMail plan allows you to connect your custom domain to ProtonMail. This means that if alias@mycustumdomain.com is "valid", your target uses a premium ProtonMail account.

Contributing

Feel free to clone this project. For major changes, please open an issue first to discuss what you would like to change.

License

MIT