Coder Social home page Coder Social logo

poastal's Introduction

Poastal - the Email OSINT tool

Poastal

Poastal is an email OSINT tool that provides valuable information on any email address. With Poastal, you can easily input an email address and it will quickly answer several questions, providing you with crucial information.

✨ Features

  • Determine the name of the person who has the email.
  • Check if the email is deliverable or not.
  • Find out if the email is disposable or not.
  • Identify if the email is considered spam.
  • Check if the email is registered on popular platforms such as Facebook, Twitter, Snapchat, Parler, Rumble, MeWe, Imgur, Adobe, Wordpress, and Duolingo.

💻 Usage

Make sure you have the requirements installed.

pip install -r requirements.txt

Navigate to the backend folder and run poastal.py to start the Flask app. This points to port:8080.

python poastal.py

Open index.html in the root directory to use the UI.

Enter an email address and see the results.

Test with [email protected].

There's a new GitHub module.

If you open up github.py you'll see a section that asks you to replace it with your own API key.

📣 Feedback

I hope you find Poastal to be a valuable tool for your OSINT investigations. If you have any feedback or suggestions on how we can improve Poastal, please let me know. I'm always looking for ways to improve this tool to better serve the OSINT community.

poastal's People

Contributors

sector035 avatar

Stargazers

 avatar  avatar CHMOD avatar Tripp avatar VJ avatar Kris avatar Aaron Schaffer avatar Josh Peterson avatar  avatar  avatar  avatar Ankit Modanwal avatar  avatar  avatar  avatar Abhishek Sinha avatar  avatar K89M23 avatar Vijay avatar  avatar Suman Roy avatar Nicholas Souza avatar  avatar Som Nek avatar  avatar  avatar Diogo Peralta Cordeiro avatar  avatar Andrew Dinh avatar Anggi avatar KreyITSEC avatar  avatar  avatar  avatar  avatar  avatar  avatar Mohammad Mansib Newaz avatar Implex avatar Nguyễn Trọng Duy avatar  avatar Alexander Loginov avatar 312701 avatar  avatar Thugger069 avatar Sometimes people call me Milan avatar Todd Carter avatar Zena Creps avatar  avatar  avatar Brooklyn avatar Subxpl0it avatar Robert Paulsen avatar sirhof avatar Justin Goodacre avatar  avatar CatHat avatar  avatar  avatar  avatar  avatar Avishai Carmel avatar Tal Shani avatar  avatar Tomer avatar  avatar  avatar kody avatar  avatar Adam Knott avatar  avatar Norze avatar Erik MacKinnon avatar  avatar Kanjid avatar Nicolas Flandrois avatar  avatar Seemab Yamin avatar  avatar  avatar Pyramidyon avatar  avatar Martin Riedel avatar v1k avatar Tom Saunders avatar dkalvelis avatar Josh avatar Joas A Santos avatar  avatar  avatar Yinying Yao avatar BFGI avatar user12314134 avatar  avatar {{2*2}} avatar  avatar  avatar  avatar  avatar  avatar

Watchers

Marc R. avatar  avatar K89M23 avatar Jake Creps avatar  avatar RRudder avatar  avatar Double avatar  avatar

poastal's Issues

Web access not working

Hi Jake

If I use http://localhost:8080/ then I get:

No email address provided

If I use http://localhost:8080/index.html then I get:

The requested URL was not found on the server

CLI log:

python3 poastal.py
 * Serving Flask app 'poastal' (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: on
 * Running on http://127.0.0.1:8080 (Press CTRL+C to quit)
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: xxx
127.0.0.1 - - [28/Jun/2023 12:10:05] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [28/Jun/2023 12:10:05] "GET /favicon.ico HTTP/1.1" 404 -
127.0.0.1 - - [28/Jun/2023 12:43:55] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [28/Jun/2023 12:44:07] "GET /index.html HTTP/1.1" 404 -
127.0.0.1 - - [28/Jun/2023 12:46:42] "GET / HTTP/1.1" 200 -

Can you assist?

Regards, Robby

Github profile always found

Searching for a completely random email address that doesn't exist always shows a found profile for Github.
Screenshot 2023-05-18 at 13 06 06

Error: Unable to fetch data.

how can i resolve this ? the previous questions is not answered correctly !!!! if someone know the actual issue post the solution .....

Error: Unable to fetch data.

Hello,

I followed the instructions to the letter ;) Below is the console output:

`127.0.0.1 - - [27/Feb/2024 10:03:12] "GET /?email=[email protected] HTTP/1.1" 500 -
Traceback (most recent call last):
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/urllib3/connectionpool.py", line 715, in urlopen
httplib_response = self._make_request(
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/urllib3/connectionpool.py", line 467, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/urllib3/connectionpool.py", line 462, in _make_request
httplib_response = conn.getresponse()
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/http/client.py", line 1377, in getresponse
response.begin()
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/http/client.py", line 320, in begin
version, status, reason = self._read_status()
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/http/client.py", line 289, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/requests/adapters.py", line 486, in send
resp = conn.urlopen(
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/urllib3/connectionpool.py", line 799, in urlopen
retries = retries.increment(
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/urllib3/util/retry.py", line 550, in increment
raise six.reraise(type(error), error, _stacktrace)
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/urllib3/packages/six.py", line 769, in reraise
raise value.with_traceback(tb)
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/urllib3/connectionpool.py", line 715, in urlopen
httplib_response = self._make_request(
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/urllib3/connectionpool.py", line 467, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/urllib3/connectionpool.py", line 462, in _make_request
httplib_response = conn.getresponse()
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/http/client.py", line 1377, in getresponse
response.begin()
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/http/client.py", line 320, in begin
version, status, reason = self._read_status()
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/http/client.py", line 289, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/flask/app.py", line 1488, in call
return self.wsgi_app(environ, start_response)
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/flask/app.py", line 1466, in wsgi_app
response = self.handle_exception(e)
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/flask_cors/extension.py", line 176, in wrapped_function
return cors_after_request(app.make_response(f(*args, **kwargs)))
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/flask/app.py", line 1463, in wsgi_app
response = self.full_dispatch_request()
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/flask/app.py", line 872, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/flask_cors/extension.py", line 176, in wrapped_function
return cors_after_request(app.make_response(f(*args, **kwargs)))
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/flask/app.py", line 870, in full_dispatch_request
rv = self.dispatch_request()
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/flask/app.py", line 855, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
File "/Volumes/WORK/APPS/poastal/backend/poastal.py", line 34, in poastal
rumble_result = rumble_email(email)
File "/Volumes/WORK/APPS/poastal/backend/modules/rumble.py", line 18, in rumble_email
response = requests.post('https://rumble.com/register.php', params=params, headers=headers, data=data)
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/requests/api.py", line 115, in post
return request("post", url, data=data, json=json, **kwargs)
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/requests/api.py", line 59, in request
return session.request(method=method, url=url, **kwargs)
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/requests/sessions.py", line 589, in request
resp = self.send(prep, **send_kwargs)
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/requests/sessions.py", line 703, in send
r = adapter.send(request, **kwargs)
File "/Users/nxfxcom/anaconda3/envs/py3_knime/lib/python3.9/site-packages/requests/adapters.py", line 501, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))`

Thank you

Missing user agent

Thanks for putting this together.

One thing, tho, you might want to add a specific or a random one from a pool of user agent string(s). Not doing so causes every request by your checkers to send python-requests/2.xx.x to the servers you are querying.

While this might work it's poor opsec and will eventually increase the risk of being banned / endpoints being hardened / cool methods being removed as it is pretty noisy.

Of course users can monkey patch this globally by - e.g. inserting something like requests.utils.default_user_agent = lambda: 'Mozilla Firefox....' - but imho the tool should provide proper opsec or clearly state in the README that it broadcast itself as a crawler.

Needs a license.txt file

You do not specify a license for this source code. Just sharing the code doesn’t mean it is ‘open source’.

ModuleNotFoundError: No module named 'twitter'

Hi and thanks for the great work!

I've got an issue with loading the local twitter module from the modules folder:

Traceback (most recent call last):
  File "poastal.py", line 7, in <module>
    from twitter import twitter_email
ModuleNotFoundError: No module named 'twitter'

Workaround for me was to add the modules folder to the import command in the poastal.py

#import modules
from modules.twitter import twitter_email

And now it's working :)

Error Duolingo

Traceback (most recent call last):
File "/data/data/com.termux/files/home/poastal/backend/poastal.py", line 13, in
from duolingo import duolingo_name_check, duolingo_email, duolingo_image
ImportError: cannot import name 'duolingo_image' from 'duolingo' (/data/data/com.termux/files/home/poastal/backend/modules/duolingo.py)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.