无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 46740|回复: 246
打印 上一主题 下一主题

[原创] CatRoot 签名文件筛选 小工具【2020/7/12 更新】

    [复制链接]
跳转到指定楼层
1#
发表于 2020-7-11 20:56:15 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 立帮电子 于 2020-7-13 07:58 编辑

详见 sairen139 发布的 骨头版pe攻坚战的最后一关,关于System32文件夹下CatRoot里的签名文件该如何精简?
参考4楼 Bluebells 的方案写了个小工具
如果出错,就每个文件夹选项单独执行
Windows\System32文件如果超过一定数量,可能出错
逐个筛选不会出错,耗费时间比较大,单drivers文件夹就要 将近3分钟
一次性筛选效率高,文件超过一定数量可能出错。
2020年7月12日 更新 =========================================================
1. 修改 筛选方案:
      初版 :为一次性筛选, 不论选中的文件夹内数量多少,一次性比对 每个cat文件
      例:选中 System32、drivers 文件夹。所选文件夹内包含1100个文件,假设 cat 文件有 100 个
      原方案是拿这 1100 个文件的数据,一次性比对 每个cat文件 ,比对 100次校验完成。
      优点:效率高,缺点:容易卡死出错,甚至无法获得数据 (已放弃该方案)
      改进:如上例,把1100个文件 按 500 个分割,每次比对 500 个文件,分3次比对,需要比对 300 次
      虽然表面上比对次数比原方案多 200 次,实际速度并不比原方案慢,(基本上不卡了,也不会出错)
2. 新增快速校验选项
    不勾选该选项,采用逐个文件比对。
    如上例,1100个文件, cat 文件有 100 个 。比对次数为 1100*100 。 需要比对 110000(十一万) 次
    勾选该选项,只需要比对 300 次。
3. 增加排除重复选项
    已匹配到签名文件。就不再和下个 cat 文件比对匹配,避免重复
    因为 1个cat 文件可能会包含多个文件的数字签名,同样1个文件的数字签名可能会指向不同的 cat 文件
    已经找到了对应的签名文件,后面就不再查找了,避免重复占用空间。
    排除重复选项,还有一个好处就是比对校验越来越快(越往后比对的文件越少)
    注意:对于更新补丁的系统不建议勾选此项。
4.  修复cat文件超过一定数量,输出文本框显示不全卡死
     主要是文本框默认限定不超过3万字,改进每100行清屏一次(其实都是没多大用途的信息)
5.  改进选择 Windows 文件夹自动选择 Windows\System32\CatRoot
     仍然可选择其它位置 CatRoot  文件夹
只适用同版本的文件筛选。
=========================================================





附件下载:
游客,如果您要查看本帖隐藏内容请回复



评分

参与人数 8无忧币 +36 收起 理由
enuser2k + 1 <font style="vertical-align: inh
2011wyy + 5 很给力!
Worry + 5 很给力!
nf17b + 5
freesoft00 + 5
2010hook + 5
sairen139 + 5 лCatRootЧ
zhczf + 5 很给力!

查看全部评分

2#
 楼主| 发表于 2020-7-11 22:10:55 | 显示全部楼层
liuzhaoyzz 发表于 2020-7-11 21:38
试了下,感觉容易卡死不动了是怎么回事?

确实有点,文件夹内数量多了有点卡。抽空改进一下
回复

使用道具 举报

3#
 楼主| 发表于 2020-7-12 13:38:41 | 显示全部楼层
本帖最后由 立帮电子 于 2020-7-12 13:40 编辑
2010hook 发表于 2020-7-12 13:22
没对应的能否显示出来?

没对应的 cat 文件显示出来简单,勾选清理会把没对应的 cat 文件移动到程序所在目录 CatRoot_BAK 备份文件夹

回复

使用道具 举报

4#
 楼主| 发表于 2020-7-12 13:43:57 | 显示全部楼层
本帖最后由 立帮电子 于 2020-7-12 13:45 编辑
2010hook 发表于 2020-7-12 13:27
我觉得指定了Windows文件夹,就应该自动找出子目录catroot,不必手工再选中。

孤立的cat或dll/sys应该列 ...

指定了Windows文件夹,就应该自动找出子目录catroot 这个可以有
主要考虑到提取catroot 到单独文件夹进行筛选,方便选择Windows 以外的文件夹
日志最后一行是:“ 正在检测:Microsoft-Windo”,不完整。
看截图应该是获取cat 文件名或路径错误导致。等会我改进一下

点评

刚才重新下载了最新版,在系统里面跑了下,用时2:45秒,没有卡住的情况了。 这样子的话提取PE里面的cat文件,就不用重启到PE里面搞了,就简单了很多。 很不错!赞一个!  详情 回复 发表于 2020-7-13 11:26
回复

使用道具 举报

5#
 楼主| 发表于 2020-7-13 12:32:28 | 显示全部楼层
sairen139 发表于 2020-7-13 11:41
据测试,只要drivers一个文件夹提取出来catroot里的相对应的.cat签名文件就可以让pe正常使用,其他window ...

正常不可以的,你可能测试的极简的PE,不需要很多文件的支持。
system32 如果部分文件没有对应签名,可能直接蓝屏了。
DriverStore 文件没有对应签名,比如网卡驱动会导致驱动安装不上。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-5-6 14:41

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表