一、SQL注入
(1)注入产生原理
使用用户输入的参数拼凑SQL语句,用户对服务器端代码里的SQL语句可控,使服务器执行恶意的sql命令
http://bbs.pconline.com.cn/topic.jsp?tid=1 ' and 1=2
(2)万能密码
select * from tb_name where name = ' ' or 1=1 - - ' and passwd = ' '
(3)危害
数据库泄露,撞库攻击,法律责任(个人信息泄露)
(4)防御方法
1.绑定变量:使用SqlBuilder
2.使用安全的存储过程
3.检查数据类型
4.使用过滤函数
二、越权操作
(1)平行越权漏洞
只要一个账户即可控制全站用户数据。当然这些数据仅限于存在漏洞功能对应的数据。越权漏洞的成因主要是因为开
发人员在对数据进行增、删、改、查询时对客户端请求的数据过分相信而遗漏了权限的判断。
案例分析:删除帖子时没有判断当前用户是否有权限删除该帖子,导致其他用户的帖子也被删掉了
(2)垂直越权操作漏洞
基于角色的权限管理,又称为“垂直权限管理”。不同角色的权限有高低之分。高权限角色访问低权限角色的资源往往
是被允许的,而低权限角色访问高权限角色的资源往往是被拒绝的。如果低权限角色获得了高权限角色的能力,那么
就发生了“越权访问”
三、跨站脚本攻击(XSS)
(1)简介
恶意攻击者通过某些输入点往Web页面里插入脚本代码,当用户浏览页面或执行某种操作时,就会触发嵌入的脚本代码,从而实现
恶意攻击。
(2)分类
1.存储型XSS(Stored XSS)
存入了数据库,再取出来时导致的xss。
输入:
输出: