0

我有一个受感染的网站,我正在尝试使用 sed 将其清除。不幸的是,我无法逃避 URL 中的问号符号,我真的被困在这里。我在网上搜索了一个可能的解决方案,但不幸的是我没有找到合适的方法。

只是一个解释:

注入的代码与此类似:

< iframe src=http://test.com/index.html?i=23123>< /iframe>

请注意,我不是专业人士,这就是为什么我需要你的帮助!

所以我清除代码的方法是:

sed -i '/< iframe src=http:\/\/test.com\/index.html\?i=23123>/,/< \/iframe>/d' index.html

不幸的是,这并没有像所有其他人一样有帮助。

所有帮助将不胜感激。

4

1 回答 1

0
echo "< iframe src=http://test.com/index.html?i=23123>< /iframe>" \
| sed 's@< iframe src=http://test.com/index.html?i=23123>< /iframe>@@'

不产生任何输出,这对我来说意味着这已成功删除您的问题字符串。

请注意,大多数 sed 将接受备用正则表达式替换字符,我在这里使用@,因为搜索目标中没有@s。在某些 seds 上,您必须告诉它'嘿,我正在使用替代品,然后转义字符,例如s\@.....@@.

我不明白为什么您引用的尝试?失败了。你试过了吗[?](最坏的情况)[\?]。您在此处未提及的外壳是否进行了二级评估?我的简单示例是否也失败了?

正如其他人肯定会告诉您的那样,您的方法严格来说是一个创可贴,您需要找出系统中的安全漏洞并修复它。您的页面将再次损坏。:-(

IHTH

于 2013-06-14T14:44:23.267 回答