当前位置:  开发笔记 > 编程语言 > 正文

这个巨型正则表达式如何工作?

如何解决《这个巨型正则表达式如何工作?》经验,为你挑选了2个好方法。

我最近在我的一个目录中找到了以下代码,在一个名为的文件中doc.php.该文件功能或链接到文件管理器.它做得很好.基本上,它列出了当前目录中的所有文件,并允许您更改目录.

它可以访问我的所有文件(添加,重命名,信息,删除...).我不记得安装了它.我删除了它,删除了一些简单调用的可疑和大文件core并重置了我的所有密码.

谷歌搜索一些代码片段会导致很多结果,其中大部分都没有很多信息... 但是,这里有一个更具信息性的结果.

但是,我不确定我是否理解这件事是如何运作的.我有几个问题:

    有什么可能的方法可以在我的网站/目录上获得?

    如何追溯preg_replace的结果?

        
    


编辑:

这是未经模糊处理的PHP代码:http://pastie.org/1058996



1> rook..:

这不完全是一个正则表达式.正则表达式/.*/,基本上意味着"匹配一切"./e然而,修饰符eval()是下一个参数中的代码.事实上,这是某人隐藏代码的一种方式.以下证明这是一个后门,您必须立即将其删除.您的系统可能会进一步受损.

这是后门在访问时的样子:

服务器安全信息

代码的十六进制部分:

\x65\x76\x61\x6C\x28\x67\x7A\x69\x6E\x66\x6C\x61\x74\x65\x28\x62\x61\x73\x65\x36\x34\x5F\x64\x65\x63\x6F\x64\x65\x28

是真的: eval(gzinflate(base64_decode(

这是代码将打印出这个后门的源代码.但是我不会执行生成的PHP代码,除非它在一次性虚拟机上.


如何锁定您的服务器:

There are a number of ways this could have gotten on your site. Most likely you have been hacked using Exploit Code because one of your web applications is out of date. Try updating everything, including libraries. Change passwords for everything, especially FTP, although should be using sftp or ftps.

If you control your MySQL server make sure your web application's MySQL user account is not root, and make sure you remove MySQL FILE privileges from the account. You should also go a step further and do a chmod 500 -R /path/to/web/root and do a chown www-data -R /path/to/web/root www-data is a common user for apache, but it might be differnt for your system try running to figure out the user account.

接下来运行phpsecinfo.修改你的php.ini或.htaccess并删除所有RED,并尝试删除尽可能多的黄色.


@Peter Ajtai Ooah是的,wordpress是非常不安全的,他们的安全响应团队是迄今为止我遇到过的最糟糕的事情.漏洞代码(http://inj3ct0r.com/)每隔几天就会出现一个wordpress模块​​.确保一切都是最新的.
@Mark - 是的.真是太神奇了.当我第一次进入页面时,我看到了与The Rock的内嵌图像类似的东西.我浏览了一段时间之后浏览了我的文件,然后我突然意识到我没有安装页面.它有一个很好的用户界面:p

2> Michael Mroz..:

e 模式修改装置被替换的代码应作为PHP代码来执行.\x??作为字符串开头的系列是十六进制字符,用于隐藏它们对应的ASCII; \x65\x76\x61\x6C相当于只是打字eval,但是eval在脚本中看到的人会立即意识到某些东西已经出现了.完整的替换字符串转换为:

eval(gzinflate(base64_decode("...")));

我遗漏了...内容,但这是恶意软件作者正在执行的完整代码.您只需执行该gzinflate(base64_decode("..."))部件即可查看代码; 它超过1000行,可能不值得发布

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有