web前端常见安全攻防手段

Anna 2020年1月15日23:14:22安全防范评论阅读模式

本文总结了一些常见的web前端攻击方式及防御方法,其中一部分之前已经谈到过。

[xss] 跨站脚本攻击

目标:向目标网站中注入一段JS脚本

原理:当网站对用户输入的数据过滤不全时,有可能把数据当成脚本执行

危害:主要用于获取用户登录凭据,从而使攻击者能冒充用户登录

防御:前端进行严格过滤;不使用innerHTML插入代码;使用CSP限制可执行的脚本

[csrf] 跨站请求伪造

目标:跨站请求接口

原理:通过将接口当作资源引入,或提交表单等方式,调用其他网站的接口

危害:当用户已登录被攻击的网站时,可以冒充用户进行各种操作

防御:检测请求头中的Referer字段判断请求来源,拒绝跨站的请求;不使用cookie而使用token作登录凭据

[xssi] 跨站脚本包含

目标:获取或探测跨域资源内容

原理:将跨域资源当作脚本用<script>标签引入页面,通过检测报错信息或检测全局变量的方式探测资源内容

危害:获取用户存储在其他站点的信息

防御:现代浏览器通过CORB的机制进行防御,只需在响应头中用Content-Type正确设置MIME类型即可

[CRLF注入]

目标:构造自定义的响应头

原理:由于HTTP请求头之间是用回车和换行隔开的,某些服务器存在漏洞,通过在url中插入回车(CR)和换行(LF),使url的一部分进入响应头中,从而使服务器返回特定的响应头

危害:攻击者可以通过注入Location响应头使页面重定向到恶意网站

防御:关注服务器存在的漏洞,正确配置服务器(和服务器有关,其实nginx也有此漏洞)

[界面操作劫持]

目标:使用户在不知情的情况下进行某些操作,或窃取用户数据

原理:一般通过<iframe>+透明层的方式,诱导用户点击某个位置,或窃取用户输入的内容

危害:欺骗用户进行特定操作,或截取用户输入的用户名和密码

防御:禁止网站被嵌入到iframe中;提醒用户检查url,提高用户的安全意识

[网络端口扫描]

目标:扫描用户主机或用户所在局域网的主机端口是否打开

原理:将目标主机和端口构造的url当作图片加载,通过观察成功或失败回调触发的时间来判断端口是否打开

危害:判断用户主机是否启动了某些服务,或通过检测某些站点的连通性判断用户网络环境,从而针对性地进行进一步攻击

防御:浏览器一般会拒绝访问常见服务端口和经典病毒使用的端口,无需主动防御

[MITM] 中间人攻击

目标:窃取或篡改用户与服务器之间的通信数据

原理:利用arp攻击等方式使用户主机和服务器之间的流量经过攻击者的设备,从而窃取或篡改通信数据

危害:可窃取用户密码、伪造网站内容、植入网页广告等,并可进行重放攻击

防御:全站使用HTTPS加密传输(在不理解密码学的情况下自己进行加密,仍可能被篡改或重放)

本文来自:变化吧门户-www.bianhb.com
特别声明:以上文章内容仅代表作者本人观点,不代表变化吧门户观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与变化吧联系。

  • 赞助本站
  • 微信扫一扫
  • weinxin
  • 加入Q群
  • QQ扫一扫
  • weinxin
Anna

发表评论