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

疑似恶意多格式文件逆向求助:IDA识别为Windows/MS-DOS程序

恶意多格式文件分析与去毒建议

文件特征与反编译异常分析

这个文件是复合格式文件,同时包含PE64 DLL、DOS64 DLL和原始二进制数据,这种多格式打包方式要么是合法软件的跨兼容壳,要么是恶意软件用来混淆检测的手段——结合你提到的PC疑似被控制的现象,恶意可能性更高。

第一次MS-DOS EXE反编译结果

得到的start函数是典型的16位DOS诱饵代码,仅执行打印字符串(指向DS:0Eh位置的$结尾字符串)和退出操作,返回码为1:

; Segment type: Pure code
seg000 segment byte public 'CODE' use16
assume cs:seg000
assume es:nothing, ss:seg000, ds:nothing, fs:nothing, gs:nothing

; Attributes: noreturn
public start
start proc near
push    cs
pop     ds
assume ds:seg000
mov     dx, 0Eh
mov     ah, 9
int     21h             ; DOS - PRINT STRING
                        ; DS:DX -> string terminated by "$"
mov     ax, 4C01h
int     21h             ; DOS - 2+ - QUIT WITH EXIT CODE (EXIT)
start endp              ; AL = exit code

这段代码没有实际功能,纯粹是用来误导反编译工具,隐藏真实执行逻辑。

第二次MS-DOS EXE反编译异常

出现的以下现象说明文件存在加壳或代码混淆:

  • 生成65k个自动命名的sub_XXXXXXXXX函数:大概率是壳的解码/解密逻辑,而非真实功能代码
  • 存在断裂代码(broken code)、无法解析RVA 0013C678:壳的混淆操作破坏了正常的代码结构,导致反编译工具无法正确识别
  • 导入表中的InternetReadFileAPI:这个函数用于从网络读取数据,恶意软件常用来下载恶意payload、回传敏感数据,结合你观察到的PC被控制现象,高度怀疑它会执行远程控制类操作。

恶意行为判定

综合以上分析,该文件大概率存在恶意行为,核心依据:

  1. 多格式混淆+加壳,符合恶意软件逃避安全检测的典型特征
  2. 包含网络读取API,具备远程获取恶意指令或下载payload的能力
  3. 你已经观察到PC被控制的异常现象,这是恶意行为的直接表现

有害部分移除方案

1. 先完成脱壳操作

复合格式加壳文件需要针对性脱壳:

  • 优先针对PE64 DLL格式分析:用x64dbg动态调试,找到程序真实入口点(OEP)后dump内存,再用ImportREC修复导入表,得到脱壳后的干净文件
  • 通用脱壳尝试:如果是常见壳(如UPX),可以直接用upx -d命令脱壳;复杂壳则需要手动调试定位解密逻辑

2. 定位恶意代码段

用IDA Pro加载脱壳后的PE64 DLL,重点追踪以下内容:

  • 调用InternetReadFile的代码路径,确认它读取的远程URL、后续数据处理逻辑
  • 监控文件操作、注册表修改、进程创建等敏感行为对应的代码段

3. 移除恶意逻辑

  • 如果恶意代码是独立的函数或节段:可以直接删除对应代码,同时修复相关跳转指令和导入表,但操作前务必备份原文件
  • 如果恶意逻辑与合法功能深度耦合:不建议手动修改——这种情况下修改极易导致合法功能失效,甚至残留恶意代码,风险极高

替代方案

如果必须使用该文件的功能,建议在隔离环境中运行:

  • 用VMware、VirtualBox等虚拟机搭建独立环境
  • 用沙箱工具(如Cuckoo Sandbox)实时监控它的网络、文件、注册表操作,避免影响真实PC

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 13:58:02