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