3大Web安全漏洞防御详解:XXS,CSRS以及SQL注入

基本的web安全知识,你们知道有多少种web安全漏洞吗?这里不妨列举10项吧,你们可以自己去网站找相应的教程来提升自己的

1、命令注入(Command Injection)

2、eval注入(Eval Injection)

3、客户端脚本攻击(Script Insertion)

4、跨网站脚本攻击(Cross Site Scripting, XSS)

5、SQL注入攻击(SQL injection)

6、跨网站请求伪造攻击(Cross Site Request Forgeries, CSRF)

7、Session 会话劫持(Session Hijacking)

8 Session  会话固定(Sessionfixation)

9、HTTP响应拆分攻击(HTTP Response Splitting)

10、文件上传漏洞(File Upload Attack)

 

 

这篇文章主要给大家介绍最经常遇到的3个:XXS,CSRF,  SQL注入。

一、XSS漏洞

1.XSS简介

XSS(Cross Site Scripting),意为跨网站脚本攻击,为了和样式表css(Cascading Style Sheet)区别,缩写为XSS

跨站脚本主要被攻击者利用来读取网站用户的cookies或者其他个人数据,一旦攻击者得到这些数据,那么他就可以伪装成此用户来登录网站,获得此用户的权限。

 

跨站脚本攻击的一般步骤

1、攻击者以某种方式发送xss的http链接给目标用户

2、目标用户登录此网站,在登陆期间打开了攻击者发送的xss链接

3、网站执行了此xss攻击脚本

4、目标用户页面跳转到攻击者的网站,攻击者取得了目标用户的信息

5、攻击者使用目标用户的信息登录网站,完成攻击

 

2.XSS攻击的危害

1、盗取用户资料,比如:登录帐号、网银帐号等

2、利用用户身份,读取、篡改、添加、删除企业敏感数据等

3、盗窃企业重要的具有商业价值的资料

4、非法转账

5、强制发送电子邮件

6、网站挂马

7、控制受害者机器向其它网站发起攻击

 

3大Web安全漏洞防御详解:XXS,CSRS以及SQL注入_第1张图片

 

 

3.防止XSS解决方案

XSS的根源主要是没完全过滤客户端提交的数据 ,所以重点是要过滤用户提交的信息。

  • 将重要的cookie标记为http only, 这样的话js 中的document.cookie语句就不能获取到cookie了.

  • 只允许用户输入我们期望的数据。例如:age用户年龄只允许用户输入数字,而数字之外的字符都过滤掉。

  • 对数据进行Html Encode 处理:用户将数据提交上来的时候进行HTML编码,将相应的符号转换为实体名称再进行下一步的处理。

  • 过滤或移除特殊的Html标签, 例如:

你可能感兴趣的:(PHP)