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

一,弱密码

弱密码故名思义,就是使用默认的,广为人知的密码,比如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. SkiaSharp 渲染输出 SVG 文件

    谷歌的 Skia 的一个卖点就是提供了完美的 SVG 的支持,包括输入和输出.输入指的是给一张 SVG 图片,将这个 SVG 渲染出来.输出就是将输出画面保存为 SVG 格式的图片.自然 SkiaSh ...

  2. 5.prometheus监控--监控nginx

    1.监控程序环境准备 mkdir /data/docker-compose -p cd /data/docker-compose cat > docker-compose.yaml <&l ...

  3. vue使用echart(地图,弹窗展示多条数据,option定义)

    第二次用echart,第一次做地图, <template> <div class="echarts" style="background:#3bafde ...

  4. 【2023最新B站评论爬虫】用python爬取上千条哔哩哔哩评论

    目录 一.爬取目标 二.展示爬取结果 三.爬虫代码 四.同步视频 五.附完整源码 您好,我是@马哥python说,一枚10年程序猿. 一.爬取目标 之前,我分享过一些B站的爬虫: [Python爬虫案 ...

  5. 解决HtmlUnit执行JS报错提示ScriptException

    问题描述 HtmlUnit作为一款比Selenium更轻量的HeadLess的Java版本浏览器模拟器,不需要在服务器上安装部署浏览器及其Driver程序. 但是,众所周知,HtmlUnit对JS脚本 ...

  6. NSThread的main方法内部做了什么?

    NSThread当调用start方法的时候,start方法就会调用main方法.那么这个main方法内部做了什么呢?下面是汇编码: 1 ;Foundation`-[NSThread main]: 2 ...

  7. Android Framework学习之系统启动流程

    最近抽空看了framework一些内存,总结一下,留作后续回顾复习

  8. MSP 通过 Splashtop SOS 远程支持非托管设备

    RMM 是 MSP 的绝佳工具.它们使 MSP 可以通过集中控制台来管理其所有客户计算机,通常使他们能够远程访问任何计算机以提供远程支持. 但是,这样做的一个很大限制是--并非所有客户设备都在 MSP ...

  9. C 语言编程 — 高级数据类型 — 共用体

    目录 文章目录 目录 前文列表 共用体 定义共用体 访问共用体成员 前文列表 <程序编译流程与 GCC 编译器> <C 语言编程 - 基本语法> <C 语言编程 - 基本 ...

  10. PageOffice 6 版本最简单的打开保存文件

    在OA办公.文档流转等各个Web系统中,实现最简单的打开编辑保存文件功能,调用PageOffice只需要几行代码就可以完成. 后端代码 在后端编写代码调用webOpen方法打开文件之前给SaveFil ...