为什么挑战-响应方法对于忘记密码来说不是一个糟糕的解决方案?

2023-11-25

我的公司正在开发在线人力资源和薪资应用程序,其中安全访问至关重要。我清楚如何锁定大多数身份验证/授权过程,但“忘记密码”页面除外。

我最初的计划是要求用户输入电子邮件地址和对先前选择/输入的质询问题的答复,并将临时密码邮寄到列出的电子邮件(假设电子邮件有效)。但我读过here and here(都在 SO 上)挑战-响应方法是不安全的。

如果我们只是通过电子邮件发送临时密码,那么它真的那么不安全吗?我能想到的唯一更安全的选择是要求用户致电他们的客户服务代表,这将极大地增加我们员工的负担。

我错过了什么......有更好的方法吗?谢谢!


不要通过电子邮件发送临时密码,而是通过电子邮件向用户发送 URL + 令牌以重置密码页面。这样一来,任何未加密的密码都不会转手。如果最终用户尝试访问该页面并且重置令牌已被使用,那么最终用户也可以立即明显地看出他们的帐户已被盗用。

从评论中添加:

我认为挑战-响应(“秘密问题”)方面实际上使事情变得不那么安全,因为它们通常可以通过研究有关目标的公共信息来发现。总步骤越少,在无人知晓的情况下被破坏的步骤就越少。尽早且经常进行重置电子邮件是让人们知道正在尝试的好方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么挑战-响应方法对于忘记密码来说不是一个糟糕的解决方案? 的相关文章

  • .Net 2.0 ServiceController.GetServices()

    我有一个启用了 Windows 身份验证的网站 从网站的页面中 用户可以启动一项对数据库执行某些操作的服务 启动该服务对我来说效果很好 因为我是服务器上的本地管理员 但我刚刚让一个用户测试了它 但他们无法启动该服务 我的问题是 有谁知道一种
  • 什么是 API 密钥? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如今 我几乎在每个跨服务应用程序中都看到这个词 API 密钥到底是什么以及它的用途是什么 另外 公共 API 密钥和私有 API 密钥
  • AWS Amazon - 登录循环卡住

    我已经使用 AWS 亚马逊几年了 但是 突然当我登录时 我进入了此验证部分 他们将验证码发送到我的电子邮件 我收到了该代码 因此 我输入收到的代码 最终返回登录页面 所以我登录后 同样的事情一遍又一遍地发生 我无法进入我的仪表板 它只是不断
  • 浏览器关闭时 Omniauth 会话过期

    在我的 Rails 3 应用程序中 我使用 Omniauth 进行用户身份验证部分 fb twitter 实际上我遵循这个 https github com RailsApps rails3 mongoid omniauth https g
  • HTTPS URL 的基本代理身份验证返回 HTTP/1.0 407 需要代理身份验证

    我想在 Java 中使用具有基本身份验证 用户名 密码 的代理来进行连接 并且仅此连接 以下代码适用于 HTTP URL 例如 http www google com http www google com URL url new URL
  • PHP - hash_pbkdf2 函数

    我正在尝试使用此 php 函数执行一个函数来哈希密码 http be php net manual en function hash pbkdf2 php http be php net manual en function hash pb
  • 自托管 WCF REST 服务和基本身份验证

    我创建了一个自托管的 WCF REST 服务 带有 WCF REST Starter Kit Preview 2 中的一些额外内容 这一切工作正常 我现在正在尝试向服务添加基本身份验证 但我在 WCF 堆栈中遇到了一些相当大的障碍 这阻止了
  • Rails 安全:完全避免大规模分配

    我倾向于不需要批量分配 http guides rubyonrails org security html mass assignment我的生产代码中的功能 在我的测试代码中 我经常使用它 但在这些情况下我do想要设置任意列 因此 如果在
  • iPhone 和加密库

    我想我必须在我的 iPhone 应用程序中使用加密库 我想问你有关苹果公司实施的加密货币出口政策的影响 我需要做一些额外的事情吗 例如填写表格等 1 如果我使用 MD5 进行哈希处理 2 如果我使用对称加密 Thanks EDIT 2009
  • 如何绕过Keycloak登录表单直接跳转到IDP登录?

    我正在运行saml 经纪人身份验证 https github com keycloak keycloak tree 3 2 1 Final examples broker saml broker authentication例子 我在 UI
  • ASP.Net 中的不同身份验证方式

    我正在为我的公司开发一个网站 该网站可以在我们的内部网络和互联网上访问 有人问我一些对我来说似乎不可能的问题 但我想在真正说之前问这个问题 我们公司有两种类型的用户 一种是实际在 Active Directory 中注册的用户 等等 拥有
  • 使用内联样式有哪些风险?

    A 内容安全政策 https developer mozilla org en US docs Web HTTP CSP with a default src or style src指令将阻止内联样式应用于
  • 如何在spring-security的SecurityContext中存储自定义信息?

    在我的应用程序中 我使用 LDAP 身份验证 但我还有 2 个远程服务 需要通过登录方法 用户名 密码 进行身份验证 该方法返回安全令牌 这使我能够调用其他方法 即我应该将安全令牌作为第一个参数传递给服务方法 所以我想在使用 LDAP 成功
  • java ee - 使用 servlet 对用户进行身份验证

    我刚刚开始学习java 还没有接触过java ee 我需要使用 servlet 来验证用户身份 请提供示例代码和技术文献 谢谢你 创建一个接受用户名 密码的 html 表单 将这些数据发布到 servlet 在 doPost 中读取这些数据
  • Cakedc.users => 总是重定向到主页

    我在新的 Cakephp 安装上使用插件 CakeDC Users 我有两个控制器 PagesController php CardsController php Pages 有 1 个操作 Beta 它是主页 Cards 有两个操作 索引
  • Windows DPAPI - 如何处理熵?

    我正在使用 Windows DPAPI 来加密一些敏感数据 密码存储在注册表中 这一切都运行良好 但我想知道是否有人可以澄清我对 NET 中 可选 提供给 ProtectedData Protect 的 熵 字节的理解 熵 字节数组似乎类似
  • 通过 URL 指定控制器类与为每个控制器编写一个脚本相比,有何优缺点?

    今年夏天我安装了两个不同的 PHP 系统 每个都使用两种不同的方法 方法 1 每个任务一个 PHP 文件 该方法需要一个PHP为每个主要任务创建文件 例如 我的上传脚本可以通过http www domain com upload php O
  • 让用户渲染自己的 SVG 文件的安全隐患

    我计划让网站用户上传他们自己的 SVG 文档并使用inkscape or svg2pdf 用户要么未经身份验证 要么经历一个简单的注册过程 所以我预计会有一些黑客尝试 我可以采取哪些过滤措施来最大程度地减少安全威胁 Inkscape 似乎并
  • Couchdb - 为读者用户提供的蒲团

    我想知道如何阻止读者访问 couchdb 中的 futon utils 只允许管理员访问 我需要这样做 为什么如果读者用户访问蒲团 他可以看到我所有数据库的名称以及有多少文档 我的应用程序应该让读者只有在知道文档 ID 时才能访问文档 引用
  • PHP Web 应用程序 (Magento) 遭到黑客攻击;这段黑客代码有什么作用?

    我刚刚安装的 Magento 1 3 2 4 被黑了 你能告诉我这段代码的目的是什么吗 另外 如何阻止这种情况以及如何发现漏洞 谢谢 function net match network ip ip arr explode network

随机推荐

  • 如何将 Twitter Bootstrap 工具提示绑定到动态创建的元素?

    我正在使用带有 JavaScript 的 Twitter 引导工具提示 如下所示 a rel tooltip tooltip 我的标记如下所示 a title Not implemented class btn i class icon f
  • 如何使用 Playground 在 Swift 中读取数据并将其写入文本文件? [复制]

    这个问题在这里已经有答案了 我通读了这些SO链接来寻找答案 1 在 Swift 中逐行读取文件 URL 2 从文本文件中读取和写入数据 链接 2 为我提供了解决方案 但问题是目录 默认是当前项目的Document目录 所以如果我想从中读取文
  • XCode 6.3 警告:“myObject”地址不等于空指针的比较始终为 true

    更新到 XCode 6 3 后 编译器开始发出此警告 Comparison of address of myObject not equal to null pointer is always true 这是我的一段代码 挠头 但没有找到任
  • 为什么 quarto 的 pdf 输出中没有显示从属关系?

    In the yaml of a quarto我有的文件 title Hey author name Birdy Bird affiliations University of Birds University of Hummingbird
  • 用于在 iOS 中扫描条形码(代码 39 格式)的免费 SDK [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我想使用 iphone ipad 的相机扫描 Code 39 格式的 VIN 条形码 我尝试了 zxing 和 zbar 但它们效果不佳 大多数时候
  • 应用程序未显示在最近使用的应用程序列表中

    每当我将以下代码放入活动的清单条目中时 我的应用程序永远不会显示在 最近使用的应用程序 列表中
  • 在 OS X 上调试 MacPorts GCC 的问题

    对于使用 GCC 4 7 MacPorts 构建编译的程序 我似乎无法获得可读的调试输出 我尝试过 GDB 6 3 和 GDB 7 3 每个都有自己的问题 尝试使用 GDB 7 3 MacPorts 使用 GDB 7 3 我在启动时得到以下
  • Spark - 读取带有引号的 csv 文件

    我有一个 CSV 文件 其中的数据包含在双引号 中 0001 A 001 2017 01 01 12 0001 B 002 2017 01 01 13 我只想读取纯数据 没有 符号 spark read option encoding en
  • Android Room 一对多关系

    我正在尝试建立一对多关系 我在线检查了各种文章和教程 但所有示例都显示一个表与另一个表具有一对多关系 在我的要求中 我有两个表与另一个表具有一对多关系 检查下图 学生表有来自班级和学校表的 FK 大多数示例通过班级 学生或学校 学生解释一对
  • 此表单不安全自动填充仅在 Chrome 中关闭

    I get this error when trying to fill the form from chrome in my website 这是我提交表格后的结果 这种情况在任何其他浏览器中都不会发生 我需要做什么才能确保表单安全 我已
  • glDrawArrays 与 glDrawElements

    好吧 我仍然在努力让它发挥作用 我的代码的重要部分是 def init self vertices normals triangles self bufferVertices glGenBuffersARB 1 glBindBufferAR
  • Android:跟踪鼠标指针移动

    假设我使用通用鼠标 是否可以在android中跟踪鼠标指针的X和Y坐标 你需要一个OnGenericMotionListener OnGenericMotion MotionEvent me if me getToolType 0 Moti
  • 如何在Python脚本运行时操作图形?

    介绍 因为我来自matlab 我习惯了交互式界面 其中脚本可以在运行时更新图形 在处理过程中 每个图形都可以调整大小甚至关闭 这可能意味着每个图形都在自己的线程中运行 这显然不是这样的绘图库 IPython可以使用magic命令模仿Matl
  • Laravel 无法在 404 错误页面查看用户是否登录

    我创建了一个自定义 404 错误页面 并使用 app layout 来包装它 但这很奇怪 因为当我收到 404 错误页面时 即使我已登录 也会看到登录和注册链接 这是为什么 update 当我登录我的页面并写入不存在的路由时 我得到带有扩展
  • 使用 OpenCV 和 Python 查找数独网格

    我正在尝试使用 OpenCV 检测数独谜题中的网格 但我在最后一步中遇到了麻烦 我猜 我正在做的是 对图像进行下采样 Blur it 应用高通滤波器 双边 使用自适应阈值对图像进行阈值处理 一些膨胀和腐蚀 所有这些给了我以下图像 从现在开始
  • 无法找到哈希字符串“android-25”的目标

    我有 Android Studio 2 2 我正在尝试打开一个项目 但收到错误 无法找到带有哈希字符串 android 25 的目标 在错误消息下方 我看到一个链接 安装缺少的平台和同步项目 如果我单击此链接 我会收到另一个错误 其中显示
  • 使用 VBA 将条件格式应用于一系列单元格

    我想知道如何访问条件格式中标题为 适用于 的列并输入我自己的条件 我提供了一个屏幕截图以供更好的参考 我在条件格式中添加语法的代码是 With Selection FormatConditions Delete FormatConditio
  • 如何解析 Zend URL 中的参数?

    我正在尝试从 ZF REST URL 中提取 GET 参数 这不是当前请求 我不想调用 URL 或执行路由 我只需要参数 我正在寻找像 parse url 这样的实用函数 但适用于 Zend REST 格式 有没有 或者我必须重新发明轮子
  • 如何将我的 swift 1.2 项目迁移到 2.0?

    我有一个项目是在 swift 推出时开发的 但最近 Apple 推出了新版本的 swift 2 0 和 xCode 7 0 那么我如何将我的项目从 swift 1 2 迁移到 2 0 呢 在新的 Xcode 7 beta 中 转到编辑菜单
  • 为什么挑战-响应方法对于忘记密码来说不是一个糟糕的解决方案?

    我的公司正在开发在线人力资源和薪资应用程序 其中安全访问至关重要 我清楚如何锁定大多数身份验证 授权过程 但 忘记密码 页面除外 我最初的计划是要求用户输入电子邮件地址和对先前选择 输入的质询问题的答复 并将临时密码邮寄到列出的电子邮件 假