XSS、CSRF、SQL注入原因分析,危害,解决方案

一、xss

名词解释:xss指的是攻击者利用用户提交的数据没有就行过滤和转义处理的缺点,进而添加一些代码到web界面中去。利用了系统对用户的信任

危害:盗取各种账号,网站挂马,非法转账等。

造成原因:过于信任客户端提交的数据。

解决办法:对客户端提交过来的数据进行过滤,转义,正则校验。

举例:

有个表单域:<input type=“text” name=“content” value=“这里是用户填写的留言”>

1、假若用户填写数据为:<script>alert(‘dog!‘)</script>(或者<script type="text/javascript" src="./xss.js"></script>)

2、提交后将会弹出一个dog警告窗口,接着将数据存入数据库

3、等到别的客户端请求这个留言的时候,将数据取出显示留言时将执行攻击代码,将会显示一个dog警告窗口。

二、csrf攻击

名词解释:csrf(伪造跨站请求)。攻击者通过夹持用户已经登录的web网站执行攻击操作。利用 了系统对浏览器的信任

csrf攻击流程:

1.客户端请求网站A并生成一个cookie凭证保存在浏览器中。

2.客户端访问网站B,网站B自动触发客户端请求网站A。通过B网站请求网站A时,带有合法的A网站的cookie凭证。

2.A网站若只验证cookie,执行操作,则攻击成功。

解决办法:1.使用验证码2.每一个表单都有他的唯一token令牌3.验证http referer(http请求的来源地址)

三、sql注入

名词解释:攻击者把sql代码添加到程序参数里面,服务端未对参数进行应有的过滤和校验,导致攻击的sql语句被当做参数执行。

危害:利用漏洞,执行一些危险的sql语句(获取数据机密,删除修改数据)。

解决方案:

1.在表单通过js绑定一些数据类型,在服务端对数据在进行一次过滤和类型转换。

2.连接数据库时,使用预编译语句。

原文地址:https://www.cnblogs.com/shuniuniu/p/11951723.html

时间: 2024-08-18 11:26:50

XSS、CSRF、SQL注入原因分析,危害,解决方案的相关文章

Web攻防之XSS,CSRF,SQL注入

摘要:对Web服务器的攻击也可以说是形形色色.种类繁多,常见的有挂马.SQL注入.缓冲区溢出.嗅探.利用IIS等针对Webserver漏洞进行攻击.本文结合WEB TOP10漏洞中常见的SQL注入,跨站脚本攻击(XSS),跨站请求伪造(CSRF)攻击的产生原理,介绍相应的防范方法. 关键字:SQL注入,XSS,CSRF 1.SQL注入 所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令. 攻击者通过在应用程序预先定义好的SQ

Web攻防之XSS,CSRF,SQL注入(转)

摘要:对Web服务器的攻击也可以说是形形色色.种类繁多,常见的有挂马.SQL注入.缓冲区溢出.嗅探.利用IIS等针对Webserver漏洞进行攻击.本文结合WEB TOP10漏洞中常见的SQL注入,跨站脚本攻击(XSS),跨站请求伪造(CSRF)攻击的产生原理,介绍相应的防范方法.关键字:SQL注入,XSS,CSRF1.SQL注入 所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令. 攻击者通过在应用程序预先定义好的SQL语

sql注入实例分析

什么是SQL注入攻击?引用百度百科的解释: sql注入_百度百科: 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句.[1]比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表

某游戏公司后台数据库SQL注入事件分析

某游戏公司后台数据库SQL注入事件分析 人物关系简介 Blank –SA Dawn(Boss) Ryan –DBA Fred –离开公司的安全顾问 本案例出自于<Unix/Linux网络日志分析与流量监控>一书,该事例详细描述了一家公司的后台服务器被入侵,黑客从中获取了大量游戏币帐号,并发送邮件相威胁的案例.主要遇到的问题是服务器被SQL注入或受到了SQL注入攻击 Blank是XX公司的网络架构师,技术好人缘也不错,他实际的工作室XX公司的"首席救火队员",每件事他都要自己

Oracle包被锁定的原因分析及解决方案

http://blog.csdn.net/jojo52013145/article/details/7470812 在数据库的开发过程中,经常碰到包.存储过程.函数无法编译或编译时会导致PL/SQL 无法响应的问题.碰到这种问题,基本上都要重启数据库解决,严重浪费开发时间.本文将就产生这种现象的原因和解决方案做基本的介绍. 问题分析 从事数据库开发的都知道锁的概念,如:执行 Update Table xxx Where xxx 的时候就会产生锁.这种常见的锁在Oracle里面被称为DML锁.在O

PHPCMS \phpcms\modules\member\index.php 用户登陆SQL注入漏洞分析

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述2. 漏洞触发条件 0x1: POC http://localhost/phpcms_v9/index.php?m=member&c=index&a=login dosubmit=1&username=phpcms&password=123456%26username%3d%2527%2bunion%2bselect%2b%25272%2

AppStore IPv6-only审核被拒原因分析及解决方案

AppStore IPv6-only审核被拒原因分析及解决方案 http://www.jianshu.com/p/8edfdfa20b29 自2016年6月1日起,苹果要求所有提交App Store的iOS应用必须支持IPv6-only环境,背景也是众所周知的,IPv4地址已基本分配完毕,同时IPv6比IPv4也更加高效,向IPv6过渡是大势所趋. 然而在对IPv6进行兼容适配过程中,很多开发者在本地环境测试通过,却在App Store审核时被拒,这种情况下可以首先排查是否由DNS解析失败引起,

Spring MVC 如何防止XSS、SQL注入攻击

在Web项目中,关键词挖掘通常需求处置XSS,SQL写入进犯,处置这个疑问有两个号码大全思路: 在数据进入数据库之前对不合法字符进行转义,在更新和显现的时分将不合法字符复原 在显现的时分对不合法字符进行转义 假如项目还处在起步期间,主张运用第二种,直接运用jstl的标签即可处置不合法字符的疑问.当然,对于Javascript还需求自个处置一下,写一个办法,在解析从服务器端获取的数据时履行以下escapeHTML()即可. 附:Javascript办法: String.prototype.esca

JDBC的SQL注入漏洞分析和解决

1.1.1 SQL注入漏洞分析 1.1.2 SQL注入漏洞解决 需要采用PreparedStatement对象解决SQL注入漏洞.这个对象将SQL预先进行编译,使用?作为占位符.?所代表内容是SQL所固定.再次传入变量(包含SQL的关键字).这个时候也不会识别这些关键字. public class UserDao { ????????? ????????public boolean login(String username,String password){ ????????????????C