前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >常见WebShell 检测方法

常见WebShell 检测方法

作者头像
字节脉搏实验室
发布2020-08-17 16:35:35
3.1K0
发布2020-08-17 16:35:35
举报

WebShell 的检测和查杀是 Web 安全里热门且永恒的话题之一了,在网络安全世界里,攻击者总是先拔头筹,出其不意,防守方常常处于比较被动的局面,扮演者受害者的角色。

因为 PHP 类的 WebShell 变形技巧多,复杂且难以检测,下面将以 PHP 的 WebShell 举例讲解,其他语言类似推理。

1、特征值匹配

Webshell 的实现需要两步:数据的传递、执行所传递的数据。

此种方法检测的有效性取决于正则写的是否足够优秀,高危代码块的特征库是否足够丰富。

对于执行数据部分,我们可以收集关键词,匹配脚本文件中的关键词找出可疑函数,当执行数据部分匹配到可疑函数时再进行判断其数据传递部分是否为用户可控,譬如 $_POST、$_GET、$_REQUEST、$_FILES、$_COOKIE、$_SERVER 等等。

下面是一些常见高危函数:

数据传递

$_GET、$_POST、$_COOKIE、$_SERVER

命令执行

exec、passthru、shell_exec、system、eval

文件操作与远程 URL

file、file_get_contents、fopen、curl、fsockopen

回调函数

call_user_func、call_user_func_array、array_maparry_filter

其他高危函数

phpinfo、preg_replace、create_function、unserialize

2、哈希校验

哈希校验的主要工作原理是基于 WebShell 样本库,样本库的丰富度决定了检测的有效性。

模糊哈希(fuzzy hash)算法确定文件分块位置并记录分块,对每个分块计算哈希值然后进行结果比较最后计算整个文件的相似度

3、文件完整性检测

文件的创建时间(新增文件、新增WebShell),修改时 间(原有文件注入WebShell)),文件权限,所有者

当文件的以上特性发生变化时候,可以立刻针对该文件下发 WebShell 检测任务

4、动态行为检测

通过监控运行 PHP 的进程在系统上执行了哪些系统调用或命令,这是通过动态 行为特征抓取 WebShell 的一种有效方式。

一些检测工具

D 盾

官网:http://www.d99net.net

河马

官网:http://www.shellpub.com

WEBDIR+

官网:https://scanner.baidu.com

CloudWalker(牧云)

项目地址:https://github.com/chaitin/cloudwalker

web shell detector

官方网站:http://www.shelldetector.com/

findwebshell

项目地址:https://github.com/he1m4n6a/findWebshell

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-08-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 字节脉搏实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
检测工具
域名服务检测工具(Detection Tools)提供了全面的智能化域名诊断,包括Whois、DNS生效等特性检测,同时提供SSL证书相关特性检测,保障您的域名和网站健康。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档