前言

本周一(2019.07.22),给某知名手机“大厂”提了个安全BUG,默默修复了后,周五回复我“已忽略”,此处省略上千字的心理活动.....

做安全的朋友说这都小事,国内氛围本来就不太好,hackone就不会这样。

今天周六写些文时,既然安全问题已修复,那直接发文也不存在什么问题,但是,

写文过程中抓包补图,发现安全问题修复只是表象,文章写了一半,发也不是不发也不是...

斟酌再三,做事哪有做一半的道理,于是写完了本文,图片全部打码处理,交流为主提高大家的安全意识。

如有此文有不妥之处,请联系我删除。

一、安全漏洞

不废话,先说这个安全漏洞:

  • 漏洞:无鉴权可随意上传任何图片url,图片链接可分享他人访问

[图1]

  • 危害:

  1. 上传什么微商营销图片,以官方名义分享传播,确为官方地址,用户上当受骗几率倍增,损害官方权威与公信力;
  2. 上传政治敏感类(反D,反G)的图片,并被传播,则是对企业是致命的;
  3. 上传点小黄图...
  4. 竞争对手,上个图造个谣,发点假消息..
  5. 说到底就是一个免费图床,你能想通过图达到的目的基本都可以。

[图2]

  • 解决方案:

  1. 方案一,增加鉴权:上传需要鉴权操作
  2. 方案二,隔离外网访问:如是只是内网测试,建议隔绝外网访问,内网通可以vpn异地访问

因不确定其URL的作用,只是浅显的给了两个最基本的建议。

  • 官方答复:

[图3]

  • 我认为的漏洞状态:Open (2019.07.27)

  1. 仅屏蔽了原来上传WEB页面URL访问
  2. 上传图的API接口仍可以随意上传

但我也不会去提BUG,就这样喽,拉黑大厂,哈哈哈,总结请见第三节。

二、事件经过

  • 周一:发现漏洞

  1. 手机收到推送消息“测试链接”(请见下图4)
  2. 测试长期养成的好奇心,手痒点击通知,自动安装了其官方某APP
  3. 玩了一下乏味,自已的测试习惯,用抓包工具玩一玩
  4. 所有请求都是https的,手机就算装了Fiddler证书,APP操作过程也会提示证书不安全,安全意识很高哈
  5. 花3分钟遍历了一下界面,发现个URL,WEB打开显示“内销xxx测试图片上传”界面...(请见图1)

[图4]

  • 周一:反馈平台

  1. 谨慎上传了多张图片,WEB上传,API接口上传都成功... [一脸蒙逼图]
  2. 在朋友的指导下,将漏洞整理后,通过SRC平台反馈官方 (请见图1)
  3. SRC平台漏洞进度:待审核
  4. 发现BUG的喜悦,让一天的心情都变得很美妙
  • 周二:官方第一次修复

  1. 周二查看,已发现官方屏蔽了WEB上传的入口
  2. SRC平台漏洞周二进度:待审核

[图5]

  • 周三:官方第二次修复

  1. 周三官方又进行了修复
  2. SRC平台漏洞周三进度:待审核

 [图6]

  • 周四:漏洞已修复,进度待审核

  1. SRC平台漏洞周四进度:待审核

 [图7]

  • 周五:漏洞已修复,拜拜了您

  1. SRC平台漏洞周五进度:已忽略
  2. 漏洞什么漏洞,不存在的,您开什么玩笑

 [图8]

 [图9]

三、事件思考

  • 我的测试习惯:

  1. 追根问底的习惯,当然也会因时间关系错过很多BUG,所以一直在提升自我能力与视野同时,定期深入测试一线,以保持发现BUG的能力,所以才有我在写本文过程中发现,安全问题其实根本没有真正修复。
  2. 截图或留日志的习惯,此文中大部分图是在测试时习惯性的保存,所以此文整理没有花费太多时间,有图有证据,谁都别想甩锅给测试小伙伴。
  3. 多次验证结果的习惯,问题出现大部分是偶然,必现步骤与必现环境,需要不断求证自己新的假设,在条件允许的情况下尽量不放过一处BUG。
  4. 延迟满足的习惯。
  • 安全意识:

  1. 几年前我对安全的较浅的认知,《浅谈MITM攻击之信息窃取(解密315晚会报道的免费WIFI窃取个人信息)  》https://www.cnblogs.com/findyou/p/5285900.html
  2. 安全问题依旧是人的问题,从未变过:关键岗位人员安全意识薄弱,能力受限与视野窄,决策失误。
  3. 内部测试URL的泄漏,与安全问题响应时间,侧面反应,某厂的管理混乱,流程繁琐。
  4. 一定程度反应,某厂安全平台负责人在安全意识,可能跟我水平不相上下,真的很菜,指哪动哪,完全不去思考延伸,业务关联等,仅修复了表面问题,深层次即鉴权的问题,完全没管。
  • 如保规避此类安全问题:

  1. 内部测试URL、工具等,严禁外网访问
  2. 内部所有访问与操作,理应配相关权限,SSO管理也是不错的选择
  3. 新员工安全培训,不应该限于代码安全,配置安全,对弱密码、社工相关的也应提供相应的培训
  4. 定期评估关键岗位人员能力,以实操为主,排除仅是PPT的能力
  5. 系统、代码等常规漏洞,管理、流程等漏洞也是需要定期评估
  6. 建SRC平台,提供给白帽反馈的渠道,如何激励是关键,不然就如同某厂....嗯,我居然能排在第68位
  7. 有能力则邀请专业人员定期做安全评估。

附:

1、Android抓包方法(一)之Fiddler代理

2、Android抓包方法(二)之Tcpdump命令+Wireshark

3、Android抓包方法(三)之Win7笔记本Wifi热点+WireShark工具

4、浅谈MITM攻击之信息窃取(解密315晚会报道的免费WIFI窃取个人信息)

转载说明

本文为原创文章,如需转载,请在开篇显著位置注明作者Findyou和出处

给国内知名大厂提BUG有感:安全是一种意识的更多相关文章

  1. 十家国内知名的EDM服务提供商

    国内的EDM服务商多若繁星.下面博主为大家介绍十家国内知名的EDM服务提供商. 一.Webpower 威勃庞尔. 官方网站是:www.webpower.asia.作为全球领先的邮件营销解决方案提供商, ...

  2. 提bug

    大多数公司都是用bugzilla来管理bug,也有的公司使用内部开发的bug管理平台.这里以bugzilla为例,我最不爽的是提bug的时候既要选择severity(严重级别)又要选择priority ...

  3. 知名大厂如何搭建大数据平台&架构

    今天我们来看一下淘宝.美团和滴滴的大数据平台,一方面进一步学习大厂大数据平台的架构,另一方面也学习大厂的工程师如何画架构图.通过大厂的这些架构图,你就会发现,不但这些知名大厂的大数据平台设计方案大同小 ...

  4. 关于提BUG的一点思考以及工作中总结的规范

    在测试的工作中,提BUG是日常工作. 以前自己为了省事,省时,仅仅是截图,在图片上注明一下问题,就放到BUG库中了. 现在发现这样会造成开发的时间的浪费,增加了沟通成本. 对于BUG,当发现了异常时, ...

  5. 软件测试工程师如何提高提BUG逼格

    某个周四早上,沏好一杯茶,刚要坐到座位上,就听开发说,你们测试怎么提的Bug,给个截图能说明啥?截图上面显示的奔溃,如果是必现还好,如果不是必现,那么我们怎么去定位?至少给个日志吧?当时我的内心活动是 ...

  6. 测试提bug及出现漏测情况时的注意点

    提bug注意(此为公司开发提出的建议): 开发如果改bug影响导致另一个问题,原bug没有问题,尽量重新提bug,不要直接激活,因为可能不是同一个问题导致的:   不要一个bug里提多个问题,因为不同 ...

  7. 漫画 | 公司测试因提Bug不规范,锒铛入狱~

    互联网人罪状系列 1.上班第一天,前端把后端告上县衙,还列了 5 宗罪 2. 程序员状告产品经理八大罪状 (上) 3.程序员状告产品经理八大罪状(下) 开发人员与测试人员的关系,就如同程序员与产品经理 ...

  8. 秋招进大厂其实也就那么回事,你会这样卡进大厂的BUG吗?

    在BAT这种大厂里,只要肯吃苦,技术和工资进步的速度会超出你想象,我在上海,按当前价格算,一般在大厂里干个三四年,好歹房子的首付应该能有,而且这种房子还不是太偏远太小的. 进大厂确实需要一定的实力,但 ...

  9. 【原】关于定时回查出现的BUG有感

    前言:今天有同事反映说客户在平台投标后,看到的是失败状态,但是钱在某银行的状态是被冻结了,我这边给出答复是只有投标成功才会冻结. 首先写下流程:P2P对接某银行托管,某银行的部分接口要求我们通过同步回 ...

随机推荐

  1. SpringBoot自定义注解@YamlPropertySource加载yml或者yaml文件(扩展了@PropertySource)

    1:概述 SpringBoot的@PropertySource注解只支持加载 properties结尾的文件.当使用@ConfigurationProperties 注解配合@EnableConfig ...

  2. 3015C语言_流程设计

    第五章 流程设计 5.1 C语句概述 C语言的语句用来向计算机系统发出指令,一个实际的源程序通常包含若干语句,这些语句用来完成一定的操作任务. 1.其他类型语句 函数调用语句(由函数调用加一个分号构成 ...

  3. vue-cli3.x npm create projectName 报错: Unexpected end of JSON input while parsing near......

    npm 版本与node版本还有webpack版本之间的问题 清理缓存,“ npm cache clean --force " 一切OK

  4. 用composer安装php代码(以安装phpmailer为例)

    1.安装composer.exe软件 2.下载composer.phar 3.创建composer.json文件 { "require": { "php": & ...

  5. ZooKeeper 系列(三)—— Zookeeper常用 Shell 命令

    一.节点增删改查         1.1 启动服务和连接服务         1.2 help命令         1.3 查看节点列表         1.4 新增节点         1.5 查看 ...

  6. 查看oracle/mysql数据库版本号

    1.1.       ORACLE 软件版本 使用oracle用户登录,输入echo "select * from v\$version;"|sqlplus -S / as sys ...

  7. C++程序设计2(侯捷video all)

    一.转换函数Conversion function(video2) 一个类型的对象,使用转换函数可以转换为另一种类型的对象. 例如一个分数,理应该可以转换为一个double数,我们用以下转换函数来实现 ...

  8. kubernetes实战篇之Dashboard的访问权限限制

    系列目录 前面我们的示例中,我们创建的ServiceAccount是与cluster-admin 绑定的,这个用户默认有最高的权限,实际生产环境中,往往需要对不同运维人员赋预不同的权限.而根据实际情况 ...

  9. Akka-CQRS(14)- Http标准安全解决方案:OAuth2-资源使用授权

    上一篇讨论了SSL/TLS安全连接,主要是一套在通信层面的数据加密解决方案.但我们更需要一套方案来验证客户端.要把不能通过验证的网络请求过滤掉. OAuth2是一套行业标准的网络资源使用授权协议,也就 ...

  10. 安装win7和linux [ubuntu14]双系统

    想体验一把ubuntu18.10最新桌面版的快感,但是windows上面的数据又删除不得,所以百度了一下,win7和linux双系统的安装教程. 一.首先在win7上创建新的分区 https://ji ...