正则表达式删除javascript恶意软件的问题

时间:2010-05-25 22:38:49

标签: windows regex malware

在我的网站上遇到了一些令人讨厌的JavaScript恶意软件。我知道每个违规代码块都以以下内容开头:

<script language=javascript><!-- 
(function()

结束
</script>

我想通过Windows上的正则表达式删除令人讨厌的位,使用某种免费软件正则表达式替换工具。这里有什么建议?非常感谢你。

2 个答案:

答案 0 :(得分:1)

您可能想尝试UltraEdit,它有一个内置的正则表达式搜索/替换,效果很好。此外,我相信该演示工作了30天。

如果您只想从网页中删除所有 Javascript块,请搜索:

<script language=javascript><!--[\s\S\p]+</script>

(\s = whitespace, \S = non-whitespace, \p = newline characters)

确保在搜索/替换对话框中选中了正则表达式框。

修改

添加到正则表达式后,<script>应该跟<!--(我修改了上面的示例),并且您只会在开幕后立即获得包含评论的<script>个部分标签

答案 1 :(得分:1)

我认为你应该使用configure Privoxy(http://privoxy.org)。它使用PCRE库,可用于Windows。为了过滤,您应该执行以下操作:

  1. 在Privoxy配置目录中添加

    FILTER: my-js-purger
    s@<script\s+language=javascript><!--\s+(function().*?</script>@@s
    

    user.filter档案,

  2. 添加

    { +filter{my-js-purger} }
    /
    

    user.action文件(将/替换为要应用过滤器的网站名称,如果要将其应用到所有网站,请保留原样。

    < / LI>
  3. 确保有未注释的行

    listen-address 127.0.0.1:8118
    actionsfile user.action
    filterfile user.filter
    
    config文件中的

    (我相信只要将它们添加到config文件的末尾就可以了,无论它们是否已经存在)。

  4. 启动privoxy。

  5. 将您的浏览器配置为使用127.0.0.1:8118作为http / https代理服务器。