传统webshell查杀思路
基于机器学习/深度学习的webshell查杀引擎,通过专家知识提取特征训练分类器,其结果受样本、特征、结构等多种因素影响。
特征维度:
我尝试在兜哥《Web安全之机器学习入门》提出的opcode模型基础上,加入文本语义与参数语义特征,构建深度学习模型。模型首先识别php文件,然后提取特征进行计算。
用Github爬取的1w非同源样本测试效果,精确99.1%召回98.6%。结果显示深度学习的静态分析模型召回率优于规则系统,精确率优于沙箱。
demo
提供WEB测试页面和批量打标接口
➜ ~ echo "<?php eval(\$_GET[1]);?>" > shell.php
➜ ~ curl http://webshell.cdxy.me/api -F file=@shell.php
{"status": "ok", "result": [["danger", "MALICIOUS", "webshell detected. Go on, bro!"]]}
在此抛砖引玉,如成功绕过可在评论区留言或邮件我,绕过姿势的案例分析和对改进方向的思考会再次分享。