我编写了一个PowerShell脚本,用于检查Task目录中每个任务的<action>标记中的可执行文件,并根据可执行文件数字签名的有效性将<enabled> TRUEorFALSE </ enabled>标记标记为false / true。 读完每个任务后,脚本会重新保存具有相同名称,types和位置的任务文件。
现在我的问题是,当我午餐任务调度程序时,我得到这个消息:
“任务XYZ:任务图像已损坏或已被篡改”。
此消息显示所有已扫描和保存的任务。
是否直接编辑任务的XML文件损坏任务? 有没有任何可能导致此错误的任务风格(例如:registry值)?
这是一个安全function。 个人或恶意程序可以编辑任务文件并将该位置插入恶意程序。 Windows创build任务文件的各种属性和内容的散列,并将其存储在registry中。 如果存储的散列与计算的散列不同,则Windows将阻止该任务运行。
如果你想做这样的事情,删除任务,并重新创build任务设置为禁用。
导出原始任务,然后修改XML导出文件并导入另一台计算机,或在导入新修改的任务之前删除原始问题。
要恢复,你总是可以做一个导入来导入这些XML文件作为新的任务。 (可能需要将该文件重命名为.xml)
XML文件有一个2字节的前缀,由非ASCII字符组成,不能由典型的编辑器(记事本,文本板,…)处理。 当这两个字节通过编辑被破坏时,文件不能被导入。