You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Pymem注入Spawn的子进程报错TypeError,求解决办法

问题:Pymem注入subprocess启动的svchost.exe子进程失败

我尝试使用Pymem对通过subprocess启动的svchost.exe子进程进行进程注入,代码如下:

from pymem import Pymem
import os
import subprocess

svc = subprocess.Popen(['svchost.exe'])
pid = svc.pid
print("process id is: ", pid)

pm = Pymem(pid)
pm.inject_python_interpreter()
shellcode = """
import tkinter as tk
mn = tk.Tk()
mn.mainloop()
"""
pm.inject_python_shellcode(shellcode)

运行上述代码后出现错误,报错信息如下:

process id is:  7300
Traceback (most recent call last):
  File "C:\Users\yallah\Documents\shel.py", line 28, in <module>
    pm.inject_python_interpreter()
  File "C:\Users\yallah\AppData\Local\Programs\Python\Python311\Lib\site-packages\pymem\__init__.py", line 124, in inject_python_interpreter
    self.start_thread(py_initialize_ex, param_addr)
  File "C:\Users\yallah\AppData\Local\Programs\Python\Python311\Lib\site-packages\pymem\__init__.py", line 191, in start_thread
    pymem.logger.debug('New thread_id: 0x%08x' % thread_h)
                       ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
TypeError: %x format: an integer is required, not NoneType

不指定PID时代码可正常运行,但我需要引用Spawn进程的PID,请问有什么解决建议?


解决建议
  • 等待进程完全初始化:subprocess启动svchost.exe后,进程可能还未完成初始化就被注入,导致Pymem无法正常创建线程。可在获取PID后添加短暂延迟:

    import time
    svc = subprocess.Popen(['svchost.exe'])
    pid = svc.pid
    time.sleep(1)  # 等待进程完成初始化
    pm = Pymem(pid)
    # 后续注入操作
    
  • 以管理员权限运行脚本:svchost.exe是系统核心进程,注入操作需要足够权限。右键点击Python脚本,选择「以管理员身份运行」,确保拥有进程注入的权限。

  • 给svchost指定服务参数:单独启动svchost.exe会因缺少服务配置快速退出,导致PID失效。可指定具体服务组参数,保证进程稳定运行:

    svc = subprocess.Popen(['svchost.exe', '-k', 'netsvcs'])
    
  • 注入前验证进程存活状态:在初始化Pymem前检查进程是否仍在运行,避免注入已退出的无效进程:

    import psutil
    svc = subprocess.Popen(['svchost.exe', '-k', 'netsvcs'])
    pid = svc.pid
    time.sleep(1)
    if psutil.pid_exists(pid):
        pm = Pymem(pid)
        pm.inject_python_interpreter()
        # 后续shellcode注入操作
    else:
        print("目标进程已退出,无法执行注入")
    

内容的提问来源于stack exchange,提问作者ysfsun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 23:24:56