0x01 漏洞描述 - 手机号重复绑定漏洞 - 许多网站在用户注册时都会要求用户绑定手机号或者邮箱进行注册,通过绑定的手机号和邮箱常用于用户忘记密码时接收验证码来判断是否本人操作。...一般一个手机号限定绑定一个用户账号,如果一个手机号可同时绑定多个账号,可能造成账户信息泄露、账号身份被盗用的风险。...以下是遇到过的一个案例,此处注册用户绑定手机号时没有对手机号进行短信验证。 先注册第一个ceshi123用户,使用手机号137******41绑定该账号。...在使用ceshi456用户密码找回功能时,此案例中只需要填写用户名和绑定手机号,系统就会返回关于此手机号绑定的所有用户信息。...0x04 漏洞修复 禁止同一手机号可被多个账户绑定,限定一个手机号只能绑定一个账户。
最近遭遇了绑定手机号相关的压测需求,有了手机号登录的经验和测试数据,这次算起来比较简单。...最重要的是难点就是要求开发配合调整配置已经在上一期文章:手机号验证码登录性能测试中问题解决了,绑定手机号唯一的难点就是如何在单账号绑定的过程中不断切换手机号,而且保证最后账号的绑定手机号还是一开始的14...业务逻辑: 请求发送验证码接口,发送成功(未绑定的手机号,用户登录状态)可以获取到登录的一个参数traceNo 使用用户登录校验令牌、traceNo、短信验证码、手机号请求绑定手机号接口 基本的校验规则如下...解决方案: 限制条件已经做成可配置,可以随时更改重启服务即可 选中14号段,用户手机号=14+uid 测试环境固定验证码 uid是9开头的,所以单个用户的绑定手机号在149和148之间切换,149为初始状态...,这里并没有使用每次换一个新手机号,第一是怕出现偶然重复,第二是数据维护不容易 测试方案: 将发送验证码和绑定手机号两个接口放在一起压测,需要准备一批测试用户 单个线程绑定一个用户,然后不停地发送验证码和绑定新手机号
导语 偶有奇想,我们可以通过手机号来搜索获取其对应的QQ号,那么,反过来呢? 一.缩小范围 由于手机号属于隐私数据,腾讯QQ并没有直接给出通过QQ号查找对应手机号的接口。...此时,手机号便是所寻找的 三、总结 通过QQ号查询绑定的手机,我们总共用到了两个信息以及一个前提,即QQ号和归属地,前提是QQ号绑定了手机。...第一次更新 在上文中,已经提出了一种通过QQ号来获取绑定手机号的方法,下面将对上文中的不足之处加以补全。...支付宝重置登录密码界面 在上图中,我们可以看到其已经显示了绑定手机号的前三位+后四位。 根据这个方法,由于各个网站“找回密码”的机制不尽相同,我们可以将范围进一步缩小。...通过PS查看照片的位置信息 总结 主要提供了一种进一步缩小范围的思路,以此为基础,我们可以在一小时之内就能确定与QQ号绑定的手机号。
导语 偶有奇想,我们可以通过手机号来搜索获取其对应的QQ号,那么,反过来呢? 一.缩小范围 由于手机号属于隐私数据,腾讯QQ并没有直接给出通过QQ号查找对应手机号的接口。...此时,手机号便是所寻找的 三、总结 通过QQ号查询绑定的手机,我们总共用到了两个信息以及一个前提,即QQ号和归属地,前提是QQ号绑定了手机。...---- 第一次更新 ---- 在上文中,已经提出了一种通过QQ号来获取绑定手机号的方法,下面将对上文中的不足之处加以补全。 ?...支付宝重置登录密码界面 在上图中,我们可以看到其已经显示了绑定手机号的前三位+后四位。 根据这个方法,由于各个网站“找回密码”的机制不尽相同,我们可以将范围进一步缩小。...通过PS查看照片的位置信息 总结 主要提供了一种进一步缩小范围的思路,以此为基础,我们可以在一小时之内就能确定与QQ号绑定的手机号。
小程序API内提供getPhoneNumber借口来获取用户已经绑定到微信的手机号,但需要用户主动触发才能发起获取手机号接口,所以该功能不由 API 来调用; 基本流程如下: 使用方法 需要将 微信绑定手机号登录
从7.4.5版本开始,宝塔安装后首页强制绑定手机号码,虽然没有关闭按钮,但其实只是一个弹窗,并且只在首页提示(不排除之后官方改成其他页面也弹窗),不想绑定的用户可以直接修改面板首页文件即可关闭!...然后找到大概65行左右以下代码 if (bind_user == 'True') { show_force_bind(); } 将True改成其他比如REMOVED,最后保存,然后强制刷新下页面,就不会提示绑定手机了
在进行设置自动转发,增删来信规则,修改密码等操作时,增加必须绑定手机并且验证手机号的安全认证操作.在这个过程中使用控制反转的设计模式封装一个单独的类可以灵活的复用代码和调整逻辑 首先定义一个SecureTel...并且可以直接在配置文件中对这个类里面的属性进行控制,方便在进行业务调整时不去修改类内部的逻辑 上面是在代码层面的设计,下面是在业务的层面介绍一下 1.请求过来后,因为在这个逻辑中是不会有高并发的情况,直接查询数据库绑定手机表...,判定是否已经绑定手机.如果没有绑定手机直接返回对应的错误码 2.绑定了手机情况下,要去memcache查询是否已经验证过了,key就是"c:xxxx@xxxx.com",这个key的过期时间是一天,如果有值...SecureTel类中的一个属性,其他方法对这个属性进行判定 4.在配置文件可以配置验证后的过期时间,这个在测试中可以进行灵活修改,让测试人员短期可以多次测试. 5.前端根据不同的错误码,进行不同的弹窗,绑定手机的弹窗和验证手机的弹窗
android系统是开源的,所以谷歌官方在每发布一个版本的时候都会放出它对应的API源码的,让我们可以深入了解android的API实现过程,这就是开源的魅力。...里面就是对应的你所下载版本的源文件 我们拿4.3来做个例子(android-19 就是对应4.3) 找到目录路径 C:\Users\Administrator\android-sdks\sources...\android-19 之后右击你的项目,选菜单最下方的Properties --- Java Buld Path --- Libraries --- android 4.3 --- android.jar...二:查看对应的support拓展包的源码 下面以android-support-v4.jar为例子 1.先要下载SDK下的android support library,这个里面包含了最新版本的拓展包...我的是support v4的架包源码路径为C:\Users\Administrator\android-sdks\extras\\android\support\v4\src 之后打开你所创建的这个文件
Android DataBinding Framework 在2015年的谷歌IO大会上,Android UI Toolkit团队发布了DataBinding 框架,将数据绑定引入了Android开发,...当时还只支持单向绑定,而且需要作为第三方依赖引入,时隔一年,双向绑定这个特性也得到了支持,同时纳入了Android Gradle Plugin(1.5.0+)中,只需要在gradle配置文件里添加短短的三行...data.defaultVal 事件绑定 严格意义上来说,事件绑定也属于数据绑定的一种。之前我们常在布局内进行的android:onClick="onBtnClick"就可以视作是一种数据绑定。...方便UI复用,Android上进行UI组件化的时候,可以在布局的层次上进行复用,业务无关的UI逻辑也能一起打包,同时保持对外接口(数据模型)简单,学习接入成本更小。...f=27314446 Android Data Binding Library 官方介绍 https://developer.android.com/topic/libraries/data-binding
一个叫做视图绑定(ViewBinding),而另外一个叫做数据绑定(DataBinding)。 1..../android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com..." android:layout_height="wrap_content" android:layout_marginTop="3dp" android...总结 与使用 findViewById 相比,视图绑定具有的优点: Null 安全:由于视图绑定会创建对视图的直接引用,因此不存在因视图 ID 无效而引发 Null 指针异常的风险。...在模块中启用视图绑定后,它会自动应用于该模块的所有布局。 而DataBinding 的优势就在于:布局和数据的双向绑定了。 所以其实我们可以在项目之中同时使用视图绑定和数据绑定。
绑定服务是客户端–服务器接口中的服务器。组件(如activity)和服务进行绑定后,可以发送请求、接收响应、执行进程间通信(IPC)。不会无限期在后台运行。...要提供服务绑定,必须实现onBind()回调方法,该方法返回的IBinder对象定义了客户端用来与服务进行交互的编程接口。 客户端可以通过调用bindService()绑定到服务。...调用时,必须提供ServiceConnection的实现,后者会监控与服务的连接,当Android系统创建客户端与服务之间的连接时,会对ServiceConnection回调onServiceConnected...当实现绑定服务的时候,最重要的环节是定义onBind()回调方法返回的接口。 创建绑定服务 必须提供IBinder,用以提供客户端与服务进行交互的接口。...,重写两个回调方法:onServiceConnected()—系统会调用该方法以传递服务的onBind()返回的IBinder;onServiceDisconnected()—Android系统会在与服务的连接以外中断
用户调用wx.login()方法,获取登录用户凭证code wx.login({ success: function(res) { console.log...
假设在pages/login/login页面我们需要获取绑定微信的手机号,详细操作如下: 1.login.wxml <button open-type="getPhoneNumber" bindgetphonenumber...="getPhoneNumber"> 获取手机号码 目前仅支持通过button组件开放方法获取 2.login.js //获取手机号 getPhoneNumber(e) {...= cloud.database(); exports.main = (event, context) => { const app = new TcbRouter({ event }); //获取手机号码
微信小程序中有许多地方需要用户注册信息的地方,需要填写手机号等。下面给大家分享微信小程序获取手机号授权用户登录功能,有了这个组件可以快速获取微信绑定手机号码,无须用户填写。...微信小程序文档中给出如下示例 获取微信用户绑定的手机号,需先调用login接口。 因为需要用户主动触发才能发起获取手机号接口,所以该功能不由API来调用,需用组件的点击来触发。.../login.png'> 请依次允许获得你的公开信息及手机号码...4 某个详情页手机号授权判断 使用的遮罩层写法 (一)index.html ?...至此获取微信绑定的用户手机号完成!
前言 后台读者留言:能否写一篇视图绑定ViewBinding相关的内容? 首先感谢这位读者的提议,让我抽出时间细看视图绑定的内容,也打算在项目中使用该功能。...直到Android大神 Jake Wharton开源了Butter Knife框架,通过Bind方式绑定获取ViewId。...目前,谷歌在 Android Studio 3.6 Canary 11 及更高版本中加入了新的视图绑定方式ViewBinding。...在gradle文件中开启ViewBinding功能后,编译器就会为此模块下的每个布局文件都产生一个对应的绑定类。...因为在绑定类中已经全部定义好了,开发者直接使用就可以。 ---- 小编整理了一份Android电子书籍,需要的童鞋关注公众号回复:"e_books" 即可获取哦!
[cca85f5f503fad8d8d91dd7bd981b0fe.png] 1.Jetpack简介 手机厂商还没卷完Android 12,Android 13就悄然声息地来了,距离Google 2008...年9月22日发布Android 1.0,已过去13个年头。...Google一直致力于Android生态环境的搭建,为了解决开发碎片化,方便广大开发者,在2018年的 Google I/O大会上推出了全新的Android Jetpack应用开发架构。...Data Binding→数据绑定,可使用声明式将布局中的界面组件绑定到应用中的数据源; Lifecycles→生命周期感知,可感知和响应Activity和Fragment的生命周期状态的变化; LiveData...本节开始折腾,先带来一个超简单的 → ViewBinding(视图绑定)。
前言 后台读者留言:能否写一篇视图绑定ViewBinding相关的内容? 首先感谢这位读者的提议,让我抽出时间细看视图绑定的内容,也打算在项目中使用该功能。...直到Android大神 Jake Wharton开源了Butter Knife框架,通过Bind方式绑定获取ViewId。...目前,谷歌在 Android Studio 3.6 Canary 11 及更高版本中加入了新的视图绑定方式ViewBinding。...在gradle文件中开启ViewBinding功能后,编译器就会为此模块下的每个布局文件都产生一个对应的绑定类。...因为在绑定类中已经全部定义好了,开发者直接使用就可以。 ----
Android EditText输入手机号空格 开发需求是在登录页面的手机EditText中间插入空格,让用户看起来方便点, 130 1234 4567,中间第4个数字和第5个数字空格前面加空格。...* 手机号中间插入空格 */ public class PhoneTextWatcher implements TextWatcher { private EditText editText;...editText.setText(sb.toString()); //移动光标到最后面 editText.setSelection(sb.length()); } } 总结 以上所述是小编给大家介绍的Android...实现 EditText输入手机号空格功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。
今天开始在写带支付版的二手书了,涉及到用户注册信息需要获取手机号,这里有两个办法,第一是购买短信接口,第二是直接小程序开放数据获取手机号。 两者的区别:第一种对小程序没有类型要求,个人的都可以实现。...第二种必须要企业认证小程序才行,但是这种办法一方面可以直接拉取用户绑定微信的手机号,方便操作体验好,还可以使用腾讯自带的短信接口,要省一笔钱。...open-ability/getPhoneNumber.html 通过button设置getPhoneNumber可以直接获取到encryptedData,iv这两个加密参数,但需要进行解密才能进一步获取手机号...}) return; } wx.showLoading({ title: '获取手机号中...; wx.hideLoading() //获取成功,设置手机号码
领取专属 10元无门槛券
手把手带您无忧上云