026-PHP应用&模版引用&Smarty渲染&MVC模型&数据联动&RCE安全

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居多)

使用的功能–对应使用的函数–对应存在的安全问题