PHP应用&模版引用&Smarty渲染&MVC模型&数据联动&RCE安全
1.自写模版引用
- 1、页面显示样式编排(html编排)
- 2、显示数据插入页面(php后端插入数据)
- 3、引用模版调用触发(不可能每个页面都写一个Html)
安全问题:
在数据库行里添加php代码,会运行
访问mtml代码页面,里面的php代码不会执行,但是php文件引用了含有PHP代码的HTML文件,则会执行HTML文件里面的PHP代码,因为引用后html文件首先会运行一次
2.Smarty模版引用
作用:渲染页面,提升美观,安全
下载:https://github.com/smarty-php/smarty/releases
此时使用这个模板,就不会出现上面的安全问题。但模板本身也可能存在漏洞
3.框架、模板、组件
php
1.框架:thinkphp yii laraver
核心开发,代码逻辑核心
2.模板:smarty
主要负责页面美观
3.组件:zendguardloader php-imagick
第三方功能(图片处理、数据转换、数据库操作等)
java
- 1.框架:struts2 springboot ssm
- 2.模板:
- 3.组件:shiro fastjson
识别
- 白盒:直接看代码
- 黑盒:端口扫描、数据包特征、识别插件工具等
4.漏洞安全问题 – 代码审计
1.本身代码存在漏洞(自己写的就有问题)
2.第三方插件存在漏洞(ueditor)
3.第三方模板存在漏洞(smarty)
4.第三方组件存在漏洞(shiro fastjson等,java居多)
使用的功能–对应使用的函数–对应存在的安全问题