php xssclean,php – Codeigniter xss_clean困境

基本上XSS是一个OUTPUT问题 – 但Codeigniter将其作为INPUT问题处理.

Can someone elaborate how it’s bad…

问题是xss_clean会改变你的INPUT – 这意味着在某些情况下(比如你所描述的密码问题)输入不是预期的.

…or at least give 1 most probable scenario where it can be exploited?

它只查找某些关键词,例如“javascript”. xss_clean没有检测到其他脚本操作,而且它不会保护您免受任何“新”攻击.

The one thing I don’t like is javascript: and such will be converted to [removed]. Can I extend the CI’s security core $_never_allowed_str arrays so that the never allowed strings return empty rather than [removed]

你可以做到这一点 – 但你只是把一个绑带放在一个糟糕的解决方案上.

I’ve been reading about pros and cons about whether to escape on input/output with majority says that we should escape on output only.

这是正确的答案 – 逃避所有输出,并且你有真正的XSS保护,而不改变输入.

我个人在Codeigniter中对XSS保护的方法是我不对输入进行任何XSS清理.我在_output上运行一个钩子 – 它清除我的所有“view_data”(这是我用来向视图发送数据的变量).

如果我不想通过在我的控制器中插入“$view_data [‘clean_output’] = false”来运行XSS Clean,我可以切换:钩子检查:

if (( ! isset($this->CI->view_data['clean_output'])) || ($this->CI->view_data['clean_output']))

{

// Apply to all in the list

$this->CI->view_data = array_map("htmlspecialchars", $this->CI->view_data);

}

这为我的整个网站提供了自动和完整的XSS保护 – 只需几行代码而且没有性能损失.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/497503.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ActiveMQ消费者平滑关闭

平滑关闭的思路就是让正在执行的任务线程正常执行完毕,然后再关闭JVM。在JVM关闭之前触发一个shutdown hook,jvm自带这个hook,在java启动时候就可以注册这样的hook。 ##1、简述JVM关闭钩子(shutdown hook) 首先JVM的关…

二叉堆时间复杂度 php,二叉堆(Binary Heap)

二叉堆这个数据结构有点意思,自己做了个总结,内容结构如下:二叉堆性质二叉堆操作应用二叉堆性质:堆(Heap)是一个可以被看成近似完全二叉树的结构,具有完全二叉树的特性:缺少的叶子节点总是位于右子节点n个节…

产业丨一文读懂人工智能产业链,未来10年2000亿美元市场

来源:国防科技信息网概要:针对人工智能产业链,主要有三个核心:基础技术、人工智能技术及人工智能应用,本文将从主要从这三个方面进行梳理。人工智能(Artificial Intelligence),英文缩…

Java获取并Kill系统进程

原理:获取系统所有进程列表,遍历,然后进行模糊匹配,将匹配到的进程杀死! 作用:保证在系统中只有一个程序进程实例。 /*** 确保系统中只有一个程序实例* 1.如果客户端启动前,操作系统中有残留进…

2017年高性能计算领域的成功与失败

来源:中科院信息科技战略情报概要:2017年,机器学习和各种人工智能应用在高性能计算领域持续发挥着重要影响力。2017年12月9日,TOP500官网刊文总结了高性能计算在2017年取得的新进展,以及未来发展趋势,主要内…

php保存rar,php 解压rar文件

对于zip文件网上的例子很多,rar文件解压php没有直接支持,可以用pecl 到http://pecl.php.net/package/rar 下载对应版本的 非线程安全的dll 然后扔到php的 ext目录下。 打开php.ini. 加一行 extensionphp_rar.dll 重启web服务器 和php public function _u…

ProcessBuilder执行bash脚本

我正在尝试从Java执行bash脚本,它返回错误/ bin / bash:’/ home / nika / NetBeansProjects / Parallel Framework / process-executor.sh’:没有这样的文件或目录,我正在使用ubuntu使用netbeans8& 14.04 jdk8. 这是我的代码: public …

php读取云平台数据库,读取Read · ThinkPHP5+数据库和模型 · 看云

#### Db类实现读取单个记录~~~$user Db::table(user)->where(id, 1)->find();//或者$user Db::table(user)->find(1);echo $user[id];echo $user[name];~~~模型实现读取单个记录要比Db类简单很多,而且更加符合对象的设计。~~~$user User::get(1);echo $…

Science封面:谁动了我的DNA?原来是你拿去做机器人了

来源:机器人大讲堂概要:慕尼黑工业大学的Friedrich C. Simmel团队使用DNA分子,组装出了一个可以远程控制的纳米机械臂,并用它成功推动了一个纳米金颗粒。本周《Science》期刊的封面故事,介绍了一款德国制造的灵活DNA手…

Process 执行shell 脚本

概述: Process类是一个抽象类(所有的方法均是抽象的),封装了一个进程(即一个执行程序)。 Process 类提供了执行从进程输入、执行输出到进程、等待进程完成、检查进程的退出状态以及销毁(杀掉&a…

中国倒数第五!毕马威全球自动驾驶报告|附下载

来源:智东西概要:指向高效、安全的自动驾驶被认为是未来汽车形态,渐渐融入到各国汽车发展战略中去,科技公司和传统车企纷纷入局。指向高效、安全的自动驾驶被认为是未来汽车形态,渐渐融入到各国汽车发展战略中去&#…

java 实现中文排序,Java自定义比较器实现中文排序

compareTo 方法compareTo()是两个字符串对象比较大小,返回一个整数值,如果调用字符串对象大,返回正整数,反之,返回负整数。相等则返回0。compareTo()是两个字符串对象按ASCII比较大小(汉字是Unicode),返回一…

java调用shell脚本及注意事项

需求: get方法下载远程zip包,然后zip包解压,取出第一级目录再次进行压缩获取新的压缩zip包。 问题: 如果选择使用java代码的IO流操作,在不确定zip包大小的情况下可能会占用很大的内存,所以选择异步调用s…

潘建伟团队进行人类首次洲际量子通信,给奥地利发去了什么?

来源:澎湃新闻概要:世界首颗量子通信实验卫星完成目标;世界首条量子保密通信“京沪干线”开通;世界首次洲际量子通信……世界首颗量子通信实验卫星完成目标;世界首条量子保密通信“京沪干线”开通;世界首次…

java ps old gen perm gen,ElasticSearch 的一次非正常master脱离的调查

一共有4个节点的cluster,其中es4 是master,某个时间突然es1脱离了整个cluster,调查过程如下:[esbigdata1 logs]$ date; ssh bd4 date2012年09月03日 星期一09:41:26 CST2012年09月03日 星期一09:41:00 CSTes4比es1慢26秒&#xff…

《人工智能标准化白皮书(2018版)》发布|附下载

来源:光明网概要:1月18日下午,2018人工智能标准化论坛在京召开,本次论坛发布了《人工智能标准化白皮书(2018版)》。1月18日下午,2018人工智能标准化论坛在京召开,本次论坛发布了《人…

matlab7.0停止工作,matlab7.0闪退是怎么回事_matlab7.0闪退怎么办

描述兼容性引起的matlab7.0闪退1、在桌面的matlab图标上点击右键,选择“属性”2、选择“兼容性”3、勾选“以兼容模式运行这个程序”,再选择“Windows2000”4点击“确定”matlab7.0闪退的解决办法1)如果不是Intel的CPU,要添加环境变量--〉系统…

java调用shell脚本并传递参数

最近业务上需要java调用执行shell脚本进行一些业务处理,写了个demo,记录下。 主要代码 RequestMapping("/copy/database")ResponseBodypublic String copyDatabase(HttpServletRequest request,String dbCode,String targetPath){JSONObject …

贝叶斯机器学习前沿进展

来源:人机与认知实验室概要:随着大数据的快速发展,以概率统计为基础的机器学习在近年来受到工业界和学术界的极大关注,并在视觉、语音、自然语言、生物等领域获得很多重要的成功应用。摘要 随着大数据的快速发展,以概率…

matlab knn,MATLAB K近邻算法 — knnsearch() 函数 | 学步园

K近邻IDX knnsearch(X,Y) finds the nearest neighbor in X for each point inY. X is an MX-by-N matrix and Y is an MY-by-N matrix. Rows of X and Ycorrespond to observations and columns correspond to variables. IDX isa column vector with MY rows. Each row in I…