HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

黑哥谈应用安全:技术的进步就是为了解决矛盾

  • 2014-02-23
  • 本文字数:4364 字

    阅读完需:约 14 分钟

如果你是安全圈内或安全圈周边人士,或者如果你不懂安全但经常看道哥的黑板报,你应该知道黑哥。这里直接借用一下道哥在黑板报对黑哥的介绍:

黑哥真正的 id 是 superhei,熟悉他的人喜欢叫他黑哥,也有无聊者直译为“超级黑”、“素破黑”。在黑客的圈子里,有无数叫小黑或者黑哥的,但在资深黑客的眼中,只有一个黑哥,就是 superhei。黑哥真名周景平,目前是国内知名安全公司 — 知道创宇 — 的安全专家。

黑哥的故事在黑板报的那篇《中国黑客传说》中已经从圈内人的角度进行了相当广泛的描述,这里就不做搬运了。在下面的采访中,黑哥分享了他对当前Web 程序漏洞、后门、用户体验和安全的矛盾、以及漏洞报告平台的一些观点。对黑哥研究的领域感兴趣的同学可以关注他的微博 @hi_heige ,阅读他的博客,以及来QCon 北京2014 大会上听他的演讲并跟他交流:)

InfoQ:目前市面上有很多开源的 Web 程序可以给站长免费使用,但这些 Web 程序似乎都有补不完的漏洞及后门,您觉得这是什么原因导致的?

黑哥:这个问题提得好,我们先说说“漏洞”。我们安全联盟站长平台在以往就预警过大量 Web 程序的漏洞,去我们论坛查看我们预警过的记录,你会发现很多程序都是著名的开源程序,而且经常是刚刚被曝光一个漏洞,没多久又被曝漏洞,感觉有“补不完的漏洞”。

追其原因我认为主要是如下几个方面导致的:

i、开源市场的混乱:开源直接意味着这是一个开放的环境,任何人或者组织都可以加入进来,这直接导致程序员的水平参差不齐,对安全知识的缺乏,跟不用说自主发现并尽可能的避免安全问题出现了。

ii、官方对安全问题的漠视:“没有绝对的安全”,这个是安全界里的真理,所以有漏洞其实是没什么可怕的,真正可怕的是官方的冷漠态度:对报告的漏洞不承认、不修复,或者偷偷修复不发公告、不告知用户,还有对漏洞报告者不尊重——更加不要说起码的感谢了!

iii、Web 程序厂商缺少“高富帅”,对安全没有投入或者投入不足,这也导致了一个漏洞修复几次还修复不彻底(刚刚发布补丁就被绕过)、“见洞补洞(针对 POC 修复漏洞)”等情况大量存在。

我们再谈谈“后门”的情况,这个与“漏洞”的区分主要是:“漏洞”是开发过程中无意识导致的,而“后门”是主观意识下“有意为之”的产物。从我们的工作经验来看,后门问题也是一个非常严峻的问题,主要有几个方面:

i、官方后门:主要目的是方便调试,比如后台认证代码里使用固定硬编码的密码,还有的本来就是“恶意”目的留下的,比如某些电商类程序——尤其是团购、淘宝客等程序。

ii、黑客入侵后留下的后门:这个主要原因就是官方自身网站安全不到位。有一个普遍的问题:黑客发现某应用程序的漏洞后,发现官方 demo 或者本身就用这套程序,然后直接用发现的漏洞入侵官方后,篡改提供下载的文件包,在里面植入后门程序。

另外这里有必要强调一点,就是这些问题不是“开源”导致的,很多商业的闭源代码的问题可能更多,尤其是后门问题。因为对于安全研究者来说,开源代码都比较容易发现后门或者漏洞,也可以及时告知用户并可以推出临时补丁进行防御。而“闭源”的显然不行,所以一旦有漏洞或者后门,可能带来的危害就更大!

InfoQ:开源厂商里面是否有类似“内鬼”一样的角色在其中制造后门?如果有的话,您作为资深安全人员,您有没有什么好的建议给那些开源厂商?

黑哥:这里不应该针对“开源厂商”,所有的厂商都是一样的。目前来看这种“内鬼”还是可能存在的,当然了,很多事情是我们没办法去确认的,对于厂商来说这个是“家丑”。比如我们最近发现一个“案例”,对于用户来说没有啥“危害”,在这里可以提一下:

我们发现某个程序厂商的更新里,有几个默认链接被篡改了,如“CNZZ( http://www.cnzz.cn/,山寨的 CNZZ)”被修改为一个小说网链接。由于这样的手法以前在上面提到的黑客留“后门”的时也会顺带修改一个链接做恶意 SEO,所以我们当时就怀疑是不是被黑客入侵了,当我们联系官方后,他们给我们的答案就是他们自己人修改的!内部问题对于厂商来说可以通过一些管理手段来避免,比如对上线的程序修改要经过多名技术主管确认等。

InfoQ:外界盛传您是漏洞挖掘的高手,现在的 Web 漏洞还像以前那么容易挖吗?主要集中在哪几类(漏洞类型)?

黑哥:对于 Web 程序来说,相比过去还是有一些进步的,而这些改变主要体现在几个大的厂商。比如 Discuz!,在我的印象里他们是最早招聘安全研究人员进行代码审计的,有专业安全人员加入后,产品的安全性一下就提升不少。也就是说对于大型的程序,有安全投入的程序挖掘难度是越来越高的。不过前面我们提到的,由于整体环境的混乱,导致目前来说 Web 漏洞挖掘的难度整体上是不高的,有的程序你看一眼就是“满眼都是漏洞”!漏洞类型基本常见的比如代码执行、文件包含、上传漏洞、SQL 注入、XSS 都很常见。

而对于互联网在线服务来说,由于各个甲方都推出了自己的安全应急响应中心,及安全部门人才及设备等的投入,网站是越来越安全。我在参与 TSRC(腾讯安全应急响应中心)中就深有体会,他们会根据白帽子们报告的漏洞研究后来改进自己的扫描器,这样可以对一些新上线的服务上线前就进行漏洞扫描并修复漏洞。这样上线后,漏洞挖掘的门槛就高了。从 TSRC 公布的统计数据来看漏洞类型主要还是集中在 XSS/CSRF 等。

InfoQ:前一段时间 Github 似乎被黑客成功入侵了,您是否有关注这次入侵行为,能否跟大家介绍一下细节?Github 的安全系数在同类网站中算高的吗?

黑哥:对于这个事情还是有所了解的,不过这里用“入侵”这个词是不妥当的!应该说是“安全检测”,因为 Github 还给漏洞发现者提供了 USD $4,000 的奖励。具体细节漏洞发现者 Egor Homakov 已经写一篇文章并发布了,而且好像已经被翻译成中文了(编辑注:这篇《从“黑掉Github”学Web 安全开发》不完全是原文的翻译,而是 @左耳朵耗子 针对 Egor 的原文进行的复述和补充),有兴趣的朋友可以自己去看看。大体上是他利用了 Github 上 OAuth 的 5 个“bug”组合后完美实现了这一“入侵”,这个案例也说明了一个千古不变的道理:“千里之堤,溃于蚁穴”。另外说明在攻防粒度高度细化的时代,各种攻击漏洞组合成为突破防线的主要手段。这句话的另外一个意思就是:Github 的安全系数是比较高的。现在他们也加入到了“漏洞奖励计划”的大浪潮了,我相信在更多专业人士的帮助下,他们的网站会越来越安全!

InfoQ:您觉得用户体验和网站安全哪个更重要?如果网站的负责人非常在意用户体验,作为安全人员您建议如何与其沟通?

黑哥:又是一个非常好的问题,不过也是一个比较大的问题!如果要细说可能可以直接做一次演讲了。

这个问题不光是网站才有,对产品都有这个问题。说到底就是“业务”与“安全”的问题。终极的“用户体验”一直都是产品“业务”追求的目标,而往往在安全防御的问题上可能影响到这一目标。一个简单的例子:图片验证码主要是防御一些程序发起的恶意行为,毫无疑问这个也给“用户体验”带来了麻烦!那么怎么去衡量两者的关系呢?这个问题一直有争论,很多人都认为“安全”应该服从于“业务”,因为他们认为没有“业务”,那么“安全”也就没有意义了!

单看上去是没有破绽的,这里有一个比喻:“业务”比喻为“钱”,“安全”比喻为“保险箱”。在一个环境比较公开的场合,那么他们逻辑是“钱”都没有你就没有必要买“保险箱”了,我只是想说这样的人可能一辈子都只能是“屌丝”。换个角度,你的“钱”再多,如果你的“保险箱”连扫地的阿姨都能开……所以这个问题是没有绝对的答案的!

比较科学的方法,首先你得有“安全”意识,而不是一股脑的“脑残式”追求所谓的“用户体验”,而完全不顾安全问题。换个方式也可以说:“产品安全也是一种用户体验”!有了这种觉悟,然后你要根据你的资产,或者说用户资产去采用合适的安全保护方案。

不过在实际操作中,很可能出现一些特别针对性的矛盾问题:有个非常 nice 的用户体验,一旦实现就可能出现安全漏洞。那么怎么解决这个“矛盾”?这里提一下我个人的观点:在我看来技术的进步就是为了解决矛盾的!现有的技术水平可能没办法解决掉这个问题,那么有没有其他方式可以保障两者尽可能的平衡?当然技术的投入也是要看成本评估的。

那么我们怎么让 boss 们重视安全呢?这里推荐一下 MS 推出的 SDL 流程,这个流程的第一个环节就是“教育 boss 们”,赢得 boss 的支持。要“教育”boss 们不是一件容易的事情,目前很多情况都是被“安全事件”曝光来推动的,这个是现状也没办法。不过对于一个企业安全人员来说,你首先应该尽可能的把安全问题危害科普化的详细描叙给你的 boss(因为 boss 们不一定理解安全),如果 1-2 次没效果,你可以反复多提几次,所谓“尽力而为”,一旦有对应事件出现,那么 Boss 就可能马上想到你提的各种建议:)

InfoQ:您在腾讯漏洞报告平台的排行榜上常年雄踞榜首,并获得高额奖金,您对此有何想法?

黑哥:其实奖金奖品不是我最看重的,我个人有一个常年坚持的目标:“把我的想法,尽可能都实践一把!”

谈到各大漏洞报告平台,不得不先提乌云漏洞报告平台。乌云的出现直接导致了各大甲方的觉悟,首先成立的是腾讯的 TSRC 漏洞报告平台。由于那段时间我一直在学习并思考《负责任的漏洞披露过程》,对甲方的这种平台建设有一些想法,那么我当时就参与到了 TSRC 漏洞报告活动里。在前期的交流里,我发现了很多问题和矛盾,于是我有一句名言:“甲方都需要教育”,所以我觉得应该“教育”一下,于是就在 blog 上公布了一些“争论”,当然随后我又在 blog 上陆续发布了我对甲方漏洞报告平台建设的一些“建议”,随后我们的很多建议都被 TSRC 采用,这才是我最在意的事情!

而 TSRC 的榜样在,也导致各甲方纷纷效仿成立 *SRC。由于这样的话题已经在 weibo 及 blog 上谈及过多次,还有好几次和朋友的论战,所以这里就不多提了,只再次强调一下:榜样其实是有毒的!一定要结合自己公司的一些实际情况来开展。

InfoQ:作为公认的脚本黑客 top1,能否谈谈脚本黑客的过去和未来?

黑哥:首先要说明的是“公认的脚本黑客 top1”我是万万不敢当的!只是由于一些个人学习上的经历,导致一直都在研究应用层的安全问题。过去这样的没有啥太大意义的问题这里就不提了,至于未来其实也是没谱的事情,少谈比较靠谱!只是在这里稍微提一下:有一些圈外人士认为未来是属于移动互联的,他们认为“网站”会慢慢消失,被移动 app 替代。于是他们得到一个结论,“网站”都消失那么“网站”安全行业也就不存在了!之所以说他们是“圈外”是因为他们理解的“网站”只是被浏览器渲染出来的那个界面框架而已,他们忽视了移动 app 后端的“网站”是不会消失的,与 app 沟通的数据还是很多走的 web 服务。所以他们的担心只能是“杞人忧天”。随着脚本技术发展,用脚本实现的工作越来越方便快捷,所以脚本黑客未来是光明的!

2014-02-23 15:344904

评论

发布
暂无评论
发现更多内容

彰显中国气象服务前沿能力,墨迹天气全球雷达融合降水服务产品亮相服贸会

彭飞

YMatrix 5.0 与天翼云完成产品兼容性认证

YMatrix 超融合数据库

超融合数据库 YMatrix 产品兼容互认证 天翼云

引领广西鲲鹏产业热潮,助推数字广西发展。广西第四届鲲鹏应用创新大赛总决赛圆满举行!

彭飞

K8s 多集群实践思考和探索

vivo互联网技术

云计算 k8s 多集群

七类网线的制作过程

小齐写代码

说说分布式系统容器化

HelloGeek

Kubernetes 容器 微服务 云原生

草图大师 2023中文安装「SketchUp Pro 2023下载」

胖墩儿不胖y

Mac软件 草图大师 三维建模软件 草图大师2023下载

Sermant类隔离架构解析——解决JavaAgent场景类冲突的实践

华为云开源

java-agent

HarmonyOS实现几种常见图片点击效果

HarmonyOS开发者

HarmonyOS

山东布谷科技直播系统源码,系统分析篇:不可或缺的云转码系统

山东布谷科技

软件开发 音视频 系统架构 云转码 直播系统源码

mac办公软件Office 2019激活中文+密钥许可

mac大玩家j

办公软件 Office 2019下载 Office Mac

Office办公软件下载 Office 2019 for Mac v16.78 beta永久激活版

mac

苹果mac Windows软件 office 2019 办公软件套装

文盘Rust——起手式,CLI程序 | 京东云技术团队

京东科技开发者

cli rust语言 企业号9月PK榜

如何在国内安装Bitdefender

吴脑的键客

安全

华为云API人脸识别服务FRS的感知力—偷偷藏不住的你

华为云PaaS服务小智

人工智能 插件 API 华为云

迅速而准确的PostgreSQL数据对比指南

NineData

数据库 postgresql IDC 数据对比 NineData

龙蜥白皮书精选:龙蜥安全漏洞管理体系介绍

OpenAnolis小助手

白皮书 系统安全 CVE 龙蜥社区 安全委员会

软件测试开发高薪私教线下班来啦!名师1V1指导,大咖强化集训

测试人

软件测试 自动化测试 测试开发 线下班

DeeTune:基于 eBPF 的百度网络框架设计与应用

百度Geek说

云原生 ebpf 企业号9月PK榜

Web应用防火墙--规则防护 | 京东云技术团队

京东科技开发者

Web应用防火墙 waf 企业号9月PK榜

KaiwuDB 受邀出席“软件名城看济南”暨浪潮海岳软件技术大会

KaiwuDB

KaiwuDB 社区生态

火山引擎 DataTester 首推A/B实验经验库,帮助企业高效优化实验设计能力

字节跳动数据平台

大数据 A/B测试 企业号9月PK榜

NFTScan的增长秘籍:从零起步,成长为最大的NFT数据基建服务商

NFT Research

NFT\ nft工具

代码泄漏无感知?代码安全审计构筑企业核心资产安全防线

极狐GitLab

DevOps gitlab 源代码管理 审计事件 代码泄露

开源机密计算平台:蓬莱-OpenHarmony

OpenHarmony开发者

OpenHarmony

华宇软件亮相服贸会中国AIGC创新发展论坛,共话垂直大模型未来!

科技热闻

提高程序并发性能:Java多线程编程

xfgg

Java 多线程

黑哥谈应用安全:技术的进步就是为了解决矛盾_安全_王文文_InfoQ精选文章