欢迎光临2号站|二号站平台-官网注册!二号站平台主管【Q:78841982】

主页 > 平台资质 > 正文

凤凰二号站代理_网站推广外链-网站安全之Web常见

www.nbwangzhan.com 2020-09-04 平台资质
分享到: 微信 新浪微博 QQ分享 QQ空间 豆瓣网 百度贴吧 开心网 复制网址 脸书 推特

网站安全性是网站运营的根底,现在许多企业在建站的时分会运用到快源程序,开源程序的优点是方便快捷、简略易上手,坏处也很明显,那便是网站的安全性很难得到确保,怎么在建站的时分确保网站的安全性呢?

一、SQL注入

1、什么是SQL注入?

SQL注入,便是经过把SQL指令刺进到Web表单提交或输入域名或页面恳求的查询字符串,终究到达诈骗服务器履行歹意的SQL指令。详细来说,它是运用现有应用程序,将(歹意的)SQL指令注入到后台数据库引擎履行的才能,它能够经过在Web表单中输入(歹意)SQL句子得到一个存在安全缝隙的网站上的数据库,而不是依照设计者意图去履行SQL句子。

2、怎么注入?

比方: http://test.com/info?id=1

此URL回来数据库某表的1条数据。程序中或许这么写的,ID为传入变量:

select * from user where id=‘” id “ ’;

如上,那么查询句子将是

select * from user where id = ‘1’

假如 id= 1‘ or ’1‘=’1,那么查询句子将是

select * from user where id = ‘1’ or ‘1’=‘1’

3、SQL注入原因

①对提交的数据未过滤

②组装SQL句子

③不妥的类型处理

4、SQL注入防护

(1)字符串长度验证

仅承受指定长度范围内的变量值。sql注入脚本必然会大大添加输入变量的长度,经过长度约束,比方用户名长度为 8 到 20 个字符之间,超越就判定为无效值。

(2)对单引号和双”-“、下划线、百分号等sql注释符号进行转义

(3)不运用动态组装SQL,运用参数化的SQL进行数据查询存取

代码示例:

String sql = “select id, no from user where id=?”;

PreparedStatement ps

= conn.prepareStatement(sql);

ps.setInt(1, id);

ps.executeQuery();

(4)结构防护: mybatis

① # 符号作用为 将传入的数据都当成一个字符串,会对主动传入的数据加一个双引号。

如:where user_id= #{id}

假如传入的值是111,那么解析成sql时的值为 where id =”111″

假如传入的值是 1’=or ’1’=‘1’ ,则解析成的sql为 whereid “1’=or ’1’=‘1’ “

②$ 符号则是将传入的数据直接生成在sql中。

如:where user_id= ‘${id}’

假如传入的值是111,那么解析成sql时的值为 where id =‘111’

假如传入的值是 1’=or ’1’=‘1’,则解析成的sql为 where _id =‘1’or ’1’=1’

定论:# 符号能够避免SQL注入, $符号无法避免SQL注入,$ 符号一般用于传入数据库目标,例如传入表名

二、XSS


1、什么是XSS?

往Web页面里刺进歹意html代码,当用户阅读该页之时,嵌入其间Web里边的html代码会被履行,然后到达歹意进犯用户的特别意图

2、XSS分类

(1)持久性的XSS(存储在服务器端,进犯行为将伴随着进犯数据一向存在)


(2)非持久性的XSS(一次性的,仅对当次的页面拜访产生影响)


比方:将参数传递至页面输出

参数写法: index?value=

页面和JS写法:

| $(‘#xss’).html(value);

3、XSS损害

履行恣意JS代码。最常见的做法是获取COOKIE认证信息;其他的便是跳转至歹意网址等,或许合作CSRF缝隙,进行创立form表单,进行提交,强制使当时用户操作,比方发帖,删帖,乃至转账等。

4、 XSS防护

(1)过滤用户输入的内容,常见的是过滤 ‘、”、;、< 、>

(2)在用户提交数据时,对数据进行编码处理。

(3)在输出页面时,对数据进行编码处理。

三、CSRF
1、什么是CSRF?

假造恳求,假充用户在站内的正常操作

2、CSRF进犯原理

5.jpg

3、CSRF损害

进犯者盗用了用户的身份,能够运用此身份进行发送邮件、发消息、购买产品、银行转账等等用户可履行的操作。

4、CSRF怎么防护

(1)验证 HTTP Referer 字段

此办法为根底防护,现在Referer是可被改写和假造的,并非肯定安全。

(2)HTTP添加自定义参数验证

服务器生成token一份存放在session中,一份放在前端躲藏域中随恳求头部提交。B不拜访A网站前端拿不到token,恳求无法经过验证,到达防护意图。

四、URL跳转缝隙
1、什么是URL跳转缝隙?

程序中常会重定向页面,在登录体系中长会依据URL中的参数进行重定向,便于用户登录之后,调转到之前的页面。

2、URL示例

比方: http://www.aa.com/account/login?from=http://download.aa.com

关于跳转页是否是当时站点的页面,或许是否是答应的页面地址没有做判别,当歹意进犯者将地址改为:

http://www/aa.com/account/login?from=http://www.bb.com/

那么用户登录后会跳转到www.bb.com,假如是歹意网址,那么用户就成为受害者。

3、合作session在URL中传递的损害

跳转到的页面中很简单从HTTP恳求头中获取到url中session的值,关于session中验证信息不绑定用户客户端信息的状况,进犯者可直接运用,成为之前用户的身份。

4、URL跳转缝隙防护

(1)能够确认的URL:装备对应索引文件,经过索引找到对应详细url再进行跳转

(2)无法确认的URL:添加规矩校验,先经过验证后在进行跳转

TAG: 2号站注册

2号站主管Q:2347-660
热门标签