大多数身份和访问管理系统的设计和实现,普遍存在身份认证失效的问题。会话管理是身份验证和访问控制的基础,并且存在于所有有状态的应用程序中。攻击者可以使用指南手册来检测失效的身份认证,但通常会关注密码转储,字典攻击,或者在类似于钓鱼或社会工程攻击之后,发现失效的身份认证。
确认用户的身份,身份验证和会话管理非常重要,这些措施可用于将恶意的未经身份验证的攻击者与授权用户分离,如果您的应用程序存在以下问题,那么可能存在身份验证的脆弱性。

一,弱密码

弱密码故名思义,就是使用默认的,广为人知的密码,比如123456,admin,password等等,因为黑客在他的数据库里已经保存了常见的,简单的弱密码,所以黑客可以使用破解工具轻松破解用户的密码,然后非法登录登录帐号,对系统进行进一步的攻击。
尤其是在生产环境的服务器管理员密码的设置上,如果使用了弱密码造到黑客破解,会对生产环境系统运行和用户的数据安全造成极大威胁。
 

防范措施

强制使用高复杂度的密码或口令,比如8到12位,同时包含大小写字母,数字和特殊符号组合的密码,并且定期(比如每三个月)修改一次密码。
 

二,暴力破解

暴力破解也是一个比较容易忽略的漏洞,黑客可以利用爆破工具对网站的用户和密码进行枚举(网站也没有对这样的攻击进行限制),成功利用此漏洞的攻击者可以进行非法登录帐号,从而进行更高级的攻击,威胁网站的安全。
 

防范措施

限制登录数据包的使用次数,可以基于用户,也可以基于IP来限制,比如同一IP 五分钟内重试次数不能超过5次,如果超过就临时锁定。
 

三,撞库

撞库其实跟弱密码和暴力破解漏洞有联系,其核心思想是通过收集互联网上已经泄露的用户名和密码信息,生成对应的字典表,然后利用这些字典表批量尝试登录其它网站,以获取一系列可以登录的帐号。
 

防范措施

使用高复杂度的密码,同时避免在多个系统中使用相同的密码。
 

四,多因子认证

一般来说,我们登录网站使用用户名加密码来登录,但是这种方式安全性不高,黑客如果获取到了用户名和密码就可以登录网站,从而对网站安全产生具大威胁。
那么多因子认证就是在传统的用户名加密码之外,提供另一种类型的认证因子来验证其身份,这些认证因子通常包括:手机短信验证码,指纹或面容ID。那么这种多因子认证可以极大地提高系统的安全性。
 

防范措施

除传统的用户名加密外,引入短信验证码等来验证用户身份。
 

五,低复杂度的验证码

在我们登录网站的时候,为了防止黑客攻击通常会使用到验证码,但是传统的验证一般是数字或字母的组合,比如下面这样子的,
这种验证码很容易通过OCR之类的技术进行识别,导致黑客攻击的难度大大降低。
 

防范措施

使用现在主流的,高复杂度的验证码,比如滑块拼图验证码,这样黑客很难通过程序直接识别,从而提高了网站的安全性。
 
 
另外,我最近开发并开源了一个支持免费申请通配符SSL证书的平台:华迅FreeCert,解决了每隔一段时间就要重新申请和部署证书(因为传统的云厂商提供的免费证书一般只有三个月有效期),不支持免费申请通配符证书这两大痛点,欢迎大家注册使用并提供宝贵意见,谢谢!
 

详解Web应用安全系列(3)失效的身份认证的更多相关文章

  1. 框架基础学习之--详解web+maven+spring+mybatis+struts框架文件夹作用

    详解web+maven+spring+mybatis+struts框架文件夹作用 1.程序名 2.Mybatis,mybatis是数据持久层,就是和对象类有关系的东西 3.存放java文件,xml,p ...

  2. ps切图抠图详解-web前端(转)

    网页设计在技术层面上,第一步是美工做出网页效果图,第二步就是网页前端进行网页切图.网页切图工具常用的有fireworks.PS,这里使用PS进行网页切图. 我们通过设计稿,得到我们想要的产出物(如.p ...

  3. 详解web容器 - Jetty与Tomcat孰强孰弱

    Jetty 基本架构 Jetty目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器.它有一个基本数据模型,这个数据模型就是 Handler(处理器 ...

  4. day08:软件系统的体系结构&Tomcat详解&Web应用&http协议

        day08 软件系统体系结构     常见软件系统体系结构B/S.C/S 1.1 C/S C/S结构即客户端/服务器(Client/Server),例如QQ: 需要编写服务器端程序,以及客户端 ...

  5. 详解springmvc控制登录用户session失效后跳转登录页面

    springmvc控制登录用户session失效后跳转登录页面,废话不多少了,具体如下: 第一步,配置 web.xml <session-config> <session-timeo ...

  6. 详解web.xml中元素的加载顺序

    一.背景 最近在项目中遇到了启动时出现加载service注解注入失败的问题,后来经过不懈努力发现了是因为web.xml配置文件中的元素加载顺序导致的,那么就抽空研究了以下tomcat在启动时web.x ...

  7. web应用配置文件详解(web.xml)

    转载链接地址:http://blog.csdn.net/guihaijinfen/article/details/8363839 <?xml version="1.0" en ...

  8. 详解 Web基本概念

    作为本专栏的第一篇博文,本人将带领同学们初步了解什么是Web,以及有关Web学习的一些基本知识点 那么,话不多说,开始主题的讲解吧: 首先,本人来解释下什么是Web: 概念: 使用浏览器进行访问的应用 ...

  9. 【转】详解web.xml中元素的加载顺序

    顺序为: context-param --> listeners --> filters --> servlets(如DispatcherServlet等) 详见<https: ...

  10. 详解C# 网络编程系列:实现类似QQ的即时通信程序

    https://www.jb51.net/article/101289.htm 引言: 前面专题中介绍了UDP.TCP和P2P编程,并且通过一些小的示例来让大家更好的理解它们的工作原理以及怎样.Net ...

随机推荐

  1. dotnet 使用 WpfAnalyzers 辅助分析 WPF 应用代码缺陷

    引入 WpfAnalyzers 代码分析工具,相当于给团队加入一个免费的代码审查工具人,可以帮忙在日常开发找到很多代码缺陷.加入 WpfAnalyzers 代码分析工具,可以减少代码编写里的低级缺陷, ...

  2. Android Studio自强迫升级到4.2版本后调试Native项目时总是卡死问题

    原文地址:https://www.zhaimaojun.top/Note/5464968 就在昨天,也就是2021年5月6号,Android Studio强迫用户升级到4.2版本, 原因就是jcent ...

  3. git学习--GitHub上如何进行PR(Pull Request)操作

    目录 一.前言 二.实现步骤 2.1 将小红在GitHub上的Repository clone到小明的本地电脑 2.1.1 fork小红在GitHub上的Repository到小明的GitHub 2. ...

  4. element-ui使用el-date-picker日期组件常见场景

    开始 最近一直在使用 element-ui中的日期组件. 所以想对日期组件常用的做一个简单的总结: 1.处理日期组件选择的时候面板联动问题 2.限制时间范围 解除两个日期面板之间的联动 我们发现2个日 ...

  5. 小程序真机报错errMsg: “hideLoading:fail:toast can‘t be found“ ?

    showLoading 和 showToast 同时只能显示一个: showLoading 应与hideLoading 配对使用: 把请求接口统一封装,开始请求接口时showLoading,请求接口后 ...

  6. uni.request二次封装

    点击查看代码 const baseUrl = 'https://your-api-base-url.com'; function getAuthToken() { // 获取token的逻辑,可能会从 ...

  7. flask3之CBV和session

    flask的CBV CBV书写案例 from flask import Flask app=Flask(__name__) #FBA @app.route("/") def ind ...

  8. MLOps 学习之旅「GitHub 热点速览」

    又是 AI 神仙打架的一周,上周 OpenAI 发布了最新的 GPT-4o 模型,而谷歌也紧跟着开源了 Gemma 2 模型.随着 AI 大模型不断地变强,各大科技巨头正利用它们重塑自家的产品,这也让 ...

  9. MyBatis日志模块源码分析

    MyBatis源码的logging包下是日志模块的相关实现,Mybatis日志模块通过适配器模式和代理模式优雅的实现了SQL日志的输出功能. 一. 适配器模式实现了MyBatis对第三方日志框架的适配 ...

  10. ffmpeg之视频(avc+aac)无损转mp4(批处理,拖放)

    很多能够无损转视频的工具都来自命令行的ffmpeg版本,本文将介绍如何简单的批处理方法(直接拖放到bat文件上)来实现无损转视频. 工具/原料 ffmpeg(默认的static版本) 方法/步骤   ...