【企业安全】企业安全项目-前端绕过专项整改

前端绕过专项整改是我加入公司后,参与的第一个“伤筋动骨”(涉及底层逻辑设计,影响整个公司业务)类安全项目,也差不多是公司内部自己开展的第一个影响范围广的业务相关安全项目。当时项目已经进行到安全逻辑设计尾声,即将开始对底层业务实现逻辑动工改造,以及开展接下来的排期验证工作。这里所指的前端安全,听上去像是关于JS、HTML5等方面的安全,但其实不然,实则是一些关于会员体系方面业务逻辑漏洞的整改。

1、总体概况

会员部门为公司的各业务线提供账号相关的基础服务,统一编写用户注册、登录、修改登录密码、忘记登录密码、忘记支付密码……等常见功能接口,业务方开发拿到开发文档后在自己的业务场景中进行调用。如果会员将这些接口进行改造的话,影响范围较广,所以推动起来的难度是比较大的。

由于是中途入职加入项目组,所以之前同事与业务方的斗志斗勇没能看到。不过据说在组织各业务线开发leader第一次开会的时候,请来了公司的CTO坐镇,想必这也是项目得以顺利开始的至关重要因素。整个项目大致经过了以下9个阶段:

2、风险评估

在对多个业务进行安全测试时,发现普遍存在常见的逻辑绕过漏洞,且部分接口甚至泄露敏感信息,经过梳理总结出有以下类型:

主 题

【安全】【高危】忘记密码通过修改中间响应结果,可以绕过手机验证码设置密码

【安全】【高危】忘记密码实现逻辑有问题,当前所有忘记密码操作可以绕过

【安全】【高危】APP通过修改服务器响应结果返回到前端,可以绕过验证码

【安全】【高危】忘记密码操作绕过图片验证码能获取到敏感信息

【安全】【高危】忘记密码流程中敏感信息泄露

【安全】【高危】验证码绕过

【安全】【中危】忘记密码业务逻辑存在漏洞,导致遍历用户名、email等信息

【安全】【中危】注册场景应在验证码校验以后再判断手机号是否被使用

【安全】【中危】余额变动短信关闭时可以绕过支付密码校验

【安全】【中危】短信验证码及图片验证码绕过漏洞

【安全】【中危】绑定手机号可以前端绕过

【安全】【中危】签入无防暴力破解机制

经过梳理总结出以下存在安全隐患的业务场景,包括但不仅限于:注册、登录、忘记/找回/重置密码、修改密码(用户登陆后)、更绑邮箱、更绑手机号等。

3、项目推进

根据对业务线进行安全测试、与业务负责人对接、与会员相关设计人员沟通,结合漏洞的威胁程度(高危优先,敏感信息泄露重点关注)与对业务的影响(主要考虑业务的迭代更新与发布日期),将涉及到的相关接口进行归档并排期整改。

4、问题集锦

# 该部分来源,参考同事编写的项目总结。

在进行改造前,已经尽可能的想到从影响业务最小的角度出发,但是一些开发甚至产品并不清楚自己产品的接口使用情况,导致出现部分影响业务的现象,其原因可以归纳为:

1) 业务开发未严格按照接口文档中提供的接口和流程来调用整改后的接口,导致接口中新增的安全功能未起效,影响项目进展。

2)业务开发在其他未知场景中调用了下线接口,导致应用中某功能无法正常使用,或涉及到预下线接口无法正常下线,影响项目进展。

此次项目中涉及到两种类型的端(pc & app),pc端好操作易整改,app端只能做强制。但在升级时,各业务时间并不能统一安排,需要统计老用户使用情况,比如要求月活跃用户升级占比90%,才能从生产正式下线,这就需要安排一个过渡过程。

5、总结反思

这应该算是一个大家不太愿意推动,但是企业安全建设必经之路的项目。因为它涉及业务底层逻辑,牵一发而动全身,几乎所有业务均需要跟着变动,项目难度较大。在项目之前,需要花功夫费心思去发现问题,总结梳理,说明危害,如果项目开展将长期稳定对业务保驾护航……同时需要从ROI角度去谈并取得技术boss的支持。在推动的过程中,困难与意外重重是不可避免的,但有了领导的支持,项目才能继续往前进行。

原文发布于微信公众号 - 我的安全视界观(CANI_Security)

原文发表时间:2018-03-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SAP梦心的SAP分享

为什么我会认为SAP是世界上最好用最牛逼的ERP系统,没有之一?

为什么我认为SAP是世界上最好用最牛逼的ERP系统,没有之一?玩过QAD、Tiptop、用友等产品,深深觉得SAP是贵的有道理!       一套好的ERP系...

2288
来自专栏携程技术中心

干货 | 携程安全自动化测试之路

作者简介 陈莹,携程信息安全部安全开发工程师。2013年加入携程,主要负责各类安全工具的研发,包括线上日志异常分析,实时攻击检测, 漏洞扫描等。 一、背景 业...

2806
来自专栏FreeBuf

如何写好一篇漏洞报告(国外篇)

如何写好一篇漏洞总结报告,这一直都是一些应用开发公司经常忽略的重要事情,一篇好的漏洞总结报告可以有效帮助开发人员,减少寻找和解决漏洞的时间。 接下来我就开始讲述...

3647
来自专栏FreeBuf

QQ蠕虫的行为检测方法

作者 Nandisec 选题背景 QQ蠕虫是一种利用QQ等腾讯公司相关产品进行传播的一种特殊蠕虫,该蠕虫的基本原理是利用了QQ帐户的快速登录机制,只要当前...

1768
来自专栏开源项目

世界杯阵型之争的背后,国产开源项目百花争艳 | 码云周刊第 77 期

1493
来自专栏网络安全防护

墨者安全分享:CC攻击的变异品种--慢速攻击

对网络安全有过一定了解的人肯定都听过DDOS攻击和CC攻击,DDOS主要针对IP攻击,CC攻击主要是用来攻击网页的,两者都是通过控制大量僵尸网络肉鸡流量对目标发...

963
来自专栏ThoughtWorks

登录工程:现代Web应用中的身份验证技术|洞见

“登录工程”的前两篇文章分别介绍了《传统Web应用中的身份验证技术》,以及《现代Web应用中的典型身份验证需求》,接下来是时候介绍适应于现代Web应用中的身份验...

2687
来自专栏Bug生活2048

.net core项目实战之回顾总结

项目需求其实很简单,类似于一个简单的审批+简单的任务管理系统,但需要同时有PC端和APP端。

961
来自专栏大数据文摘

资源 | 被GitHub和微软伤了心?这有9个开源代码版本控制系统

事实上,当前有很多GitHub的替代解决方案,能为你做分布式版本控制(DVCS)。下面就来看看有哪些替代工具。

833
来自专栏SEO

什么是HTTP / 2,它如何有益于SEO?

2656

扫码关注云+社区