python编写安全工具_Python3学习系列(四):编写属于自己的邮件伪造工具
timg.jpg (158.2 KB, 下載次數: 92)
2017-10-21 13:33 上傳
前言:
相信有些人也看過一些滲透,郵件偽造然后釣魚這個在滲透中也是經典技巧了,那么郵件偽造又是如何運作的呢?下面的文章將會為你揭示郵件偽造,看完這篇文章,你會發現,原來就是這樣。
目錄:0x01:郵件偽造原理
0x02:處理流程
0x03:代碼實現
0x04:逐行解析
0x01 郵件偽造原理
利用的是SMTP協議,因為在SMTP協議里面,是不需要身份認證的,也就是郵件發送者和郵件顯示的發送人不一定要一致,那為什么我們平時發送的郵件的郵件發送人和顯示的發送人都是一致的呢?這是郵件服務商人為要求的,163,qq郵箱都是如此
0x02 處理流程注冊個郵箱,這里用網易163
FS261Q0_0M$K$FZLC~QQQV6.png (34.77 KB, 下載次數: 69)
2017-10-21 13:34 上傳
登陸郵箱
進入設置
M]~}M{_2ECOAN7%HS.png (58.73 KB, 下載次數: 77)
2017-10-21 13:35 上傳
打開SMTP服務
ZJVX3G2J@ZPEZU~%`Y{NZ41.png (73.01 KB, 下載次數: 97)
2017-10-21 13:36 上傳
設置授權碼
這些只是代碼之前的前奏,下面開始我們的工具編寫
0x03代碼編寫
[Python] 純文本查看 復制代碼# -*- coding: utf-8 -*-
'''
Program:郵件偽造
Function:偽造郵件發送工具
Version:Python3.6
Time:2017/10/13
Author:Walks
個人博客:http://www.bywalks.com
'''
import smtplib
import email.mime.multipart
import email.mime.text
#建立郵件對象
msg = email.mime.multipart.MIMEMultipart()
#添加數據,來自哪,去哪
msg['Subject'] = u'發送asd郵件時設置的標題asd'
msg['From'] = '123asds@163.com'
msg['To'] = 'xxx@qq.com'
content = "你好啊今asdasda好日子,所以西鄉說些阿薩德asdasd事情阿斯達所阿斯達所大所大大所大庫拉索多拉還是打款哈手機打開哈金士頓哈見到過巴克斯降本增效變成你們準備下次找你沒錯吧紅燒冬瓜 。"
txt = email.mime.text.MIMEText(content,'text','utf-8')
msg.attach(txt) # 將多個子部分進行組合
#防出錯
try:
smtp = smtplib.SMTP()
# 連接到服務器
smtp.connect('smtp.163.com', '25')
# 用戶名密碼登錄,密碼為163郵箱的授權碼
smtp.login('bywalkss@163.com', 'XXX')
# 發送郵件
smtp.sendmail('bywalkss@163.com', ['739327037@qq.com'], msg.as_string())
smtp.quit()
print('郵件發送成功email has send out !')
except Exception as e:
print(e)
0x04逐行解析
[Python] 純文本查看 復制代碼# -*- coding: utf-8 -*-
'''
Program:郵件偽造
Function:偽造郵件發送工具
Version:Python3.6
Time:2017/10/13
Author:Walks
個人博客:http://www.bywalks.com
'''
#導入兩個庫,用來發送郵件,multipart用來構造郵件,帶附件的
import smtplib
import email.mime.multipart
import email.mime.text
#建立郵件對象
msg = email.mime.multipart.MIMEMultipart()
#添加數據,來自哪,去哪
msg['Subject'] = u'發送asd郵件時設置的標題asd'
#郵件顯示的發送人
msg['From'] = '123asds@163.com'
#接受地
msg['To'] = 'XXX@qq.com'
#發送的內容
content = "你好啊今asdasda好日子,所以西鄉說些阿薩德asdasd事情阿斯達所阿斯達所大所大大所大庫拉索多拉還是打款哈手機打開哈金士頓哈見到過巴克斯降本增效變成你們準備下次找你沒錯吧紅燒冬瓜 。"
txt = email.mime.text.MIMEText(content,'text','utf-8')
# 將多個子部分進行組合
msg.attach(txt)
#防出錯
try:
smtp = smtplib.SMTP()
# 連接到服務器
smtp.connect('smtp.163.com', '25')
# 用戶名密碼登錄,密碼為163郵箱的授權碼,自己設置的
smtp.login('bywalkss@163.com', 'XXX')
# 發送郵件(發送地,接受地,內容) 第二個參數必須為列表
smtp.sendmail('bywalkss@163.com', ['XXX@qq.com'], msg.as_string())
#退出
smtp.quit()
print('郵件發送成功email has send out !')
except Exception as e:
#打印出錯原因,可以查看出錯代碼
print(e)
下面附兩張成功圖。這里為什么會顯示代發,上面也說過了,郵件服務商要求,那么我們找一個小服務商是不是就行了?
]{}(H0D{OS4GT05JS6]((M6.png (43.21 KB, 下載次數: 79)
2017-10-21 13:40 上傳
SV0DCYY05X1DY(D%8_@VNUN.png (98.96 KB, 下載次數: 75)
2017-10-21 13:40 上傳
個人博客:www.bywalks.com
總結
以上是生活随笔為你收集整理的python编写安全工具_Python3学习系列(四):编写属于自己的邮件伪造工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 亲身体验信仰之跃,消息称育碧将在 9 月
- 下一篇: 手机端适应_手机网站开发制作和电脑pc端