插件简介 作为一个博客程序,Typecho竟然没有密码找回功能,可以说很是意外!也有很多网友对这个功能进行过增加,但大多需要对内核代码进行修改,这样对以后的升级很不友好。...插件功能很简单,就是一个密码找回的功能,同时考虑到smtp发信的丢信率等因素,将邮件发送改为了使用SendCloud进行发送。...功能说明 自动在login.php页面增加找回密码链接 后台可对SendCloud发信信息进行配置 可设置重置密码链接过期时间 使用说明 上传插件 激活插件 申请SendCloud账号并创建域名、修改NS...在后台发送设置中新增发信域名,填入要作为发信的域名,建议为mail.domain.com格式,如:mail.usebsd.com 根据SendCloud的要求到域名NS处新增TXT、MX解析,等待SendCloud...发送设置中点击左侧API User,并创建一个API_USER,类型选择触发,域名就为刚才创建的域名,记录下API_USER及API_KEY。
链接: https://pan.baidu.com/s/16S6LdxpfzhOmIiF_cbwLnA 提取码: st4g
在逻辑漏洞中,任意用户密码重置最为常见,可能出现在新用户注册页面,也可能是用户登录后重置密码的页面,或者用户忘记密码时的密码找回页面,其中,密码找回功能是重灾区。...@yeah.net 进入密码找回全流程,输入图片验证码后提交: ?...普通用户的邮箱字典方面,把国人常见姓名拼音 top500 结合常见邮箱后缀(@qq.com、@163.com 等等)快速生成个简单邮箱字典;内部员工的邮箱方面,我从该网站域名注册信息查询到联系人为 omegait...案例二:可枚举无密保的用户名,导致任意密保答案均可重置密码 在密码找回页面 http://www.hzpzs.net/u_findPassword.asp 输入有效用户名 yangyangwithgnu...二是,用户名存在但未设置密保问题,应答类似: ? 三是,无效用户名,则应答类似: ?
在逻辑漏洞中,任意用户密码重置最为常见,可能出现在新用户注册页面,也可能是用户登录后重置密码的页面,或者用户忘记密码时的密码找回页面。其中,密码找回功能是重灾区。...登录邮箱查看网站发过来的密码找回邮件: ? 发现两者一致,那么,几乎可以确认服务端将密码找回的校验码泄漏至客户端,可导致任意账号密码重置问题。 尝试找回普通账号的密码。...从该网站的域名注册信息中找到联系人的邮箱为 fishliu@xxxx.cn,可推测后台用户的邮箱后缀为 @xxxx.cn,所以,用常见后台用户名简单调整可构造出后台用户邮箱字典,枚举出大量后台用户: ?...获取有效用户名对应邮箱。密码找回首页提交的请求中,user_name 与 email 参数匹配情况下,HTTP 应答代码为 302,交互包如下: ? 可以此特征枚举有效用户名及其邮箱。...输入用户名、密码提交,正常完成密码找回逻辑,从交互包中获取服务端下发的重置 token: isVerify=Y2hlbmNodWFufGNoZW5jaHVhbkBxcS5jb218MTE2MDIzNw=
什么是密码找回漏洞 利用漏洞修改他人帐号密码,甚至修改管理员的密码。...1.用户凭证暴力破解 1.1 密码找回的凭证太弱,如只需要填入一个四位或者六位的纯数字,就可以重置密码,导致可以暴力破解。...) 2.3 返回短信验证码 3.邮箱弱token 3.1 时间戳的md5(Unix时间戳) 3.2 用户名 3.3 服务器时间 4.用户凭证有效性 4.1 短信验证码 4.2 邮箱token...,在密码找回时注意抓包查看所有url返回响应等,看是否有最终的凭证出现,这样就可以绕过手机或者安全邮箱了) 9.2 发送短信等验证信息的动作在本地进行,可以通过修改返回包进行控制 10.注入 10.1...在找回密码出存在注入漏洞 11.Token生成 11.1 Token生成可控 12.注册覆盖 12.1 注册重复的用户名(比如注册A,返回用户已存在,把已存在的状态修改为可注册,填写信息提交注册,就可以覆盖
f 其他系统 官方说明文档:https://www.vultr.com/docs/boot-into-single-user-mode-reset-root-password Vultr(其他服务器)密码找回
vue + flask实现邮件密码找回功能 跟大家聊聊前后端分离情况下的密码找回功能,针对vue+flask的实现在Google上搜索并没有一个很明确的文档,所以在此记录下自己的操作经历。...密码找回的逻辑 ?...引用链接 [1] 密码找回逻辑图片: https://dev.to/paurakhsharma/flask-rest-api-part-5-password-reset-2f2e
攻击者可以此获取关键信息和重要功能,如,登录失败的报错信息可判断出是否因账号不存在所致,可被利用枚举有效账号,比如,登录试错无次数限制,可导致暴破密码,又如,注册流程各步骤未严格关联,导致批量注册任意账号,再如,密码找回功能各步骤未严格关联...useragent-switcher(https://mybrowseraddon.com/useragent-switcher.html)扩展,模拟手机终端进行访问;当然,其他手段也可考虑,你可以通过子域名枚举工具.../User/register 输入未注册过的手机号点击“获取验证码”后、输入收到的短信验证码后提交,进入密码设置页面: 输入密码后拦截请求: 简单分析发现,register_mobile 为注册的用户名...比如,系统本来只允许用手机号当用户名进行注册,利用该漏洞,可以创建账号 yangyangwithgnu/abcd1234,登录确认: ---- 任意账号密码找回 密码找回页面 https://www.xxxx.com...---- 防御措施 通常来说,密码找回逻辑中含有用户标识(用户名、用户 ID、cookie)、接收端(手机、邮箱)、凭证(验证码、token)、当前步骤等四个要素,这四个要素必须完整关联,否则可能导致任意账号密码找回漏洞
:site:域名 intext:管理|后台|登陆|用户名|密码|验证码|系统|帐号|admin|login|sys|managetem|password|username 查找可注入点:site:域名...inurl:aspx|jsp|php|asp 查找上传漏洞:site:域名 inurl:file|load|editor|Files 找eweb编辑器: site:域名 inurl:ewebeditor...|editor|uploadfile|eweb|edit 存在的数据库:site:域名 filetype:mdb|asp|# 查看脚本类型:site:域名 filetype:asp/aspx/php/jsp...尝试用弱口令和默认密码去登陆发现并没有成功,看见还有注册跟密码找回模块去看看。 ? 先看密码找回需要教师或者学生编码和预留邮箱,我收集的时候并没有收集到相关的邮箱信息所以我放弃这个模块。 ?...四大步骤-填写用户名-验证身份-填写新密码-完成 ? 看见那个红色星号又兴奋既紧张,我觉得这个开发很不严谨,只要学号配合名字就能直接验证身份。那你那些条条框框有啥用呢。 ?
1.2常规性质资产收集 基本的资产收集方式:子域名枚举、端口扫描、路径扫描、旁站c段查询 子域名 子域名爆破: sublist3r、subdomainsBurte、DiscoverSubdomain、layer...子域名挖掘机 ?...3.逻辑漏洞 任意用户注册、密码重置、密码找回 3.1本地验证、修改返回包 1)获取验证码后任意输入一个验证码 ? 2)抓包放行,得到的返回包如下 ?...参数值 假如找回需要4部,最后一部有user参数,用自己账号正常到第三部,第四部修改user实现 4.支付逻辑漏洞 5.步骤,可跳过步骤 酒店.. 6.爆破、枚举 撞库,登陆时无验证码且可无限被尝试,用户名验证时有无用户名错误回显...、密码可被爆破 无验证码,验证码不刷新,验证码4位过于简单无尝试次数限制可被爆破、 枚举注册用户 输入用户名,发送请求验证用户名是否正确(若返回次数限制,可测试服务端未限制高频访问) 登陆失败有次数限制
01 密码找回 认证中心绕不开的话题 Architecture Design....开源这么久了,一直没有机会去处理密码找回这个需求,官方当然也提供了各种扩展方法,但是这些扩展都不是最重要的,那找回密码什么是最重要的呢?——答案就是服务器和客户端的通讯。...常见的密码找回很简单,要么发短信,要么发邮件,只有这样才能保证信息的安全和稳定性,但是我毕竟没有这些额外的付费服务。...当然还有其他的办法,就是使用类似对接QQ、微信、GitHub、Google这种第三方认证平台做个二次登录,来保证唯一性,把密码找回转嫁到第三方平台上,这种方案我个人感觉不太喜欢,既然自己已经做认证平台了
密码找回逻辑含有用户标识(用户名、用户 ID、cookie)、接收端(手机、邮箱)、凭证(验证码、token)、当前步骤等四个要素,若这几个要素没有完整关联,则可能导致任意密码重置漏洞。...密码找回页面 https://my.xxxx.com/pwd,用攻击者账号 yangyangwithgnu 走完密码找回全流程。 输入用户名和图片验证码后提交: ?...验证为有效用户名后,系统提供手机、邮箱两种密码找回方式,选用邮箱方式: ? 登录邮箱查收重置验证码: ? 输入重置验证码: ? 进入新密码页面,输入后提交,拦截请求如下: ?...密码找回页面 http://www.xxxx.cn/getpass.html,用攻击者账号走完密码找回全流程,涉及三步请求,依次为:验证用户名是否存在、获取短信验证码、提交短信验证码和新密码。...另外,密码找回逻辑中含有用户标识(用户名、用户 ID、cookie)、接收端(手机、邮箱)、凭证(验证码、token)、当前步骤等四个要素,这四个要素必须完整关联,否则可能导致任意密码重置漏洞。
IP 爆破子域名: 主动式 layer子域名挖掘机(字典要自己丰富) http://z.zcjun.com/(在线子域名挖掘) fuzzdomain 很好用,速度快 被动式 搜索引擎拿子域名、旁站(同...IP网站)、C段: 可用搜索引擎语法查询子域名: 谷歌、百度、bing、搜狗(搜索微信文章)、雅虎等略有差异 详细用法: (1)site: =主域名,搜索其主要域名下面的子域名 (2)allintext...,查看最后设置新密码页面的 URL,记录下来继续返回密码找回处,输入其他用户名,提交找回申请,直接访问上面记录下的修改密码页面,成功修改密码也可以正常流程下,修改密码页面抓包,修改其中的 USERNAME_COOKIE...,例如 admin,相当于修改了密码 同一浏览器,首先输入自己的账户进行邮箱密码找回,进入邮箱查看链接,接着输入他人账户,进行密码找回,返回刚刚自己的邮箱点击链接,由于 session 覆盖导致了,这个链接成为了修改他人密码的链接...,成功修改他人密码 尝试正常密码找回流程 选择不同的找回方式,记录所有数据包 邮箱找回密码 根据密码保护问题找回密码 根据手机号找回密码 分析数据包,找出敏感部分 分析后台找回机制所采用的验证手段 修改数据包进行验证是否存在密码找回漏洞
密码找回逻辑漏洞 密码找回逻辑测试一般流程 首先尝试正常密码找回流程,选择不同找回方式,记录所有的数据包 分析数据包,找到敏感部分 分析后台找回机制采用的验证手段 修改数据包验证推测 常见思路及案列 用户凭证...(验证码)暴力破解 验证码为4位&6位的数字 在返回请求中已包含凭证 url返回验证码及token例子 使用查看元素或者burpsuite查看返回包 本地进行凭证比对 密码找回凭证在页面中,当比对成功才会进行发起请求...进行本地比对 邮箱弱token 通过修改返回的token中加密的uid值,间接修改其他用户密码 Vc=参数后面的是md5加密,解密后得到的是uid,然后通过修改uid转md5后即可任意修改密码 用户名...username值改为其他id 邮箱token未绑定 找回密码链接发送到邮箱内,查看连接,直接填写上用户ID和邮箱地址即可更改密码 自己邮箱绑定其他用户id 服务器验证返回账户名 找回密码处填写正确邮箱得到用户名...,输入自己的手机号,获取一条短信认证码 chrome浏览器在接下来的页面中审查元素,将hidden的form中找到自己的手机号,并改为目标手机号即可 本地验证 点击忘记密码,输入用户名admin,选择手机找回
我们在root权限下,使用命令: usermod -l new_user_name old_user_name 即可更改用户名。 usermod的具体用法可以通过usermod –help查看。...同样在root权限下,使用命令:hostname -v new_host_name来更改域名。 hostname的具体用法可以通过hostname –help查看。
1.尝试登录 打开网页,看到一个登录,尝试点击 2.发现提示 Unknown host 3.因为刚开始是用 IP 访问的网站,点击登录按钮为域名访问该网站,猜测可能使用域名访问不了,于是把域名改为IP加上后......1.尝试登录1.打开网页,看到一个登录,尝试点击2.发现提示 Unknown host3.因为刚开始是用 IP 访问的网站,点击登录按钮为域名访问该网站,猜测可能使用域名访问不了,于是把域名改为IP...不管了,直接掏Burp跑一下7.从1跑到1111,后面又试了11111,111111等数字也没跑出来8.尝试跑用户名,最终跑出两个账号 cs , test9.使用test账号进行密码找回,这一看就是乱打的
1.尝试登录 打开网页,看到一个登录,尝试点击 2.发现提示 Unknown host 3.因为刚开始是用 IP 访问的网站,点击登录按钮为域名访问该网站,猜测可能使用域名访问不了,于是把域名改为IP加上后...... 1.尝试登录 1.打开网页,看到一个登录,尝试点击 2.发现提示 Unknown host 3.因为刚开始是用 IP 访问的网站,点击登录按钮为域名访问该网站,猜测可能使用域名访问不了,于是把域名改为...不管了,直接掏Burp跑一下 7.从1跑到1111,后面又试了11111,111111等数字也没跑出来 8.尝试跑用户名,最终跑出两个账号 cs , test 9.使用test账号进行密码找回,这一看就是乱打的
审查密码找回功能。...访问密码找回页面: ? 拦截密码找回的请求: ? 从应答描述可知,提示该用户不存在,重发几次,结果相同,说明图片验证码未生效,好了,第一个洞,用户名可枚举。...对于强口令的暴破,我习惯围绕用户名,制作具有社工属性的密码字典,如,用户名 nana,社工属性密码可能为 NaNa、na520na、nana@19901015。如何生成社工属性密码字典?...用 admin 进入密码找回流程,先顺利通过服务端用户名是否存在的校验,然后向该账号绑定的邮箱地址发送密码重置 URL,请求如下: ?...第一段解码看到 JWT,第二段解码发现用户名,第三段因下划线导致解码失败。 原来是 JWT 啊!
验证码处的逻辑漏洞在密码找回处存在一样适用 修改发送的验证的目标为攻击者的邮箱或手机 session覆盖 弱token爆破 密码找回流程绕过 避免业务逻辑漏洞 在系统生命周期里引入威胁建模可以带来如下方面的好处...逻辑漏洞主要产生的位置 1.登录处 2.业务办理处 3.验证码处 4.支付处 5.密码找回处 登录处存在的逻辑漏洞 1.可以暴力破解用户名或密码: 没有验证码机制,没有根据用户名限制失败次数...,没有根据ip限制失败次数等等 通常思路: 直接拿密码字典爆破某一个用户名 拿固定的弱口令密码,去跑top xxx的用户名 如果只是用户名限制失败次数,可以使用思路2的方法 在存在返回提示用户名错误或者密码错误的情况下...,可以分别爆用户名和密码 常见限制: 有时候会发现用户名或者密码是密文加密,这时可能是通过前端或者其他方式加密,对于简单的来说base64编码和md5的签名是很好识破的,在爆破的时候可以选择encode...验证码处的逻辑漏洞在密码找回处存在一样适用 修改发送的验证的目标为攻击者的邮箱或手机 在找回密码处,如果字段带上用户名,校验的邮箱或者手机号,将邮箱或者手机号改为自己的,如果自己的能够收到验证码并重置密码
领取专属 10元无门槛券
手把手带您无忧上云