找回密码

逻辑漏洞之密码重置

蓝咒 提交于 2020-03-16 15:24:22
密码找回验证条件可社工 1 只验证帐号是否存在即可修改密码 2 只验证帐号与邮箱地址是否匹配即可修改密码 3 只验证帐号与手机号是否匹配即可修改密码 密码修改页面可预测 案例介绍: 问题出现在忘记密码处,可以通过手机找回和邮箱找回密码两种方式获得指定帐户的新密码设置权限 进入忘记密码,填写想要获取权限帐号的ID 选择邮箱找回 获得url: 系统已将新密码设置url发送给邮箱 此时只需要将前面获取的url修改一下 即可获得设置该用户新密码的权限 验证码可爆破 案例介绍 乐峰网用户认证体系存在逻辑漏洞,可修改任意用户密码 1 找回密码部分:两种方式,mail和phone,但是验证码都是6位数字,(邮箱)是24小时有效。可以暴力 2 使用后的验证码并未销毁,24小时内可以再次使用,这里就很危险了,只要你找回了密码,24小时内,还可以被修改 攻击方式: 1 提交任意用户的修改密码请求,暴力破解验证码(6位数字,24小时内有效),成功率很客观 2 枚举24小时之内修改过密码的用户,如图: 修改密码未校验用户 案例介绍 万网某管理系统密码找回结构控制不严格,导致可修改此管理系统任意账户密码。 自己新买一个域名要做备案,可惜申请时密码忘记了,故找回密码,收到找回邮件链接如下: 按照提示修改自己密码成功。。 职业病原因,顺手将url中邮箱地址替换成admin@hichina.com修改,悲剧

让注册体验来得更简单点吧

拜拜、爱过 提交于 2020-03-06 13:43:21
我们期望用户能够注册登录,面对复杂的注册流程,很多用户被吓跑。我们能不能把注册设计得更傻瓜? 在注册用户时,通常需要采集的信息有:用户名、密码、验证码、手机号、邮箱、个人信息等。一个完整的注册功能应该考虑到以下几个问题: 有用户名和密码(这不是废话吗,没有怎么登陆?) 有找回密码的途径(例如忘记密码邮箱、手机号) 验证码(防止恶意注册) 用户协议 在设计注册功能时,通常是用户体验与信息采集量、安全性、费用三个方面的权衡,通常是相悖的。 用户体验越好,信息采集量就越少,你不能同时采集一堆个人信息,又让用户具有良好的用户体验 用户体验好,需要在密码设置这块尽量减少用户的输入。为了用户能够密码安全,通常需要两次确认密码、需要隐藏密码、甚至需要规定用户密码必须有数字、字母、字符,这显然增加用户的工作量。 现在越来越多用手机号作为账号,而手机号可以通过短信发送密码,因此用户可以不用输入密码,直接由系统短信分发,每次发送短信都需要支付短信费用,这个开支还是比较高的。 下面我来分析一下用户名、密码和验证码的注册体验。 用户名 通常在用户名这块有这样几种方式:自定义用户名、手机号、邮箱三种。用户名要达到的目的是:简短易记忆、能找回密码。这三种方式各有利弊。自定义用户可以有一个易记的登录名,但必须配合邮箱来找回密码;邮箱便于找回密码,但是太长;手机号兼备两者有点,不算太长、方便记忆、便于找回密码

逻辑漏洞之密码重置

徘徊边缘 提交于 2020-01-16 16:13:28
密码找回验证条件可社工 1 只验证帐号是否存在即可修改密码 2 只验证帐号与邮箱地址是否匹配即可修改密码 3 只验证帐号与手机号是否匹配即可修改密码 密码修改页面可预测 案例介绍: 问题出现在忘记密码处,可以通过手机找回和邮箱找回密码两种方式获得指定帐户的新密码设置权限 进入忘记密码,填写想要获取权限帐号的ID 选择邮箱找回 获得url: 系统已将新密码设置url发送给邮箱 此时只需要将前面获取的url修改一下 即可获得设置该用户新密码的权限 验证码可爆破 案例介绍 乐峰网用户认证体系存在逻辑漏洞,可修改任意用户密码 1 找回密码部分:两种方式,mail和phone,但是验证码都是6位数字,(邮箱)是24小时有效。可以暴力 2 使用后的验证码并未销毁,24小时内可以再次使用,这里就很危险了,只要你找回了密码,24小时内,还可以被修改 攻击方式: 1 提交任意用户的修改密码请求,暴力破解验证码(6位数字,24小时内有效),成功率很客观 2 枚举24小时之内修改过密码的用户,如图: 修改密码未校验用户 案例介绍 万网某管理系统密码找回结构控制不严格,导致可修改此管理系统任意账户密码。 自己新买一个域名要做备案,可惜申请时密码忘记了,故找回密码,收到找回邮件链接如下: 按照提示修改自己密码成功。。 职业病原因,顺手将url中邮箱地址替换成admin@hichina.com修改,悲剧

wordpress忘记密码怎么办?

送分小仙女□ 提交于 2019-12-17 05:18:16
进到数据库 ,然后找到user_pass这个字段,修改相应用户的密码,不过WP使用的是MD5保存密码,所以在数据库里也要填写MD5才行。 可以修改MD5密码为:”5d41402abc4b2a76b9719d911017c592″ 然后回到WordPress登陆页面,使用密码”hello” 登录,然后再修改 ==============原文========= 一直用浏览器保存密码记录密码的,不料这次重装系统,浏览器保存的东西都没了,想登录博客,怎么也想不起wordpress的登录密码了,无奈只得google下解决办法了,还好,一搜就有。 下面是忘记密码后几种解决方法,我是用直接修改数据库密码的了。 1. WordPress内置的找回密码方法 如果你安装wordpress时或之后修改了邮件地址, 那就根据普通的找回密码步骤, 在Wordpress的登录页点击”忘记密码?” 然后输入admin或电子邮箱地址. 接着, 你会收到密码重启邮件, 点击里面的重启链接. 稍后你又会收到一封包含用户名和密码的邮件. 这跟所有的Wordpress用户找回密码的步聚都是一样. 我们下面介绍的另外4种方法, 是指你有可能没有修改admin帐户的电子邮箱, 你也就无法接受密码. 当然这种方法要你的服务器能发邮件才行,我的VPS没架设,所以不能用这种方法,如果你是购买的虚拟主机,一般都有吧。 2.

小组第六次讨论

一笑奈何 提交于 2019-12-05 04:57:29
一、主题: 功能完善 二、时间: 2019/11/21 三、地点: 西街302 四、项目进度 (1)新增用户忘记密码功能:用户可以通过邮箱找回密码。 (2)主要讨论性能需求:    速度:用户和管理员注册账号的反应时间在2s以内,用户查询订单的反应速度在3s以内。   容量:后台能至少存储10万条数据。    实时性:用户可以实时刷新最新的数据来查看电子书是否更新。 五、完成功能点 (1)完成了忘记密码的功能。 (2)完成了各个界面的链接,使各个网页串联起来。 六、小组讨论照片 来源: https://www.cnblogs.com/2019Soft/p/11908014.html

JavaWeb

对着背影说爱祢 提交于 2019-11-29 19:31:20
动态网站:注册,登录,修改密码,修改资料,找回密码。 主页面:包含登录,注册,修改密码和找回密码按钮。 <!DOCTYPE html> <html> <head> <meta charset = "UTF-8"> <title>登录页面</title> <script language = "javascript"> function check() { if(form1.user.value == "" || form1.user.value == "请输入用户名") { alert("用户名不能为空"); form1.user.focus(); // 光标自动跳到用户名栏 return ; } if(form1.pwd.value == "") { alert("密码不能为空"); form1.pwd.focus(); // 光标自动跳到密码栏 return ; } if(form1.user.value.length < 3 || form1.user.value.length > 8) { alert("用户名长度应为3--8位"); form1.user.focus(); return ; } if(form1.pwd.value.length < 5 || form1.pwd.value.length > 15) { alert("密码长度应为5--15位");

django项目中使用邮箱找回密码功能

冷暖自知 提交于 2019-11-27 13:43:57
本文使用qq邮箱,需要登录邮箱,在设置-账户里面开启SMTP服务,要记下授权码 前端html {#找回密码的表单#} <form action="" method="post" id="login"> {% csrf_token %} <input type="text" class="name" name="member_name" Placeholder="Username" required=""/> <input type="text" class="email" name="member_email" Placeholder="email" required=""/> <div class="login-agileits-bottom"> <h6><a href="javascript:;" type="button" id="onsubmit">提交</a></h6> </div> </form> {#找回密码的表单结束#} 前端js {# 找回密码的jquery #} $(document).ready(function () { $('#onsubmit').click(function () { $.post('/blog/findpwd/', $('#login').serialize(), function (data) { if (data['status'