原理:
利用Web应用对后台数据库查询语句处理存在的安全漏洞,攻击者提交一段精心构造的数据库查询代码,根据返回的结果,获得他想得知的数据
受影响的系统:对输入参数不进行检查和过滤的系统
常见的SQL注入过程:
1.修改参数值等数据,被修改的数据注入到SQL语句中
2.数据库引擎执行被修改的SQL命令,将结果返回
3.根据返回的敏感信息构造语句进行进一步注入
例:
原理:
Web服务器没有对用户输入进行有效性验证,而又轻易返回给客户端
攻击者往Web页面里插入恶意html代码,当用户浏览该网页时,嵌入其中的恶意代码被执行
危害:
可以盗取用户帐户,修改用户设置,盗取/污染cookie,做虚假广告,查看主机信息等
攻击步骤:
1.寻找漏洞
2.注入恶意代码
3.欺骗用户访问
原理:
目标网站A,恶意网站B
当使用这4个函数包含一个新的文件时,该文件将作为php代码执行,php内核并不会在意该被包含文件的类型
用于人机区分,是防御http攻击的一种手段
客户端和服务器面临的威胁:
防御Web攻击:
服务器:
1.简单性,最好把不必要的服务卸掉
2.使用超级用户需谨慎
3.本地和远程访问控制
4.审计,在审计记录中查找可疑数据
5.备份策略,方便快速恢复服务以减少损失
客户端:
1.对浏览器的安全性进行设置,使用漏洞数较少的浏览器,经常对浏览器进行升级
2.经常对操作系统打补丁、升级
3.尽量不打开一些不信任的网站
同源策略: