Web系统常见编码漏洞(开发工程师知晓)

编程技术  /  houtizong 发布于 3年前   114

1.头号大敌:SQL Injection
原因:程序中对用户输入检查不严格,用户可以提交一段数据库查询代码,根据程序返回的结果,
获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。
本质:
对于输入检查不充分,导致SQL语句将用户提交的非法数据当作语句的一部分来执行。
示例:
String query = "SELECT id FROM users WHERE username="+user+" AND password="+pass;
尽量写成
String query = "SELECT id FROM users WHERE username=? AND password=?";
PreparedStatement stmt = con.prepareStatement(query);
stmt.setString(1, user);
stmt.setString(2, pass);

2.潜在威胁:XSS(Cross Site Script)跨站脚本漏洞
现象:
上传js脚本,html文本,uplaode image与iframe结合,窃取用户名、密码
解决:
输出时使用html encode 转义字符,使得成为纯文本输出
输入处做filter,过滤可执行的html代码

3.FCKEditor等文件上传漏洞:
原因:
对可上传的文件类型控制不严格,导致可以上传可执行的脚本,从而导致服务器被控制
解决方法:
使用正确的函数
白名单与黑名单
禁止上传目录有执行脚本的权限
不要在url中显示上传文件的相对路径

4.越权问题:auth-bypass
解决:
检查每个操作是否进行授权,授权给谁

5.HTTP头的安全隐患:这是一块盲区,http头中的字段很容易被修改
解决:
不要信任来自http头中的取的字段

6.Web 容器自身规则漏洞
现象:Phpshell.php.rar.rar.rar
Apache只会解析第一个 “ . ”
解决:
编码注意

7.暴力破解:验证码可以被暴力破解
解决:
对暴力破解尝试进行帐户锁定,可能会造成恶意尝试锁定帐户

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!

留言需要登陆哦

技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成

网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];

      订阅博客周刊 去订阅

文章归档

文章标签

友情链接

Auther ·HouTiZong
侯体宗的博客
© 2020 zongscan.com
版权所有ICP证 : 粤ICP备20027696号
PHP交流群 也可以扫右边的二维码
侯体宗的博客