PE下面无法删除的空文件夹,该如何删掉?

iamgodgh2 2024-01-18 09:14:42

有个叫永中的软件(路径在program files下),在PE下删除,里面有一个空文件夹删不掉(点删除没反应、没提示)。

以为是因为坏道导致,但PE下用工具扫描磁盘,无异常区块。

 

请教一下大师们,删不掉的原因是什么,如何实现删除?

...全文
95 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
iamgodgh2 01-19
  • 打赏
  • 举报
回复

感谢指点,最终是靠着chkdsk修复后解决了

  • 打赏
  • 举报
回复

在PE系统下删除文件夹时遇到无法删除且没有提示的情况,可以尝试以下几种方法来解决:

  1. 使用资源管理器或文件浏览器的强制删除功能:在PE系统下,打开资源管理器或文件浏览器,找到要删除的文件夹,右键点击该文件夹,选择“强制删除”或“删除”选项,然后确认删除即可。
  2. 使用命令行删除:在PE系统下打开命令提示符或PowerShell窗口,使用命令行来删除文件夹。例如,要删除名为“永中软件”的文件夹,可以输入以下命令:
rmdir /s /q "永中软件"

该命令会强制删除指定文件夹及其所有内容,不会出现任何提示。请注意,使用此命令时要小心,以免误删重要文件。
3. 检查文件夹权限:有时候文件夹无法删除可能是因为权限问题。在PE系统下,右键点击要删除的文件夹,选择“属性”,然后在“安全”选项卡中检查文件夹的权限设置。如果需要,可以修改文件夹的权限,以便能够删除该文件夹。
4. 检查文件夹是否被占用:如果文件夹正在被某些进程占用,可能会导致无法删除。在PE系统下,可以打开任务管理器或资源监视器来检查是否有进程正在访问该文件夹。如果有,结束相关进程后再次尝试删除该文件夹。
5. 使用第三方工具:如果以上方法都无法删除文件夹,可以尝试使用一些第三方的文件管理工具,如Unlocker、KillBox等,这些工具具有强制删除和解锁文件的功能,可能会帮助你解决删除问题。

请注意,在尝试删除文件夹之前,最好备份重要数据以防万一。另外,如果以上方法都无法解决问题,建议联系专业的数据恢复专家进行进一步处理。

亲测可用。不过在最后一步中上传系统到最后上传注册表时会出现错误。不用理会。稍后用PE启动,将原系统中的注册表文件夹“config” 替换掉加载IMG文件后产生的盘中的C:\WINDOWS\system32\config (“config ”文件夹即注册表文件夹。) 注:最好能用带虚拟光驱的PE,因为大多外置虚拟光驱不能在PE下运行或会出错。(深度完美那张光盘中带虚拟光驱工具) 另外,至于精简系统,1.用xp减肥茶,xp减肥大师,精简 2.删除垃圾文件 3. 卸载程序 4.删除C:\Drivers文件夹。5.在我的电脑中,在C盘图标上右键—》属性—》磁盘清理。—》勾选“压缩驱动器以节约磁盘间” —》应用---》确定。此法可减少200-300M间。6.在上传系统项格式化IMG镜像时亦可勾选压缩 7.打开 C:\Windows\Resources\Themes 目录,这个目录就是XP中存放桌面主题的目录,将除正在用的主题外的主题全删掉。8.去掉所有盘的页面文件,即虚拟内存。 另附需修改的几个地方:1.视频文件关联 2.桌面快捷方式(也可转移桌面文件夹至其它盘也可用镜像加载工具)3.指针速度调整以让感觉上更快4.隐藏需隐藏的文件夹。5.图片打开方式6.用优化大师设置启动哪个系统。即让内存盘启动。设置启动秒数。 另外需提醒的是:要安装或修改的东西最好在制作系统时弄好,不然上传以后不好改。
特别说明: 本软件谢绝任何支持或使用3721(及及该公司其他产品如雅虎助手等)的人士使用。 multiCCL      by niu-cow in NE365 开发调试环境及工具 : win2k+sp4 dev-cpp 4.992 Lcc_win32 MASM32 v9.0 Radasm ollydbg 1.10 winHex 12.5 包含文档: 1. multiCCL_f.exe 文件特征码专用版 2. multiCCL_m.exe 内存特征码专用版 3. multiCCL_inj.exe 注入代码块内存定位专用版 4. memtest.exe  用作内存定位时加载dll或运行exe或向目标进程注入的辅助程序          (为了防止主程序被杀毒软件Kill,用了远程线程注入) 5. multiCCL_readme.txt 本说明文档 6. multiCCL原理图示.htm 基本原理图示 功能: 原来已有的 文件特征码定位功能 (对 PE文件 和 非PE文件)--此功能已较稳定 本版新增功能:内存特征码定位(对PE文件)---------此功能测试中 因为现在杀毒软件针对特征码定位器设置了某些干扰,最终决定把文件定位和   内存定位做成两个独立的部分。 其实代码基本一样的,只为方便日后的维护和升级。 ----------------------------------- ......内存定位.重要提示....... 1.定位期间不要浏览任何放有病毒样本的文件夹 以免被杀毒软件的实时监控删掉 2. 现在打开杀毒软件的实时检测(保护级别在自定义中设置得严格些) 实时检测的执行动作可设置为: a. 提示用户操作 b. 禁止访问并删除 推荐选 a ,千万不要选“仅禁止访问”,“隔离”也不要选 3. 当然也可以按提示手动扫描内存 执行动作设为“仅报告”或“提示用户操作” 只要杀毒软件报告检测结果就行了,不需要它删除或禁用什么 4. 防火墙不要监视远程线程 因为multiCCL为了避免主程序被杀毒软件kill,用远程线程加载样本   (另外,正在找有关驱动方面的资料) ------------------------------------ ------------------------------------ 现在重点测试内存特征码的定位功能。 通过后再添加。现在的界面也还有点马虎,用cmd界面也是为测试 方便,因为随时都可输出中间信息。 ((听 tankaiha 一说还真不想写GUI界面了)) 需要说明的问题是:     1. 开始定位一个样本时,如果发现样本目录中存在旧的记录文件,           程序会读取并认可 旧记录中的特征码。 如果想完全重新开始定位,应该先把旧的记录文件删除或改名, 之后再打开multiCCL 。 2. 输出目录里不要放置任何您想保留的文件,以免给您带来损失。 定位过程中将删除里面的一些文件。 另一个简单的做法是:先手动在样本所在目录下建一个名为              output 的子目录,然后在选择目录的对话框点 “取消”,这样输出文件就都放到这个output 目录下了。 3. 设置保护片段时,如果所保护的片段本身是独立的特征码,就会        导致定位失败,因为所生成的文件会全部被杀,而且一直如此。         所以在设置前,          先要确认所保护的片段不是独立的特征码。 v 0.100 beta 之后的版本用的是等分法,限制区域的优化效果, 对于文件特征码来说是很不明显的, 而对于内存特征码的定位还是比较明显的。 ;  要注意的是,文件定位每次提醒杀毒时,一定要把识别出的文件全部删除, 否则程序会判断错误的。(内存定位就没关系了) 记录文件格式: 只要注意以下几个字段和键值就可以了: [CharactorCodz] ;特征码总数 CharactorTotal= ;特征码的记录格式是 H_起始偏移_结束偏移_长度_…… ;一般只要注意 起始偏移 结束偏移 就够了。记录的是文件偏移, ; 用十六进制表示 ;特征码1 Codz1= ;特征码2 Codz2= ;…… ;当OK=1时表示定位成功完成,ok=0表示定位没有完成 ok= ----------- ;文件定位的记录文件是 multiCCL_f_Log.txt ;内存定位的记录文件是 multiCCL_m_Log.txt ;都放在样本文件所在的目录下。 ----------- ;看内存定位结果时,还有一个字段需要注意的: [antiLocateCodz] newCodz=1 OK=1 CharactorTotal= Codz1= Codz2= …… ;这是杀毒软件针对内存定位干扰码,( antiLocateCodz ) ;定位不出内存特征码或修改内存特征码无效时, ;可以考虑修改入口点(修改代码或转移入口点), ;若以上修改还是无效,则试试修改干扰码。 ;---------------------------- ;另外也请看看更新记录,里面也有部分说明 ; ; 同时也请帮助统计定位一个样本特征码所需的时间,大致记录下就行 ; 结果请反馈到: http://vxer.cn/bbs/read.php?fid=9&tid=112&page=1 ;----------------------------------------------- ;统计内容包括: ;-------- ;基本信息: 哪种杀毒软件的XXX文件定位(病毒库版本XXXX) ;1 样本文件大小: ;2 总共定位出特征码片段的数量: ;3 总共需要杀毒软件扫描几次: ;4 定位总用时: ;5 定位结果评价: 基本可用/有较大偏差/很不可靠 ;---------------------------------------------- ;BTW: 本程序针对的目标是杀毒软件的复合特征码的定位,    当然也包括单一特征码了。 ;免责声明:本程序只供学习,不得用于商业。本程序可能存在某些缺陷,       及其他可能隐含的问题,      使用中可能造成的一切后果,均由使用者自行负责。 如果您对此很在意则请勿使用。 ;感谢您的测试,使用中请保留软件文档的完整,发现任何问题请到NE365的BBS上反馈。 ;(借用一下NE365的间 http://vxer.cn/bbs ,一并致谢NE365 ;及各位网友的帮助和测试 ,大家多多支持NE365吧) ; ;特别说明:本软件谢绝任何支持或使用 3721 的人士使用。             niu-cow 2006-05-22 --------------------------------------------- 大致上找到了特征码没完没了的原因了   很可能是因为保护区域设置得过大,其中含有相当数量的隐含病毒特征, 导致启发式扫描的极高的实现机率。 实际测试中也发现当没有设置保护区域时, 定位出的特征码就很有限。   看来,设置合理的保护区域,对于定位是非常重要的, 尤其是针对“启发式扫描”(NOD32称之为“高级智能侦测模式”)的定位。   尽管以上只是猜测,不过本人认为这下被猜中了。 niu-cow 2006-05-31 20:08 ----------------   在tanknight(myCCL的作者)的BLOG上看到NOD32定位的有关讨论,据说定位 精度太高时,对NOD32的定位往往失败。一般控制在8--16字节为宜。   依照这个原理增加了个控制定位精度的模块,重复的现象有所减少,但 问题好象还没有解决。 niu-cow 2006-06-10 17:04 ------------------------------------------------------------------ ------------------------------------------------------------------ 更新历史: v 1.150 (当前版本) 1.解决了memtest.exe被杀时,主程序的SendMessage无法返回的问题 2.为注入型的提升权限(只有当拥有Administrators以上权限时才起 作用) 这样就可以注入某些系统进程。 注:本版的memtest.exe、memtiCCL_m.exe、multiCCL_inj.exe 和之前的版本均无法兼容,不要混用。 2006-11-29 v 1.140 1.修正了第一次生成Except.txt(用于设置保护区域定位精度等)时, 未能生成完整的模板,导致很多使用者第一次使用时无所适从, 2.将内存定位的一个容易引起误解的“判断……”改为“将判断……” (以上两处BUG感谢网友woaicomputer等的反馈) 3.增加了定位注入数据块的特征码的功能(主要用于对付flux等) 方法是:a 想办法从内存中抓取注入的数据块 (这个要自己想办法) b 用multiCCL_inj.exe处理数据块并注入了目标进程, 结合杀毒软件扫描内存,进行判断定位 注:memtest.exe 再次升级,以适用于multiCCL_inj.exe 2006-11-15 v 1.130 (仅针对内存定位模块) 1.改变EXE的加载方式为创建进程(原来用LoadLibrary) 2.增加对保护区域设置的检测,这样加载失败的机率更少      (本版的 multiccl_m.exe 和 memtest.exe 与过去的版本不兼容) 2006-11-5 v 1.120 (仅针对内存定位模块) 因为有的杀毒软件监视远程线程,用注入法要先关闭这个监视 感觉这样有些麻烦,改用发消息让宿主程序主动加载 ( 此版的 multiccl_m.exe 和 memtest.exe 得配合使用了) 2006-10-23 v 1.110 (仅针对内存定位模块) 有网友(无涯)反馈说内存定位时有问题 发现问题的系统是WIN2003 本人在WIN2K+SP4下测试未发现问题 从出错截图看,问题很可能在杀进程的函数 检查源代码,只发现一个进程句柄没有及时关闭,修正了这个函数, 作为试探性修改,看看问题是否解决。 2006-07-14 v 1.100 : 1- 修正了处理干扰码的方式,并在记录中用~~作标记,或许有点用。 (注:干扰码也可能是特征码的一部分) 2- 修正了定位头端时的还原方式。 3- 生成文件时增加一秒停顿。 这个版本的两处修正都只是试探性的修改。 2006-07-04 v 1.010 : 仅修正了内存定位的模块,使其生成的文件数更少(定头端时) 这样每轮加载次数最多35次,绝大多数时候是28次 (尾端20次,头端8次) 文件定位仍用v 1.000版 2006-06-20 v 1.000 : 从本版本开始,已经是正式版了~~~~ 1- 记录文件文件名中 包含了样本文件名,以有所区别, 感谢pipapi的建议。 2- 增加了一个控制定位精度的功能。 具体是在Except.txt文件中改变dwX的值 当dwX=1 时精度为一字节(最高),如果存在旧的Except.txt 则请自行增加这个字段,如下(前后都不要有格): [dwX] dwX=1 降低精度的目的是减少一些干扰(如NOD32的启发式扫描), 经实际测试发现仍然无法完全避免。 (一般降为 12-16 字节左右为宜,dwX的值用十进制) 保护区域设置的合适一些,不要太大才是最重要的。                  2006-06-09 v 0.120 beta: 1- 实际使用中发现,杀毒软件的“启发式扫描” (NOD32的称“高级智能侦测模式”的扫描速度实在慢, 为提高效率,减少每次生成文件的数量, 当然多扫一遍了(以 1 MB 计算)。 这样一来,对磁盘间的需求也减少了一半。不过现在 的硬盘都很大,不会在乎这点的。 此修正针对文件定位(也包括内存定位前的干扰码定位) 2- 提示音作了细小的调整。 2006-05-31 v 0.110 beta: 1- 增加了内存定位功能(二分法),这样每定位一处特征码 最多只需加载64次(其中定尾端20次,头端32次) 2- 修正了卸载方式。 3- 彻底屏蔽限制点区能。 4- 文件定位仍使用 v 0.100 beta 版 2006-05-25 v 0.100 beta: 1- 修正了winXP下当软件路径带格时出错的问题, 感谢 最近的星球 的测试和反馈 2- 改用了等分法(原来用二分法),效率提高明显。           测试过程中发现的一个偶然的错误却解决了算法中的一个  细节问题,进一步提高了效率(与理论效率相比) 激动ing ,每次最多可能生成64个文件 使用新版本时,把旧版本的记录文件重命名或删除吧, 以免造成潜在的冲突。 3- 增加了定位限制点的功能,就是说只定位限制点之前的部分 且直接从此点开始,   限制点之后的所有数据都将被随机数据串填充。               若需要保护某区数据,请与保护区域配合使用。 限制点的格式为 8 位的十六进制值,以表示文件偏移。 且只当标志设为1时起作用,限制标志为0时不起作用。 特别说明: 这个功能只是预留,目前测试表明没什么用处。   目前的版本只有文件定位功能,就不要使用限制点了。 4- 使用新算法的multiCCL版本号从 v 0.100 beta 开始。 目前只有文件定位功能。先测试BUG。 2006-05-22 v 0.017 beta-p: 再次作一小的修正,因为发现和卡巴对0.012版类似干扰, 这次是别的杀毒软件了,也不清楚原理是什么,干脆连 同干扰码一起定位了,这样还省心些。 (以后前面冒出的干扰码就不怕了, 今后的升级只要应付覆盖区冒出的干扰码就行了) 本BUG系astronomer反馈,致谢 2006-05-18 v 0.017 beta : 再次修正随机数据的生成方式,修正的效果有待测试 因为定位NOD32对彩虹桥英文1.02版的文件特征码时 发现有干扰。(感谢yxrx的测试)                 2006-05-18 v 0.016 beta-p: 1-修正一个针对已找出的特征码的覆盖方式, 因为针对ewido定位时,发现特征码不断地“往前长”, 看看更改后能否通过。 (只为只是小的修正,界面上仍标识为 v 0.016 ) 感谢 honhon 的测试和反馈。 2-用LCC_win32+RadAsm重写宿主程序(内存定位用),体积 更小了。                2006-05-16 v 0.016 beta : 1-修正了随机数据串的生成方式 (感谢abc27的针对NOD32的测试) 2=修正了其他已发现的次要的BUG。 2006-05-13 v 0.015 beta : 1-增加了内存定位的功能,为防止加载样本时被杀毒软件关 闭,启动了一个靶程序,用远程线程注入到宿主进程 2-当样本文件所在目录存在旧的记录文件时,程序将读取旧 记录文件中所记录的已定位出的特征码,并认可这些特 征码。 新增这个功能主要是考虑到有些杀毒软件的特征码片段 的数量很大,每次从头再来显然太浪费时间了。 尤其是相对烦琐的内存定位,万一中途意外中断, 丢弃之前的结果从头再来是不可容忍的。 3-修正了一些已发现的BUG(比较次要,不影响使用) 4-针对杀毒软件的干扰做了些应对性的改变。 2006-04-30 v 0.014 beta : 1-改用随机数据串填充,因为发现有的杀毒软件用检测填充 0来反定位(他们动作蛮快的哈) 2-把记录文件放到要定位的样本文件所在的目录下了,因为             考虑到以后杀毒软件可能会检测改写记录文件来反定位,              和输出文件放在一起不妥。 3-修正了一处因优化中带来的定位重复造成失败的BUG 感谢frip反馈 4-增加了保护片段(或区域设置),这是为了对付NDD32这类             关联输入表的特征码。(设置方法软件会有提示的) (此功能效果有等测试,感谢111111113提供有关针对NDD32的建议) 因为此版修复和更新相对较大,就跳到0.014 版了,本来想写内存定位的, 不过这两天忙于对付杀毒软件的反定位,内存定位就留到下个版本了。             (其实很想休息几天的,有点累) 2006-04-24 v 0.012 alpha : 1-修正了记录中特征码长度多出一个字节的错误。 ( tandaiha发现 ) 2-当发现特征码片段的长度超过32byte时,就取这32位作为片段结果 反正只要篡改片段里的任何一个字节就行,定出这么长就够了, 发现有的杀毒软件的取样片段(如卡巴斯基 vs AngleShell )               的长度有点不可思议,硬要找出片段的头端简直是浪费时间。            所以,在分析定位结果时,特征码片段的尾端一般是精确的,              当片段长度 <32bytes(记录中用的是十六进制的20) 时, 头端也是精确的,否则头端可能还在更前面。 反正记录结果对于修改来说,已经够用了。 2006-04-22 v 0.011 alpha : 重新排列了按键及暂停,便操作更简洁 2006-04-21 v 0.010 alpha : 原始版本,算法调试基本通过 2006-04-21
特别说明: 本软件谢绝任何支持或使用3721(及及该公司其他产品如雅虎助手等)的人士使用。 multiCCL      by niu-cow in NE365 开发调试环境及工具 : win2k+sp4 dev-cpp 4.992 Lcc_win32 MASM32 v9.0 Radasm ollydbg 1.10 winHex 12.5 包含文档: 1. multiCCL_f.exe 文件特征码专用版 2. multiCCL_m.exe 内存特征码专用版 3. multiCCL_inj.exe 注入代码块内存定位专用版 4. memtest.exe  用作内存定位时加载dll或运行exe或向目标进程注入的辅助程序          (为了防止主程序被杀毒软件Kill,用了远程线程注入) 5. AutoStartScanDll.dll 自动操作模块,使得部分操作自动化 6. multiCCL_readme.txt 本说明文档 7. multiCCL原理图示.htm 基本原理图示 功能: 原来已有的 文件特征码定位功能 (对 PE文件 和 非PE文件)--此功能已较稳定 本版新增功能:内存特征码定位(对PE文件)---------此功能测试中 因为现在杀毒软件针对特征码定位器设置了某些干扰,最终决定把文件定位和   内存定位做成两个独立的部分。 其实代码基本一样的,只为方便日后的维护和升级。 ----------------------------------- ......内存定位.重要提示....... 1.定位期间不要浏览任何放有病毒样本的文件夹 以免被杀毒软件的实时监控删掉 2. 现在打开杀毒软件的实时检测(保护级别在自定义中设置得严格些) 实时检测的执行动作可设置为: a. 提示用户操作 b. 禁止访问并删除 推荐选 a ,千万不要选“仅禁止访问”,“隔离”也不要选 3. 当然也可以按提示手动扫描内存 执行动作设为“仅报告”或“提示用户操作” 只要杀毒软件报告检测结果就行了,不需要它删除或禁用什么 4. 防火墙不要监视远程线程 因为multiCCL为了避免主程序被杀毒软件kill,用远程线程加载样本   (另外,正在找有关驱动方面的资料) ------------------------------------ ------------------------------------ 现在重点测试内存特征码的定位功能。 通过后再添加。现在的界面也还有点马虎,用cmd界面也是为测试 方便,因为随时都可输出中间信息。 ((听 tankaiha 一说还真不想写GUI界面了)) 需要说明的问题是:     1. 开始定位一个样本时,如果发现样本目录中存在旧的记录文件,           程序会读取并认可 旧记录中的特征码。 如果想完全重新开始定位,应该先把旧的记录文件删除或改名, 之后再打开multiCCL 。 2. 输出目录里不要放置任何您想保留的文件,以免给您带来损失。 定位过程中将删除里面的一些文件。 另一个简单的做法是:先手动在样本所在目录下建一个名为              output 的子目录,然后在选择目录的对话框点 “取消”,这样输出文件就都放到这个output 目录下了。 3. 设置保护片段时,如果所保护的片段本身是独立的特征码,就会        导致定位失败,因为所生成的文件会全部被杀,而且一直如此。         所以在设置前,          先要确认所保护的片段不是独立的特征码。 v 0.100 beta 之后的版本用的是等分法,限制区域的优化效果, 对于文件特征码来说是很不明显的, 而对于内存特征码的定位还是比较明显的。 ;  要注意的是,文件定位每次提醒杀毒时,一定要把识别出的文件全部删除, 否则程序会判断错误的。(内存定位就没关系了) 记录文件格式: 只要注意以下几个字段和键值就可以了: [CharactorCodz] ;特征码总数 CharactorTotal= ;特征码的记录格式是 H_起始偏移_结束偏移_长度_…… ;一般只要注意 起始偏移 结束偏移 就够了。记录的是文件偏移, ; 用十六进制表示 ;特征码1 Codz1= ;特征码2 Codz2= ;…… ;当OK=1时表示定位成功完成,ok=0表示定位没有完成 ok= ----------- ;文件定位的记录文件是 multiCCL_f_Log.txt ;内存定位的记录文件是 multiCCL_m_Log.txt ;都放在样本文件所在的目录下。 ----------- ;看内存定位结果时,还有一个字段需要注意的: [antiLocateCodz] newCodz=1 OK=1 CharactorTotal= Codz1= Codz2= …… ;这是杀毒软件针对内存定位干扰码,( antiLocateCodz ) ;定位不出内存特征码或修改内存特征码无效时, ;可以考虑修改入口点(修改代码或转移入口点), ;若以上修改还是无效,则试试修改干扰码。 ;---------------------------- ;另外也请看看更新记录,里面也有部分说明 ; ; 同时也请帮助统计定位一个样本特征码所需的时间,大致记录下就行 ; 结果请反馈到: http://vxer.cn/bbs/read.php?fid=9&tid=112&page=1 ;----------------------------------------------- ;统计内容包括: ;-------- ;基本信息: 哪种杀毒软件的XXX文件定位(病毒库版本XXXX) ;1 样本文件大小: ;2 总共定位出特征码片段的数量: ;3 总共需要杀毒软件扫描几次: ;4 定位总用时: ;5 定位结果评价: 基本可用/有较大偏差/很不可靠 ;---------------------------------------------- ;BTW: 本程序针对的目标是杀毒软件的复合特征码的定位,    当然也包括单一特征码了。 ;免责声明:本程序只供学习,不得用于商业。本程序可能存在某些缺陷,       及其他可能隐含的问题,      使用中可能造成的一切后果,均由使用者自行负责。 如果您对此很在意则请勿使用。 ;感谢您的测试,使用中请保留软件文档的完整,发现任何问题请到NE365的BBS上反馈。 ;(借用一下NE365的间 http://vxer.cn/bbs ,一并致谢NE365 ;及各位网友的帮助和测试 ,大家多多支持NE365吧) ; ;特别说明:本软件谢绝任何支持或使用 3721 的人士使用。             niu-cow 2006-05-22 --------------------------------------------- 大致上找到了特征码没完没了的原因了   很可能是因为保护区域设置得过大,其中含有相当数量的隐含病毒特征, 导致启发式扫描的极高的实现机率。 实际测试中也发现当没有设置保护区域时, 定位出的特征码就很有限。   看来,设置合理的保护区域,对于定位是非常重要的, 尤其是针对“启发式扫描”(NOD32称之为“高级智能侦测模式”)的定位。   尽管以上只是猜测,不过本人认为这下被猜中了。 niu-cow 2006-05-31 20:08 ----------------   在tanknight(myCCL的作者)的BLOG上看到NOD32定位的有关讨论,据说定位 精度太高时,对NOD32的定位往往失败。一般控制在8--16字节为宜。   依照这个原理增加了个控制定位精度的模块,重复的现象有所减少,但 问题好象还没有解决。 niu-cow 2006-06-10 17:04 ------------------------------------------------------------------ ======================================================================================== ------------------------------------------------------------------ 更新历史: v 1.200 (当前版本) 1.为文件特征码定位部分增加了模拟鼠标键盘动作的自动操作模块, 这下可以在定位时抽喝杯开水了(有关说明在模块的设置界面) 建议先手动操作定两三个特征码,之后设置使用自动操作 2.内存定位时exe的加载方式作了改变,这个版本用CREATE_SUSPEND参数 使进程或线程创建时处于挂起状态(类似于被调试器加载,因为 据网友反馈说部分杀毒软件的内存扫描对于OLLYDBG加载的程序 起作用,而对于MYCCL、multiCCL、CCL等的加载不起作用)。 dll的加载没改(因为目前还没找到更好的方法) 注:本版的memtest.exe、memtiCCL_m.exe、multiCCL_inj.exe 和之前的版本均无法兼容,不要混用。 2007-07-17 v 1.150 1.解决了memtest.exe被杀时,主程序的SendMessage无法返回的问题 2.为注入型的提升权限(只有当拥有Administrators以上权限时才起 作用) 这样就可以注入某些系统进程。 注:本版的memtest.exe、memtiCCL_m.exe、multiCCL_inj.exe 和之前的版本均无法兼容,不要混用。 2006-11-29 v 1.140 1.修正了第一次生成Except.txt(用于设置保护区域定位精度等)时, 未能生成完整的模板,导致很多使用者第一次使用时无所适从, 2.将内存定位的一个容易引起误解的“判断……”改为“将判断……” (以上两处BUG感谢网友woaicomputer等的反馈) 3.增加了定位注入数据块的特征码的功能(主要用于对付flux等) 方法是:a 想办法从内存中抓取注入的数据块 (这个要自己想办法) b 用multiCCL_inj.exe处理数据块并注入了目标进程, 结合杀毒软件扫描内存,进行判断定位 注:memtest.exe 再次升级,以适用于multiCCL_inj.exe 2006-11-15 v 1.130 (仅针对内存定位模块) 1.改变EXE的加载方式为创建进程(原来用LoadLibrary) 2.增加对保护区域设置的检测,这样加载失败的机率更少      (本版的 multiccl_m.exe 和 memtest.exe 与过去的版本不兼容) 2006-11-5 v 1.120 (仅针对内存定位模块) 因为有的杀毒软件监视远程线程,用注入法要先关闭这个监视 感觉这样有些麻烦,改用发消息让宿主程序主动加载 ( 此版的 multiccl_m.exe 和 memtest.exe 得配合使用了) 2006-10-23 v 1.110 (仅针对内存定位模块) 有网友(无涯)反馈说内存定位时有问题 发现问题的系统是WIN2003 本人在WIN2K+SP4下测试未发现问题 从出错截图看,问题很可能在杀进程的函数 检查源代码,只发现一个进程句柄没有及时关闭,修正了这个函数, 作为试探性修改,看看问题是否解决。 2006-07-14 v 1.100 : 1- 修正了处理干扰码的方式,并在记录中用~~作标记,或许有点用。 (注:干扰码也可能是特征码的一部分) 2- 修正了定位头端时的还原方式。 3- 生成文件时增加一秒停顿。 这个版本的两处修正都只是试探性的修改。 2006-07-04 v 1.010 : 仅修正了内存定位的模块,使其生成的文件数更少(定头端时) 这样每轮加载次数最多35次,绝大多数时候是28次 (尾端20次,头端8次) 文件定位仍用v 1.000版 2006-06-20 v 1.000 : 从本版本开始,已经是正式版了~~~~ 1- 记录文件文件名中 包含了样本文件名,以有所区别, 感谢pipapi的建议。 2- 增加了一个控制定位精度的功能。 具体是在Except.txt文件中改变dwX的值 当dwX=1 时精度为一字节(最高),如果存在旧的Except.txt 则请自行增加这个字段,如下(前后都不要有格): [dwX] dwX=1 降低精度的目的是减少一些干扰(如NOD32的启发式扫描), 经实际测试发现仍然无法完全避免。 (一般降为 12-16 字节左右为宜,dwX的值用十进制) 保护区域设置的合适一些,不要太大才是最重要的。                  2006-06-09 v 0.120 beta: 1- 实际使用中发现,杀毒软件的“启发式扫描” (NOD32的称“高级智能侦测模式”的扫描速度实在慢, 为提高效率,减少每次生成文件的数量, 当然多扫一遍了(以 1 MB 计算)。 这样一来,对磁盘间的需求也减少了一半。不过现在 的硬盘都很大,不会在乎这点的。 此修正针对文件定位(也包括内存定位前的干扰码定位) 2- 提示音作了细小的调整。 2006-05-31 v 0.110 beta: 1- 增加了内存定位功能(二分法),这样每定位一处特征码 最多只需加载64次(其中定尾端20次,头端32次) 2- 修正了卸载方式。 3- 彻底屏蔽限制点区能。 4- 文件定位仍使用 v 0.100 beta 版 2006-05-25 v 0.100 beta: 1- 修正了winXP下当软件路径带格时出错的问题, 感谢 最近的星球 的测试和反馈 2- 改用了等分法(原来用二分法),效率提高明显。           测试过程中发现的一个偶然的错误却解决了算法中的一个  细节问题,进一步提高了效率(与理论效率相比) 激动ing ,每次最多可能生成64个文件 使用新版本时,把旧版本的记录文件重命名或删除吧, 以免造成潜在的冲突。 3- 增加了定位限制点的功能,就是说只定位限制点之前的部分 且直接从此点开始,   限制点之后的所有数据都将被随机数据串填充。               若需要保护某区数据,请与保护区域配合使用。 限制点的格式为 8 位的十六进制值,以表示文件偏移。 且只当标志设为1时起作用,限制标志为0时不起作用。 特别说明: 这个功能只是预留,目前测试表明没什么用处。   目前的版本只有文件定位功能,就不要使用限制点了。 4- 使用新算法的multiCCL版本号从 v 0.100 beta 开始。 目前只有文件定位功能。先测试BUG。 2006-05-22 v 0.017 beta-p: 再次作一小的修正,因为发现和卡巴对0.012版类似干扰, 这次是别的杀毒软件了,也不清楚原理是什么,干脆连 同干扰码一起定位了,这样还省心些。 (以后前面冒出的干扰码就不怕了, 今后的升级只要应付覆盖区冒出的干扰码就行了) 本BUG系astronomer反馈,致谢 2006-05-18 v 0.017 beta : 再次修正随机数据的生成方式,修正的效果有待测试 因为定位NOD32对彩虹桥英文1.02版的文件特征码时 发现有干扰。(感谢yxrx的测试)                 2006-05-18 v 0.016 beta-p: 1-修正一个针对已找出的特征码的覆盖方式, 因为针对ewido定位时,发现特征码不断地“往前长”, 看看更改后能否通过。 (只为只是小的修正,界面上仍标识为 v 0.016 ) 感谢 honhon 的测试和反馈。 2-用LCC_win32+RadAsm重写宿主程序(内存定位用),体积 更小了。                2006-05-16 v 0.016 beta : 1-修正了随机数据串的生成方式 (感谢abc27的针对NOD32的测试) 2=修正了其他已发现的次要的BUG。 2006-05-13 v 0.015 beta : 1-增加了内存定位的功能,为防止加载样本时被杀毒软件关 闭,启动了一个靶程序,用远程线程注入到宿主进程 2-当样本文件所在目录存在旧的记录文件时,程序将读取旧 记录文件中所记录的已定位出的特征码,并认可这些特 征码。 新增这个功能主要是考虑到有些杀毒软件的特征码片段 的数量很大,每次从头再来显然太浪费时间了。 尤其是相对烦琐的内存定位,万一中途意外中断, 丢弃之前的结果从头再来是不可容忍的。 3-修正了一些已发现的BUG(比较次要,不影响使用) 4-针对杀毒软件的干扰做了些应对性的改变。 2006-04-30 v 0.014 beta : 1-改用随机数据串填充,因为发现有的杀毒软件用检测填充 0来反定位(他们动作蛮快的哈) 2-把记录文件放到要定位的样本文件所在的目录下了,因为             考虑到以后杀毒软件可能会检测改写记录文件来反定位,              和输出文件放在一起不妥。 3-修正了一处因优化中带来的定位重复造成失败的BUG 感谢frip反馈 4-增加了保护片段(或区域设置),这是为了对付NDD32这类             关联输入表的特征码。(设置方法软件会有提示的) (此功能效果有等测试,感谢111111113提供有关针对NDD32的建议) 因为此版修复和更新相对较大,就跳到0.014 版了,本来想写内存定位的, 不过这两天忙于对付杀毒软件的反定位,内存定位就留到下个版本了。             (其实很想休息几天的,有点累) 2006-04-24 v 0.012 alpha : 1-修正了记录中特征码长度多出一个字节的错误。 ( tandaiha发现 ) 2-当发现特征码片段的长度超过32byte时,就取这32位作为片段结果 反正只要篡改片段里的任何一个字节就行,定出这么长就够了, 发现有的杀毒软件的取样片段(如卡巴斯基 vs AngleShell )               的长度有点不可思议,硬要找出片段的头端简直是浪费时间。            所以,在分析定位结果时,特征码片段的尾端一般是精确的,              当片段长度 <32bytes(记录中用的是十六进制的20) 时, 头端也是精确的,否则头端可能还在更前面。 反正记录结果对于修改来说,已经够用了。 2006-04-22 v 0.011 alpha : 重新排列了按键及暂停,便操作更简洁 2006-04-21 v 0.010 alpha : 原始版本,算法调试基本通过 2006-04-21

18,123

社区成员

发帖
与我相关
我的任务
社区描述
Windows客户端使用相关问题交流社区
社区管理员
  • Windows客户端使用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧