gpt4 book ai didi

windows - Dos 批处理脚本 - 用主文件递归替换文件实例(timthumb 漏洞利用预防)

转载 作者:可可西里 更新时间:2023-11-01 10:08:40 28 4
gpt4 key购买 nike

我找到了一些非常好的示例,但不是我所需要的。我的目标是拥有一个我可以每晚运行的批处理脚本,以用位于驱动器根目录的文件的新副本替换文件的所有实例(在我的例子中是 timthumb.php)。

这是我目前所拥有的......

for /f %%a IN ('dir /b C:\thumb_test') do copy /y C:\thumb_test\timthumb.php %%a

这已经很接近了,它将替换 C:\thumb_test\test1\timthumb.php 等文件夹中的 timthumb.php 实例,但不会深入目录。例如 C:\thumb_test\test2\level2\timthumb.php 没有被替换。此外,在替换文件后,它看起来像是在尝试读取实际的 timthumb.php 并输出一堆错误,例如...

C:\thumb_test>by Tim McDaniels and Darren Hoyt
'by' is not recognized as an internal or external command,
operable program or batch file.

我发现/R 用于递归,但是当我尝试以下操作时它也不起作用。

for /f %%a IN ('dir /b C:\thumb_test') do copy /y C:\thumb_test\timthumb.php %%a

这给了我结果: C:\thumb_test>测试.bat %a 此时出乎意料。

C:\thumb_test>for /r /f %a IN ('dir /b C:\thumb_test') do copy /y C:\thumb_test\
timthumb.php %a

我的 DOS 知识有限,所以我希望其中一位专家有一个想法。

谢谢-山姆

PS 任何使用 timthumb 的人,你应该看看 http://markmaunder.com/2011/08/01/zero-day-vulnerability-in-many-wordpress-themes/并确保您的网站是安全的。

最佳答案

for /R c:\thumb_test %%a in (timthumb.php) do if exist "%%a" copy /y c:\thumb_test\timthumb.php "%%a"

或者,使用更可靠的 robocopy 而不是复制:

for /R c:\thumb_test %%a in (.) do robocopy /xl c:\thumb_test "%%a" timthumb.php

关于windows - Dos 批处理脚本 - 用主文件递归替换文件实例(timthumb 漏洞利用预防),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7167420/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com