欢迎来到千学网!
您现在的位置:首页 > 实用文 > 其他范文

浅谈变形PHP WEBSHELL检测

时间:2025-11-11 08:18:32 其他范文 收藏本文 下载本文

这次小编给大家整理了浅谈变形PHP WEBSHELL检测,本文共3篇,供大家阅读参考,也相信能帮助到您。

篇1:浅谈变形PHP WEBSHELL检测

一、变形webshell

webshell比如eval($_POST[])大家都耳熟能详,近几年在常见的webshell基础上衍生了很多变种,加大了检测难度,下面先看几个从网上摘取的样本:

1、无ascii码和数字的webshell

2、隐藏关键字

3、编码 + 隐藏关键字

从目前已经公开的样本来看,变形的php webshell都是采取了隐藏关键字(eval、system等)的方法来躲避查杀,

浅谈变形PHP WEBSHELL检测

有一位monyer同学写过一篇webshell的检测文章,他把webshell拆分为下面的结构,执行数据和数据传递,检测思路是:以小括号为界限,匹配执行数据部分是否命中收集的样本的关键字。这种思路很好,个人觉得有两处不足:

1、需要人工维护收集新样本。

2、误报量不可预估。

再看这个结构,变形的webshell无非是隐藏了执行数据部分或者数据传递部分,不过无论怎么变形本质上还是去调用eval、调用system、exec等命令执行函数,杀毒软件通过异常行为来检测木马病毒,比如开机自启动,这种思想同样也可以用在webshell的检测中。获取行为数据是第一步。

篇2:浅谈变形PHP WEBSHELL检测WEB安全

一、变形webshell

webshell比如eval($_POST[])大家都耳熟能详,近几年在常见的webshell基础上衍生了很多变种,加大了检测难度,下面先看几个从网上摘取的样本:

1、无ascii码和数字的webshell

2、隐藏关键字

3、编码 + 隐藏关键字

从目前已经公开的样本来看,变形的php webshell都是采取了隐藏关键字(eval、system等)的方法来躲避查杀,有一位monyer同学写过一篇webshell的检测文章,他把webshell拆分为下面的结构,执行数据和数据传递,检测思路是:以小括号为界限,匹配执行数据部分是否命中收集的样本的关键字。这种思路很好,个人觉得有两处不足:

1、需要人工维护收集新样本。

2、误报量不可预估。

再看这个结构,变形的webshell无非是隐藏了执行数据部分或者数据传递部分,不过无论怎么变形本质上还是去调用eval、调用system、exec等命令执行函数,杀毒软件通过异常行为来检测木马病毒,比如开机自启动,这种思想同样也可以用在webshell的检测中。获取行为数据是第一步。

二、PHP HOOK

这里我们只需要一些敏感的行为数据,比如eval、system的调用。实现方法很简单,hook这些php函数或语法结构,这里通过php扩展来实现hook。下面以eval和system来简要概述下hook的方法。

Eval是一个语法结构,调用eval最终会调用php内核的zend_compile_string函数,hook eval的只需要重写zend_complie_string函数即可,流程如下:

System是php的一个内部函数,php代码是转化为opcode(指令)来执行,函数调用的指令是ZEND_DO_FCALL,风雪之隅大牛在taint扩展(详见参考二)就是通过重载ZEND_DO_FCALL的方法实现了。因为我们并不需要hook每个内部函数,所以这里介绍另外一种方法,流程如下:

上报的数据写在一个日志文件中,包括文件名、调用函数名、代码在文件的行数,

日志结构和内容如下:

附件中有eval、system函数hook实现的demo,具体细节可以查看代码。demo只在php-5.3.6上测试过,不兼容之处忘见谅。

三、检测

变形webshell分为两大类,下面依次说明一下检测逻辑。

1、执行数据隐藏

一个正常的程序员如果使用eval、system是不会刻意的转换隐藏的,如果发现某个函数执行了,代码中却找不到这个函数名,我们认为这是一个异常行为。以下面这个变形为例

比如 传入参数nonalpha.php?_=system&__=whoami执行了一条命令,日志会记录

我们在后端取nonalpha.php文件的第7行内容匹配system(字符串,如果没找到,则认为是一个变形webshell。

2、数据传递隐藏

先看下面这个例子

这个webshell通过编码的referer来传递攻击载荷,利用日志文件记录到的文件名和行数把代码上报到后端,和后端svn中的代码做对比,如果不一致,则认为是一个webshell。

四、不足

web承受着大量的访问请求,增加的php扩展的性能和稳定性是一个严峻的考验,另外在服务器比较多的公司还存在一个推广和部署成本。

五、参考:

[1] hi.baidu.com/monyer/item/a218dbadf2afc7a828ce9d63

[2] www.laruence.com//02/18/2560.html

[3]www.80vul.com/webzine_0x05/0x07%20%E6%B5%85%E8%B0%88%E4%BB%8EPHP%E5%86%85%E6%A0%B8%E5%B1%82%E9%9D%A2%E9%98%B2%E8%8C%83PHP%20WebShell.html

附件:check_webshell_demo.7z

篇3:梁变形检测的一维数字图像相关法

梁变形检测的一维数字图像相关法

分别选择参考图像和变形图像中跨过指定边缘的线段,对两幅图像的这种线段进行一维相关运算以识别边缘的变形(简称一维DIC法).与面检测的二维DIC法相比,计算量小很多.根据生成图像的.研究表明:一维DIC法进行边缘变形识别的误差小于0.05像素.简支梁模型试验表明:边缘变形识别的误差小于0.1像素,700万像素相机检测1.7 m长梁的变形精度可达到0.05 mm.一维DIC法的主要优点是计算量小,适合于海量数据处理的动态检测,主要缺点是变形前后图像边缘的错位对识别精度的影响不易处理,难以达到二维DIC法和一些高精度边缘检测方法的检测精度.

作 者:袁向荣 YUAN Xiang-rong  作者单位:广州大学土木工程学院,广东,广州,510006 刊 名:广州大学学报(自然科学版) 英文刊名:JOURNAL OF GUANGZHOU UNIVERSITY(NATURAL SCIENCE EDITION) 年,卷(期):2010 9(1) 分类号:U441 TP391 关键词:一维数字图像相关   边缘检测   结构变形检测  

《变形计》观后感

变形计作文

变形计观后感

《变形计》观后感

变形妈妈作文

变形作文300字

绿豆变形记日记

变形作文600字

变形作文400字

童话故事:变形鸟

《浅谈变形PHP WEBSHELL检测(通用3篇).doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式

点击下载本文文档