yllhwa / decrypt-mflac-frida

解密 Windows QQ Music mflac 文件
137 stars 36 forks source link

第三方库的版本以及python版本是什么 #8

Open bellongyan opened 1 week ago

bellongyan commented 1 week ago

我用的python 3.9,frida 16.5.1,QQ音乐20.05,但是运行的时候报错:

python.exe .\hook_qq_music.py 
Traceback (most recent call last):
  File "D:\Files\Projects\PycharmProjects\decrypt-mflac-frida\hook_qq_music.py", line 7, in <module>
    session = frida.attach("QQMusic.exe")
  File "D:\Files\Projects\PycharmProjects\decrypt-mflac-frida\venv\lib\site-packages\frida\__init__.py", line 95, in attach
    return get_local_device().attach(target, realm=realm, persist_timeout=persist_timeout)
  File "D:\Files\Projects\PycharmProjects\decrypt-mflac-frida\venv\lib\site-packages\frida\core.py", line 86, in wrapper
    return f(*args, **kwargs)
  File "D:\Files\Projects\PycharmProjects\decrypt-mflac-frida\venv\lib\site-packages\frida\core.py", line 1071, in attach
    return Session(self._impl.attach(self._pid_of(target), **kwargs))  # type: ignore
frida.NotSupportedError: unexpectedly failed with error code: 0x00000057
yanleiberg commented 1 week ago

来自chatgpt:

你遇到的错误 (frida.NotSupportedError: unexpectedly failed with error code: 0x00000057) 可能是由于 Frida 库在尝试附加到 "QQMusic.exe" 进程时出现了兼容性或系统权限的问题。

这里有一些常见的解决方法:

1. 以管理员身份运行

确保你以管理员权限运行脚本。Frida 需要更高的权限来附加到某些进程,如果没有管理员权限,可能会出现类似的错误。

2. 检查进程名称

确认你要附加的进程 QQMusic.exe 确实在运行,并且名称正确。你可以使用任务管理器查看进程的确切名称。有时可执行文件的名称可能有所不同,比如 qqmusic.exe 或其他变体。

3. 检查 Frida 兼容性

Frida 可能不完全支持某些 Windows 应用程序或系统配置。确保你使用的 Frida 版本是兼容的:

4. 驱动程序问题

错误码 0x00000057 可能表示内核模式驱动程序或 Frida 依赖的库出现问题。你可以尝试重新安装 Frida,并检查是否所有的依赖项都已正确安装。

5. 杀毒软件干扰

某些杀毒软件或安全软件可能会阻止 Frida 注入到进程中。尝试暂时禁用杀毒软件,看看问题是否解决。

6. 使用进程ID附加

除了通过进程名称 ("QQMusic.exe") 来附加,你还可以通过进程 ID 附加。你可以从任务管理器获取 QQMusic.exe 的进程 ID,并将它传递给 frida.attach() 函数,例如:

   import frida
   import psutil

   # 手动获取进程ID
   pid = 12345  # 替换成实际的 QQMusic.exe 的进程 ID
   session = frida.attach(pid)

通过尝试这些步骤,你应该能找到问题的原因并解决错误。