资讯专栏INFORMATION COLUMN

web security

livem / 1372人阅读

摘要:是代替用户完成指定的动作,需要知道其他用户页面的代码和数据包。

常见web安全及防护原理

sql注入原理

就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令

总的来说有以下几点

永远不要信任用户的输入,要对用户的输入进行校验,可以通过正则表达式,或限制长度,对单引号和双"-"进行转换等

永远不要使用动态拼装SQL,可以使用参数化的SQL或者直接使用存储过程进行数据查询存取

永远不要使用管理员权限的数据库连接,为每个应用使用多带带的权限有限的数据库连接

不要把机密信息明文存放,请加密或者hash掉密码和敏感的信息

XSS原理及防范

Xss(cross-site scripting)攻击指的是攻击者往Web页面里插入恶意html标签或者javascript代码。比如:攻击者在论坛中放一个看似安全的链接,骗取用户点击后,窃取cookie中的用户私密信息;或者攻击者在论坛中加一个恶意表单,当用户提交表单的时候,却把信息传送到攻击者的服务器中,而不是用户原本以为的信任站点

XSS防范方法

首先代码里对用户输入的地方和变量都需要仔细检查长度和对”<”,”>”,”;”,”’”等字符做过滤;其次任何内容写到页面之前都必须加以encode,避免不小心把html tag 弄出来。这一个层面做好,至少可以堵住超过一半的XSS 攻击

XSS与CSRF有什么区别吗?

XSS是获取信息,不需要提前知道其他用户页面的代码和数据包。CSRF是代替用户完成指定的动作,需要知道其他用户页面的代码和数据包。要完成一次CSRF攻击,受害者必须依次完成两个步骤

登录受信任网站A,并在本地生成Cookie

在不登出A的情况下,访问危险网站B

CSRF的防御

服务端的CSRF方式方法很多样,但总的思想都是一致的,就是在客户端页面增加伪随机数

通过验证码的方法

是否了解 Web 注入攻击(最常见 XSS 和 CSRF)?

SQL注入

把SQL命令插入到表单或输入URL查询字符串提交,欺骗服务器达到执行恶意的SQL目的

XSS(Cross Site Script),跨站脚本攻击

攻击者在页面里插入恶意代码,当用户浏览该页之时,执行嵌入的恶意代码达到攻击目的

CSRF(Cross Site Request Forgery),跨站点伪造请求

伪造合法请求,让用户在不知情的情况下以登录的身份访问,利用用户信任达到攻击目的

如何防范 Web 前端攻击?

不要信任任何外部传入的数据

针对用户输入作相关的格式检查、过滤等操作

不要信任在任何传入的第三方数据

使用 CORS,设置 Access-Control-Allow-Origin

更安全地使用 Cookie

设置Cookie为HttpOnly,禁止了JavaScript操作Cookie

防止网页被其他网站内嵌为iframe

服务器端设置 X-Frame-Options 响应头,防止页面被内嵌

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/52130.html

相关文章

  • Spring Boot 参考指南(安全)

    摘要:用于发布身份验证事件的。导入用于安全,配置身份验证,这在非应用程序中也是相关的。安全出于安全考虑,除和之外的所有默认禁用,属性可用于启用。有关保护的其他信息可以在参考指南中找到。 28. 安全 如果在类路径上有Spring Security,那么web应用程序默认是安全的,Spring Boot依赖Spring Security的内容协商策略来决定是使用httpBasic还是formL...

    XanaHopper 评论0 收藏0
  • [译]Spring入门 - Web应用程序安全

    摘要:一旦最基本的应用创建好了,你可以给他加上安全防护。一旦成功登出了,我们的应用程序重定向到到并显示相应的登陆成功的消息。这标记该应用程序是一个应用程序,并激活一些关键行为,比如创建一个。一旦应用程序启动,用浏览器访问。 原网页 https://spring.io/guides/gs/securing-web/ 本指南将引导您完成创建一个资源由Spring Security的保护的一个简单...

    AlexTuan 评论0 收藏0
  • spring系列---Security 安全框架使用和文件上传FastDFS

    摘要:框架入门简介是一个能够为基于的企业应用系统提供声明式的安全访问控制解决方案的安全框架。 1.Spring Security框架入门 1.1 Spring Security简介 Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC,DI(...

    K_B_Z 评论0 收藏0
  • Spring MVC实现Spring Security,Spring Stomp websocket

    摘要:使用框架各个组件实现一个在线聊天网页,当有用户连接,服务器监听到用户连接会使用推送最新用户列表,有用户断开刷新在线列表,实时推送用户聊天信息。根据请求头是否等于判断是否是。 使用Spring框架各个组件实现一个在线聊天网页,当有用户连接WebSocket,服务器监听到用户连接会使用Stomp推送最新用户列表,有用户断开刷新在线列表,实时推送用户聊天信息。引入Jetty服务器,直接嵌入整...

    shuibo 评论0 收藏0
  • Spring之旅第十二站:Spring Security 数据存储、拦截请求 、认证用户、*、

    摘要:启用安全性这个简单的默认配置指定了如何保护请求,以及客户端认证用户的方案。基于数据库进行认证用户数据通常会存储在关系型数据库中,并通过进行访问。必须经过认证其他所有请求都是允许的,不需要认证。要求用户不仅需要认证,还要具备权限。 Spring Security Spring Security 是基于Spring 应用程序提供的声明式安全保护的安全框架。Spring Sercurity ...

    YuboonaZhang 评论0 收藏0
  • Spring Boot Admin排坑指南

    摘要:其简陋的页面让人不忍直视,但更新到系列后,像脱胎换骨一般好用这篇博客记录我个人在使用过程中遇到过的坑,每个坑位都会附上详细的填坑办法环境参数服务直接注册失败常见的注册失败问题可以分为以下两种服务端与客户端不在同一台服务器上提示安全校验不通过 Spring Boot Admin 1.x其简陋的页面让人不忍直视,但更新到2.x系列后,像脱胎换骨一般好用 这篇博客记录我个人在使用Spring...

    CocoaChina 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<