#!/usr/bin/python
#http://blog.infosecsee.com
#Email_Sender_GUI.py
import wx
import smtplib
class EmailSender(wx.Frame):
def __init__(self, *args, **kw):
super(EmailSender, self).__init__(*args, **kw)
self.InitUI()
def InitUI(self):
pnl = wx.Panel(self)
wx.StaticBox(pnl, label=\'Simple Email Sender\', pos=(5, 5), size=(275, 500))
wx.StaticText(pnl, label=\'Server: \', pos=(15, 50))
self.Server = wx.TextCtrl(pnl, name=u\'text1\',pos=wx.Point(65, 50), size=wx.Size(150, 25),style=0, value=u\'IP\')
self.Port = wx.TextCtrl(pnl, name=u\'text1\',pos=wx.Point(220, 50), size=wx.Size(50, 25),style=0, value=u\'25\')
wx.StaticText(pnl, label=\'Sender: \', pos=(15, 100))
self.Sender = wx.TextCtrl(pnl, name=u\'text1\',pos=wx.Point(65, 100), size=wx.Size(150, 25),style=0, value=u\'Sender Email\')
wx.StaticText(pnl, label=\'From: \', pos=(15, 140))
self.From = wx.TextCtrl(pnl, name=u\'text1\',pos=wx.Point(65, 140), size=wx.Size(150, 25),style=0, value=u\'Spoof From\')
wx.StaticText(pnl, label=\'To: \', pos=(15, 180))
self.Victim = wx.TextCtrl(pnl, name=u\'text1\',pos=wx.Point(65, 180), size=wx.Size(150, 25),style=0, value=u\'To\')
wx.StaticText(pnl, label=\'Subject: \', pos=(15, 230))
self.Subject = wx.TextCtrl(pnl, name=u\'text1\',pos=wx.Point(65, 230), size=wx.Size(150, 25),style=0, value=u\'Subject\')
wx.StaticText(pnl, label=\'Body: \', pos=(15, 280))
self.Body = wx.TextCtrl(pnl, name=u\'text1\',pos=wx.Point(65, 280), size=wx.Size(150, 150),style=0, value=u\'Body\')
btn = wx.Button(pnl, label=\'Ok\', pos=(15, 450), size=(60, -1))
btn.Bind(wx.EVT_BUTTON, self.OnButton1Button)
btn2 = wx.Button(pnl, label=\'Quit\', pos=(200, 450), size=(60, -1))
btn2.Bind(wx.EVT_BUTTON, self.OnClose)
self.SetSize((300, 550))
self.SetTitle(\'Email Sender\')
self.Centre()
self.Show(True)
def AllDone(self):
wx.MessageBox("Email Sent", \'Success\', wx.OK | wx.ICON_INFORMATION)
def Fubar(self, e):
wx.MessageBox("Check your input\\n"+e, \'Error\', wx.OK | wx.ICON_INFORMATION)
def OnButton1Button(self, event):
Server = self.Server.GetValue()
Port = self.Port.GetValue()
Sender = self.Sender.GetValue()
Victim = self.Victim.GetValue()
From = self.From.GetValue()
Subject = self.Subject.GetValue()
Body = self.Body.GetValue()
Message = \'To: %s\\nFrom: %s\\nMIME-Version:1.0\\nContent-type: text/html\\nSubject: %s\\n\\n%s\' % (Victim, From, Subject, Body)
try:
smtpObj = smtplib.SMTP(Server, int(Port))
smtpObj.sendmail(Sender, Victim, Message)
self.AllDone()
except Exception, e:
self.Fubar(str(e))
def OnClose(self, e):
self.Close(True)
def main():
ex = wx.App()
EmailSender(None)
ex.MainLoop()
if __name__ == \'__main__\':
main()