WebShell脚本检测机器学习一_从文件名判断可能属于webshell文件的是(3)

一、网安学习成长路线图

网安所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、网安视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述

三、精品网安学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、网络安全源码合集+工具包

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

五、网络安全面试题

最后就是大家最关心的网络安全面试题板块
在这里插入图片描述在这里插入图片描述

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

1 静态检测思路
1.1 文件名检测

最初人们通过构建一个webshell文件名字典去匹配网页文件名,查看是否存在webshell文件。我一开始是不敢相信的,但这是真的,黑客随便拿一个webshell文件来用,甚至都不需要修改文件名就能达到入侵的目的,可见最初工业界对网络安全的不重视。附上webshell文件名,大家感受下:
渗透小组专用ASP小马
vps提权马
asp一句话
改良的小马
国外免杀大马
backdoor.php

1.2 特征码匹配法
特征码匹配法目前普遍采用的一种静态检测方法,通过对webshell文件进行总结,提取出常见的特征码、特征值、威胁函数形成正则,对整个网页文件进行扫描。特征码匹配的方式优点也是十分突出,能对webshell后门精细化分类具备高可解释行且逻辑结构简单,便于在苏宁安全平台的工程化部署。同时缺点也很明显,对安全专家的知识广度和深度高度依赖,且只能识别已知的webshell模式,同样对混淆加密webshell效果有限。对安全人员来说,维护起来极其繁琐,拆西墙补西墙,陷入不断打补丁的死循环,针对大文件对性能消耗较高。厂家更多情况下是采用正则先做一遍筛选,命中严格正则的直接定性,命中宽泛正则的进一步采取其他分析方式。
rule=r’(array_map[\s\n]{0,20}(.{1,5}(eval|assert|ass\x65rt).{1,20}KaTeX parse error: Undefined control sequence: \s at position 57: …ll\_user\_func[\̲s̲\n]{0,25}(.{0,2…(GET|POST|REQUEST).{0,15})’
rule=’(KaTeX parse error: Undefined control sequence: \s at position 29: …QUEST)[.{0,15}]\̲s̲{0,10}(\s{0,10}
(GET|POST|REQUEST).{0,15})’
rule=’((KaTeX parse error: Undefined control sequence: \w at position 48: …ER)([[’"]{0,1})\̲w̲{1,12}([’"]{0,1…((GET|POST|REQUEST|SESSION|SERVER)([[’“]{0,1})\w{1,12}([’”]{0,1}])|\w{1,10}))[\s\n]{0,5}))’
rule=’\s{0,10}=\s{0,10}[{@]{0,2}(KaTeX parse error: Undefined control sequence: \s at position 142: …((eval|assert)[\̲s̲|\n]{0,30}([\s|…((
(GET|POST|REQUEST|SESSION|SERVER)([[’“]{0,1})[\w()]{0,15}([’”]{0,1}]))|\w{1,10}))\s{0,5}))’
rule=’((eval|assert)[\s|\n]{0,30}((gzuncompress|gzinflate(){0,1}[\s|\n]{0,30}base64_decode.{0,100})’
rule=’\s{0,10}=\s{0,10}([{@]{0,2}\{0,1}KaTeX parse error: Undefined control sequence: \s at position 144: …e)(*once){0,1}[\̲s̲\*]+["|’]+[0-9A…(*(GET|POST|REQUEST|SERVER)([[’“]{0,1})\w{0,8}([’”]{0,1}])|[\w]{1,15}))[’“]{0,1})’
rule=’\s{0,10}=\s{0,10}([{@]{0,2}KaTeX parse error: Undefined control sequence: \s at position 146: …(preg\_replace[\̲s̲\n]{0,10}([\s\n…[a-zA-Z_][\w”’[]]{0,15})\s{0,5},\s{0,5}.{0,40}($_(GET|POST|REQUEST|SESSION|SERVER)|str_rot13|urldecode).{0,30})’

1.3 语义分析
语法分析可以看作是特征匹配的抽象升级版。 其根据脚本语言的编译实现方式,对代码进行清洗,抽取函数、变量、系统关键字等字符串单元,来实现危险函数的捕获。通常将源代码拆分后结构化为中间状态表示,再在抽象后状态的基础上进一步分析。相比特征正则匹配,可以做到更精细化的关联分析,在检出率和误报率上提升一大步。该方法要做到非常好的检出效果相对困难,实现复杂,对开发人员要求较高且十分耗时,性价比并不是很高。
Pecker Scanner检测工具就是基于语法的php文件webshell检测方法。该方法对检测文件代码进行清洗后,分析其变量、函数、字符串来实现关键危险函数的捕获,这样可以很好地解决漏报,但同时也存在大量误报。

1.4 统计特征检测

给大家的福利

零基础入门

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

同时每个成长路线对应的板块都有配套的视频提供:

在这里插入图片描述

因篇幅有限,仅展示部分资料

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 29
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值