app开发者平台在数字化时代的重要性与发展趋势解析
992
2023-02-07
本文目录一览:
1、严格的口令策略应包含的要素:
(1)满足一定的长度,比如8位以上;
(2)同时包含数字,字母和特殊字符 C)系统强制要求定期更改口令;
(3)用户可以设臵空口令。
2、所有囗令,包括初始囗令,都必须依据部门规定的下列规则建立和执行:
(1)必须定期更改;
(2)必须符合部门规定的最小长度6位;
(3)最好是字母和数字字符的组合;
(4)必须不能是可以轻易联想到的账号所有者的特性:用户名、绰号、亲属的姓名、生日等;
(5)必须不能用字典中的单词或首字母缩写;
(6)必须保存历史口令,以防止口令的重复使用。
3、该策略的目的是为用户鉴别机制建立创造、分发、保护、终止以及收回的规则。
4、存储的口令必须进行加密;
5、用户的账号口令必须不能泄露级任何人。部门不能询问用户的账户,口令;
6、安全标志(如智能卡)在关系结束时,必须退回;
7、如果怀疑口令的安全性,应立即进行更改;
8、管理员不能为了使用信息资源规避口令;
9、用户不能通过自动登录的方式绕过口令登录程序。
·计算机设备如果无人值守必须启动口令保护屏保或注销;
随着互联网的发达,各种WEB应用也变得越来越复杂,满足了用户的各种需求,但是随之而来的就是各种网络安全的问题。作为前端开发行业的我们也逃不开这个问题。所以今天我就简单聊一聊WEB前端安全以及如何防范。
首先前端攻击都有哪些形式,我们该如何防范?
一、XSS攻击
XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植 入到提供给其它用户使用的页面中。比如这些代码包括HTML代码和客户端脚本。攻 击者利用XSS漏洞旁路掉访问控制——例如同源策略(same origin policy)。这种类型 的漏洞由于被黑客用来编写危害性更大的网络钓鱼(Phishing)攻击而变得广为人知。
XSS攻击的危害包括:
1、盗取各类用户帐号,如机器登录帐号、用户网银帐号、各类管理员帐号
2、控制企业数据,包括读取、篡改、添加、删除企业敏感数据的能力
3、盗窃企业重要的具有商业价值的资料
4、非法转账
5、强制发送电子邮件
6、网站挂马
7、控制受害者机器向其它网站发起攻击
XSS攻击的具体表现:
1、JavaScript代码注入
下面是代码的页面
这段代码的作用是把第一个输入框的字符串,输出到第二个输入框,我们输入1,那么第二个input里的value值就是1,下面是页面的截图和源代码的截图(这里我输入下面的代码来测试)
<SCRIPTalert('xss')</SCRIPT
明显的可以看到,并没有弹出对话框,大家可能会疑惑为什么没有弹窗呢,看看源代码
我们看到我们输入的字符串被输出到第15行input标签里的value属性里面,被当成value里的值来显现出来,所以并没有弹窗,这时候我们该怎么办呢?聪明的人已经发现了可以在
<SCRIPTalert('xss')</SCRIPT
前面加个"来闭合input标签。所以应该得到的结果为
成功弹窗了,我们在看看这时的页面
看到后面有第二个input输入框后面跟有"字符串,为什么会这样呢,我们来看看源代码
解决办法:目前来讲,最简单的办法防治办法,还是将前端输出数据都进行转义最为稳妥,虽然显示出来是有script标签的,但是实际上,script标签的左右尖括号(<),均被转义为html字符实体,所以,便不会被当做标签来解析的,但是实际显示的时候,这两个尖括号,还是可以正常展示的。
2、append的利用
上一小节我们防住了script标签的左右尖括号,但聪明的黑客们还是想出了好办法去破解,我们知道,直接给innerHTML赋值一段js,是无法被执行的。比如,
$('div').innerHTML ='<SCRIPTalert("okok");</SCRIPT '';
但是,jQuery的append可以做到,究其原因,就是因为jquery会在将append元素变为fragment的时候,找到其中的script标签,再使用eval执行一遍。jquery的append使用的方式也是innerHTML。而innerHTML是会将unicode码转换为字符实体的。
利用这两种知识结合,我们可以得出,网站使用append进行dom操作,如果是append我们可以决定的字段,那么我们可以将左右尖括号,使用unicode码伪装起来,就像这样--"\u003cscript\u003ealert('xss');"。接下来转义的时候,伪装成\u003的<会被漏掉,append的时候,则会被重新调用。虽然进行了转义,注入的代码还是会再次被执行
3、img标签的再次利用
img标签,在加载图片失败的时候,会调用该元素上的onerror事件。我们正可以利用这种方式来进行攻击。
但是,如果这张图片的地址我们换种写法呢?
这时的源码已经变为--src为空,但是onerror的时候,执行注入代码。我们刷新查看页面,就会发现,代码注入已经成功,需要继续转义。
二、 CSRF攻击
什么是CSRF攻击?
CSRF(Cross-site request forgery跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。其实就是网站中的一些提交行为,被黑客利用,你在访问黑客的网站的时候,进行的操作,会被操作到其他网站上(如:你所使用的网络银行的网站)。
1、要合理使用post与get
通常我们会为了省事儿,把一些应当提交的数据,做成get请求。殊不知,这不仅仅是违反了http的标准而已,也同样会被黑客所利用。
比如,你开发的网站中,有一个购买商品的操作。你是这么开发的:
那么,黑客的网站可以这样开发:
这样的话,用户只需要访问一次黑客的网站,其实就相当于在你的网站中,操作了一次。然而用户却没有感知。
所以,我们日常的开发,还是要遵循提交业务,严格按照post请求去做的。更不要使用jsonp去做提交型的接口,这样非常的危险。
2、xsrf攻击升级
如果你使用了post请求来处理关键业务的,还是有办法可以破解的。我们的业务代码如下:
黑客代码如下:
点击后,用户进行了提交,却连自己都不知情。这种情况如何防御呢?
最简单的办法就是加验证码,这样除了用户,黑客的网站是获取不到用户本次session的验证码的。但是这样也会降低用户的提交体验,特别是有些经常性的操作,如果总让用户输入验证码,用户也会非常的烦。
另一种方式,就是在用访问的页面中,都种下验证用的token,用户所有的提交都必须带上本次页面中生成的token,这种方式的本质和使用验证码没什么两样,但是这种方式,整个页面每一次的session,使用同一个token就行,很多post操作,开发者就可以自动带上当前页面的token。如果token校验不通过,则证明此次提交并非从本站发送来,则终止提交过程。如果token确实为本网站生成的话,则可以通过。
代码如下
并没有携带本站每次session生成的token,则提交失败。
本站的网站form,则都会自动携带本站生成的token
再次使用本站的网页进行提交,则通过
当然,上面的只是例子,具体的token生成,肯定是要随着session与用户ID去变的,如果各位看官觉得自己的网站也需要加个token,请自行百度,进行深入的学习。
三、网络劫持攻击
很多的时候,我们的网站不是直接就访问到我们的服务器上的,中间会经过很多层代理,如果在某一个环节,数据被中间代理层的劫持者所截获,他们就能获取到使用你网站的用户的密码等保密数据。比如,我们的用户经常会在各种饭馆里面,连一些奇奇怪怪的wifi,如果这个wifi是黑客所建立的热点wifi,那么黑-客就可以结果该用户收发的所有数据。这里,建议站长们网站都使用https进行加密。这样,就算网站的数据能被拿到,黑客也无法解开。
如果你的网站还没有进行https加密的化,则在表单提交部分,最好进行非对称加密--即客户端加密,只有服务端能解开。这样中间的劫持者便无法获取加密内容的真实信息了。
四、控制台注入代码
不知道各位看官有没有注意到天猫官网控制台的警告信息,如图4.1所示,这是为什么呢?因为有的黑客会诱骗用户去往控制台里面粘贴东西(欺负小白用户不懂代码),比如可以在朋友圈贴个什么文章,说:"只要访问天猫,按下F12并且粘贴以下内容,则可以获得xx元礼品"之类的,那么有的用户真的会去操作,并且自己隐私被暴露了也不知道。
天猫这种做法,也是在警告用户不要这么做,看来天猫的前端安全做的也是很到位的。不过,这种攻击毕竟是少数,所以各位看官看一眼就行,如果真的发现有的用户会被这样攻击的话,记得想起天猫的这种解决方案。
五、钓=鱼
钓鱼也是一种非常古老的攻击方式了,其实并不太算前端攻击。可毕竟是页面级别的攻击,我们也来一起聊一聊。我相信很多人会有这样的经历,Q-Q群里面有人发什么兼职啦、什么自己要去国外了房子车子甩卖了,详情在我Q-Q空间里啦,之类的连接。打开之后发现一个Q-Q登录框,其实一看域名就知道不是Q-Q,不过做得非常像Q-Q登录,不明就里的用户们,就真的把用户名和密码输入了进去,结果没登录到Q-Q,用户名和密码却给人发过去了。
其实这种方式,在前端也有利用。下面,我们就来试试如果利用前端进行一次逼真的钓鱼。
1 首先,我们在xx空间里分享一篇文章,然后吸引别人去点击。
2 接着,我们在cheat.php这个网站上面,将跳转过来的源网页地址悄悄的进行修改。
于是,在用户访问了我们的欺骗网站后,之前的tab已经悄然发生了变化,我们将其悄悄的替换为了钓鱼的网站,欺骗用户输入用户名、密码等。
3 我们的钓鱼网站,伪装成XX空间,让用户输入用户名与密码
这种钓鱼方式比较有意思,重点在于我们比较难防住这种攻击,我们并不能将所有的页面链接都使用js打开。所以,要么就将外链跳转的连接改为当前页面跳转,要么就在页面unload的时候给用户加以提示,要么就将页面所有的跳转均改为window.open,在打开时,跟大多数钓鱼防治殊途同归的一点是,我们需要网民们的安全意识提高。
六、我们平时开发要注意些什么?
开发时要提防用户产生的内容,要对用户输入的信息进行层层检测要注意对用户的输出内容进行过滤(进行转义等)重要的内容记得要加密传输(无论是利用https也好,自己加密也好)
get与post请求,要严格遵守规范,不要混用,不要将一些危险的提交使用jsonp完成。
对于URL上携带的信息,要谨慎使用。心中时刻记着,自己的网站哪里可能有危险。
1、登录页面加密
在登录之后实施加密有可能有用,这就像把大门关上以防止马儿跑出去一样,不过他们并没有对登录会话加密,这就有点儿像在你锁上大门时却将钥匙放在了锁眼里一样。即使你的登录会话被传输到了一个加密的资源,在许多情况下,这仍有可能被一个恶意的黑客攻克,他会精心地伪造一个登录表单,借以访问同样的资源,并访问敏感数据。通常加密方式有MD5加密、数据库加密等。
2、专业工具辅助
在市面目 前有许多针对于网站安全漏洞的检测监测系统,但大多数是收费的,但也有一些免费的网站安全检测平台,利用他们能够迅速找到网站的安全隐患,同时一般也会给出相应的防范措施。
3、加密连接管理站点
使用不加密的连接(或仅使用轻度加密的连接),如使用不加密的FTP或HTTP用于Web站点或Web服务器的管理,就会将自己的大门向“中间人”攻击和登录/口令的嗅探等手段敞开大门。因此请务必使用加密的协议,如SSH等来访问安全资源,要使用经证实的一些安全工具如某人截获了你的登录和口令信息,他就可以执行你可做的一切操作。
4、兼容性加密
根据目 前的发展情况,SSL已经不再是Web网站加密的最先进技术。可以考虑TLS,即传输层安全,它是安全套接字层加密的继承者。要保证你所选择的任何加密方案不会限制你的用户基础。
5、连接安全网络
避免连接安全特性不可知或不确定的网络,也不要连接一些安全性差劲的网络,如一些未知的开放的无线访问点等。无论何时,只要你必须登录到服务器或Web站点实施管理,或访问其它的安全资源时,这一点尤其重要。如果你连接到一个没有安全保障的网络时,还必须访问Web站点或Web服务器,就必须使用一个安全代理,这样你到安全资源的连接就会来自于一个有安全保障的网络代理。
6、不共享登录信息
共享登录机要信息会引起诸多安全问题。这不但适用于网站管理员或Web服务器管理员,还适用于在网站拥有登录凭证的人员,客户也不应当共享其登录凭证。登录凭证共享得越多,就越可能更公开地共享,甚至对不应当访问系统的人员也是如此;登录机要信息共享得越多,要建立一个跟踪索引借以跟踪、追查问题的源头就越困难,而且如果安全性受到损害或威胁因而需要改变登录信息时,就会有更多的人受到影响。
7. 采用基于密钥的认证而不是口令认证
口令认证要比基于密钥的认证更容易被攻破。设置口令的目的是在需要访问一个安全的资源时能够更容易地记住登录信息。不过如果使用基于密钥的认证,并仅将密钥复制到预定义的、授权的系统(或复制到一个与授权的系统相分离的独立介质中,直接需要它时才取回),你将会得到并使用一个更强健的难于破解的认证凭证。
8. 维护一个安全的工作站
如果你从一个客户端系统连接到一个安全的资源站点,而你又不能完全保证其安全性,你就不能保证某人并没有在监听你所做的一切。因此键盘记录器、受到恶意损害的网络加密客户以及黑客们的其它一些破坏安全性的伎俩都会准许某个未得到授权的个人访问敏感数据,而不管网络是否有安全措施,是否采用加密通信,也不管你是否部署了其它的网络保护。因此保障工作站的安全性是至关重要的。
9. 运用冗余性保护网站
备份和服务器的失效转移可有助于维持最长的正常运行时间。虽然失效转移可以极大地减少服务器的宕机时间,但这并不是冗余性的唯一价值。用于失效转移计划中的备份服务器可以保持服务器配置的最新,这样在发生灾难时你就不必从头开始重新构建你的服务器。备份可以确保客户端数据不会丢失,而且如果你担心受到损害系统上的数据落于不法之徒手中,就会毫不犹豫地删除这种数据。当然,你还必须保障失效转移和备份方案的安全,并定期地检查以确保在需要这些方案时不至于使你无所适从。
10. 确保对所有的系统都实施强健的安全措施,而不仅运用特定的Web安全措施
在这方面,可以采用一些通用的手段,如采用强口令,采用强健的外围防御系统,及时更新软件和为系统打补丁,关闭不使用的服务,使用数据加密等手段保证系统的安全等。
11、利用防火墙防护网站安全
例如使用操作系统自带的Internet连接防火墙(ICF),检查出入防火墙的所有数据包,决定拦截或是放行那些数据包。防火墙可以是一种硬件、固件或者软件,例如专用防火墙设备、就是硬件形式的防火墙,包过滤路由器是嵌有防火墙固件的路由器,而代理服务器等软件就是软件形式的防火墙。
12、运用网站监控措施
随着互联网的迅速成长,个人网站、企业网站、社区网站……越来越多,同时网站竞争也越来越强,从而衍生出来的对网站的监控,网站监控是通过软件或者网站监控服务提供商对网站进行监控以及数据的获取从而达到网站的排错和数据的分析。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~