Zenly是Snap公司的一款社交应用程序,它可以使用户在地图上实时看到朋友和家人的位置,但是它包含了一对漏洞,该漏洞可能会对被追踪者造成危害。
据Checkmarx安全研究小组称,这些漏洞分别是一个用户数据泄露漏洞和一个账户接管漏洞。现在两者都已打上了补丁,用户应将他们的应用程序及时升级到最新版本,避免受到影响。
揭秘电话号码
第一个漏洞是一个中等严重程度的漏洞,它会暴露用户的电话号码。
研究人员在星期四的帖子中解释说,当向用户提交添加好友请求时,无论该请求是否被接受,Zenly都将会允许攻击者访问他们的电话号码,为了获得这些信息,恶意攻击者只需要知道他们的用户名。
他们补充说,获取用户名比想象的要容易,因为Zenly暴露了一个用户详尽的朋友名单。
至于攻击在实践中如何进行,Checkmarx提供了一个网络攻击者针对CEO进行攻击的假设。
研究人员说,攻击链的步骤包括以下内容:
在网上搜索该公司的员工,并试图获得他们的社交媒体账号(例如,在Twitter上)。
在通信或营销领域工作的员工通常更容易暴露,也更容易成为被攻击的目标。
在Zenly上检查他们的账号是否有效。
通过Zenly访问他们的朋友名单,获得CEO的账号。
通过他们的用户名,利用该漏洞获取CEO的电话号码。
利用CEO的电话号码,进行鱼叉式钓鱼攻击。
而且,攻击者还可以重复这些步骤,获得其他员工的电话号码,从而可以进行一次更精准的攻击。
漏洞解析
Checkmarx称,该漏洞其实是利用了 "按用户名添加 "的功能,该功能只需要使用一个已知的用户名。
然后,我们可以制作一个能够拦截和解码网络请求的环境,实时查看网络活动的数据,查看在搜索用户名期间发生的请求。
通过观察在/UserPublicFriends端点上执行的请求的响应,可以看到一个朋友列表,尽管它没有显示在应用程序的用户界面上,但是这个列表中包含了用户的每个朋友,其中一个是Bogus_CEO(模拟的CEO,用于演示)。请注意,响应的内容还包含了他们的用户名。同样,反过来还可以利用这个过程,获得他们的朋友名单。
研究人员表示,一旦确定了目标用户名,同样可以通过一个名为 "按用户名添加 "的功能获得相关的电话号码,然后点选"添加为好友"按钮。
他们补充说,这个朋友邀请将会对/FriendRequestCreate端点发起请求,其响应包含我们用户和目标用户的具体信息,请注意,该响应同时包含了我们的电话号码和目标用户的电话号码,尽管我们的朋友请求从未被目标用户接受。
账户接管漏洞
第二个漏洞也被评为中等严重危害程度。该漏洞允许攻击者像合法用户一样访问用户的位置、通知、对话和朋友的信息。
Checkmarx称,该漏洞存在于用户认证流程中,该认证过程使用了包含验证码的短信来验证会话。
短信发送给用户后,应用程序会调用/SessionVerify端点,同时使用会话令牌和通过短信收到的验证码。
研究人员解释说,攻击者可以滥用/SessionCreate端点来窃取会话令牌。一旦有合法用户验证了该会话令牌的短信代码,该会话将对合法用户和攻击者都有效......这意味着攻击者现在对合法用户的账户拥有一个有效的会话,尽管攻击者从来不知道验证码。
该漏洞只被评为中等的原因是,仅仅利用该漏洞,还是很难进行攻击的。攻击者需要知道受害者的手机号码(可以通过第一个漏洞)。他们还必须知道受害者何时登录、注册、注册新设备或因任何其他原因通过认证流程。
本文翻译自:https://threatpost.com/zenly-bugs-account-takeover/178646/如若转载,请注明原文地址