XSS 防御

框架配置['preloaded'][] 中添加 'of_base_xssFilter_main' 启动

框架内置会将所有请求数据进行防注入处理( " -> \" ),但并不会对输出数据进行任何编码处理,
当启动 'of_base_xssFilter_main' 模块后,会编码(htmlspecialchars)视图对象中属性名非"_"开始的所有子数据的字符串键和值,
是否开启该模块取决于项目需求及开发方式,但不管如何,花样之多的XSS都是我们时时要注意的问题

开发演示

<?php
class demo extends L {
    public function test() {
        $this->view->attr = array('k"ey' => "<>");     //编码为 array('k&quot;ey' => "&lt;&gt;"), 只会编码字符串
        $this->view->_attr = array('k"ey' => "<>");    //因为"_"开始的属性名,所以不会编码
    }
}
?>

XSS 详细描述 原文地址