PHP 为什么容易被渗透

知乎上转来的,说的好像有那么一些道理。


==========================================

不是,这问题也有必要装瞎吗?

哪种语言最容易被web shell的方式渗透进去?


不常驻内存,所以动不动要往文件系统里写个文件来暂存数据,甚至语言上就不支持流式处理上传附件的

往网站目录里写个文件立即就能当脚本执行的

小白用户多,不知道要配数据目录和脚本目录权限隔离的(或者不会配)

那除了PHP还能是什么?ASP早没人用了。

再扩展些,哪种web语言最容易被SQL注入?

没有或者不常用ORM框架,很长时间没有prepared statement的支持,escape函数在多字节字符集上还是broken的

哪种web语言最容易被XSS攻击?

前后端不分离,模板引擎默认没有特殊字符escape的

说的又是谁?


PHP直接拿文件系统当路由,产生了很多别的语言/框架没有的越权问题。

PHP照搬C标准库函数的同时,把UB也搬了过来,一个函数在UB时候的行为肯定不会在文档里记载,程序员就不重视,但是由于大家都用PHP官方的解释器,行为又是统一的,一旦能被攻击者渗透,就能渗透一大片。



来源:

https://www.zhihu.com/question/375250686


修改时间 2015-08-05

真诚赞赏,手留余香
赞赏
随机推荐
Node.js 获取文件上传进度 progress-stream
JS中对象与字符串的互相转换
npm warn package.json @1.0.0 no repository field
把Apache ModSecurity的攻击日志存储到MySQL
Windows下Cordova环境搭建及如何用android studio导入cordova项目生成apk
子元素margin-top对父元素的影响
CentOS 7 中,Apache 2.4 的 mod_evasive 无法正常工作,不能屏蔽IP
pm2 以 windows 服务运行
putty配色
HTTP header详解