Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 网站被黑客攻击,如何使用SED/GREP删除恶意代码_Php_Ssh_Sed - Fatal编程技术网

Php 网站被黑客攻击,如何使用SED/GREP删除恶意代码

Php 网站被黑客攻击,如何使用SED/GREP删除恶意代码,php,ssh,sed,Php,Ssh,Sed,我的一个网站被黑客入侵了。在每个php文件中都添加了一行代码。我不会在这里发布完整的代码,但它的开头是: <?php if(!isset($GLOBALS["\x61\156\x75\156\x61"])) { $ua=strtolower($_SERVER["\x48\124\x54\120\x5f\125\x53\105\x52\137\x41\107\x45\116\x54"]); if ((! strstr($ua,"\x6d\163\x69\145")) and (! strst

我的一个网站被黑客入侵了。在每个php文件中都添加了一行代码。我不会在这里发布完整的代码,但它的开头是:

<?php if(!isset($GLOBALS["\x61\156\x75\156\x61"])) { $ua=strtolower($_SERVER["\x48\124\x54\120\x5f\125\x53\105\x52\137\x41\107\x45\116\x54"]); if ((! strstr($ua,"\x6d\163\x69\145")) and (! strstr($ua,"\x72\166\x3a\61\x31"))) $GLOBALS["\x61\156\x75\156\x61"]=1; } ?><?php $yudqgxmnlr = 
我试着找到一些ssh命令并用它们替换,但它似乎不起作用。(阅读:我缺乏ssh知识,这会妨碍我)

这是我最近的一次尝试:

sed -i '<?php if(!isset*gzagexgpdc-1; ?>//g’ *.php

sed-i'您需要在开头添加
s/

sed 's/<?php if(\!isset.*gzagexgpdc-1; ?>//g' *.php
sed的/您可以尝试以下方法:

只需将代码放入框中并点击提交,它就会从文件中搜索代码并将其全部删除一次。

这应该可以

find . -name "*.php" -print0 | xargs -0 sed -ri '1s/^<\?php if\(!isset\(\$GLOBALS\[.*-1; \?>//' *.php
find-名称“*.php”-print0 | xargs-0 sed-ri'1s/^/'*.php

重新部署站点可能会出现重复。我不会远程执行此操作。下载所有文件,备份,在编辑器中进行S&R,然后将其发送回远程站点。同时,找出它是如何被黑客入侵的。如果有一个sec漏洞,它可能会再次发生。可能重复感谢您的回答。我在一个子目录上尝试了它,发现这些文件以不同的代码结尾,所以我尝试了:sed-I的///g'*.php,但这不起作用。。。我遗漏了什么吗?没有工作如何(删除太多或不够,如不是所有行,或根本没有…)?没有删除任何内容,但文件时间戳已编辑。。。未通过终端获得任何反馈删除
-i
参数<代码>i
保存对该文件所做的更改。它不会在终端上显示输出。你说的Avinash Raj是什么意思?我在没有-I的情况下尝试了它,但它只是显示了所有文件的内容?
sed -r 's/<\?php if\(!isset.*gzagexgpdc-1; \?>//g' *.php
find . -name "*.php" -print0 | xargs -0 sed -ri '1s/^<\?php if\(!isset\(\$GLOBALS\[.*-1; \?>//' *.php