记一次学习--webshell防守理念

source 检测输入源,输入源大部分是用户输入。一些像_GET或者_POST等污点追踪一直会追,只有当你程序报错或者经过了一个清洗函数污点追踪才不会追。

缓冲的绕过

然后对于HIDS来说检测文件时会通过几个方法来缓解资源上的压力。

只检测特定后缀的文件

对于已经检测过的文件,以hash缓存检测结果(这种方式在很多地方都有应用),下次不再检测

然后这里可以借助第二个特性来进行HIDS绕过,可以上传一个jsp文件然后他的里面放php的恶意代码,这样对于HIDS来说这个文件中的代码是安全的,将其以hash方式存起来,然后攻击者再次上传后缀为php的文件,然后里面的恶意代码和刚刚的jsp的恶意代码相同,这样HIDS比对hash的时候发现hash相同。成功绕过。

对于上面的问题开发者可以通过将文件名后缀和内容一起hash这样攻击者就无法利用

但是攻击者还是可以利用,这个利用的就是创建一个hash相同但是文件内容不相同的两个文件。这个叫做hash碰撞,这里在GitHub上有开源代码可以完成(其中原理涉及到了密码学的知识感兴趣的同学可以尝试)

GitHub - phith0n/collision-webshell: A webshell and a normal file that have the same MD5

相关推荐
知识分享小能手26 分钟前
统计学学习教程,从入门到精通,参数估计 — 知识点详解与公式推导(10)
学习·机器学习·概率论
有Li29 分钟前
EvoMDT:用于多癌种结构化临床决策的自进化多智能体系统文献速递/医学智能体前沿
人工智能·学习·分类·文献·医学生
sulikey3 小时前
个人Linux操作系统学习笔记11 - 环境变量
linux·笔记·学习
治愈系贝壳4 小时前
ARM --- day 6 时钟
linux·arm开发·学习
minglie15 小时前
zynq高频小数据量PS闭环的三个实验-第0课:目的和目标
学习
劈星斩月6 小时前
监督学习算法 之 决策树
学习·算法·决策树
AOwhisky6 小时前
Python 学习笔记(第五期)——组合数据类型:列表、元组、集合与字典精讲——核心知识点自测与详解
开发语言·笔记·python·学习·云计算
woshihuanglaoshi6 小时前
数据迁移与版本管理 - Flutter在鸿蒙平台实现数据库升级策略
数据库·学习·flutter·华为·harmonyos·鸿蒙·鸿蒙系统
世人万千丶16 小时前
参数管理_Flutter在鸿蒙平台路由参数最佳实践
学习·flutter·华为·harmonyos·鸿蒙
遇乐的果园19 小时前
前端学习笔记-vue加载渲染优化
前端·笔记·学习