APP下载

美商第一证券客户资料遭窜改,官方宣称是执行漏洞奖励计划的测试

消息来源:baojiabao.com 作者: 发布时间:2024-05-29

报价宝综合消息美商第一证券客户资料遭窜改,官方宣称是执行漏洞奖励计划的测试

有不少美商第一证券的客户,在9月14日~15日的周末发生电子邮件与客户名称被窜改的资安事件,许多客户原先以为是遭到骇客入侵,之后在第一证券的告知下,才知道这起事件其实是第一证券委由Hackerone执行的漏洞奖励计划的测试。

图片来源: 

iThome

美商第一证券(Firstrade)的许多客户,在9月14日~15日周末期间都陆续发现一个奇怪现象,,有不少客户的电子邮件遭到不寻常的窜改,例如:账号E-mail都被改为“stefanofinding@wearehackerone.com”,甚至连名字都被改掉了。客户以为遭骇后,紧急联系第一证券的客服人员,却得到一问三不知的答案。

最后,许多客户只在第一证券的脸书社团,看到一则简短的讯息表示,“这是第一证券聘请Hackerone.com于周末对系统进行深度测试,对于测试导致客户的个人电子信箱有任何困扰致歉;但也再次重申,客户面临的这些修改只是测试的一部分,客户的个资是安全的。”

私讯该名白帽骇客stefanofinding表示,受限于合约以及保密协定,无法提供任何关于测试的资讯,请我们与第一证券联系后续的细节。经过多方求证,这是由第一证券(Firstrade)委由漏洞奖励计划通报平台Hackerone.com所执行、形同内测的小型私有化漏洞奖励计划(Private Bounty Program)。

由于第一证券客户的电子信箱,遭到白帽骇客更改后引发轩然大波,即便第一证券稍晚针对客户发出正式的通知信函,但仍无法平息众怒,有不少客户痛批,应该要事先通知有相关的测试,也纷纷在脸书社团中,表达将尽速转换交易券商的意愿。

私有化漏洞奖励计划不适合台湾金融业现况

一位不愿具名的台湾金融业资讯高阶主管一刚开始以为,这是一个失败的渗透测试(PenTesting),恶质资安业者导致客户的资讯遭到修改;但是,后来该高阶主管听闻这是一个小型私有化的漏洞奖励计划时,则直言,这对台湾金融业者来讲,还有很大努力的空间。

另外一位金融业的高阶资安主管第一时间以为这是假消息,因为寄给客户的电子信件,字句用词都像是中国用语;但确认为真实事件后,他则笑说,这样的测试情境若发生在台湾,一定会被主管机关金管会盯惨,“不管怎么样的测试情境,怎么可以在未经客户同意下,动到客户资料呢?”他说。

台湾知名资安业者戴夫寇尔擅长渗透测试以及红队演练,该公司首席执行官翁浩正表示,他们先前曾经针对台湾金融业做过多次红队演练(Red Team)以及渗透测试,“但不管是哪一种情况,只要会影响到客户资料,过程都必须非常谨慎且与客户保持密切沟通。”他说。

戴夫寇尔资安研究员Orange Tsai则是全球知名的漏洞奖励计划的奖金猎人,也是资深红队演练与渗透测试专业资安顾问。在提及第一证券爆发的修改客户资料的资安测试事件时,他依照个人经验指出,不管是哪一个漏洞奖励计划通报平台,平台业者通常会建议想要举办漏洞奖励计划的企业用户,先启动一个仅限少数白帽骇客参与的、类似内部测试的小型私有化漏洞奖励计划(Private Bounty Program),以避免企业用户的系统,在漏洞百出情况下就公诸于世。

不过,Orange Tsai观察,平台业者看来是提供常见的Private Bounty Program的建议,但从第一证券业主的角度来看,此次小规模的测试范围,都不应该开放让白帽骇客直接进行线上服务的测试。

再者,此次爆发也因为同时具备多种巧合,例如:第一证券的系统不完善、有许多明显的系统漏洞,像是SQL Injection等,并没有事先测试并完成修补;再加上此次参与测试的白帽骇客,对于渗透测试或红队演练严谨的测试流程不熟悉,才使得该次漏洞奖励计划的执行,最终直接影响到第一证券的客户资料。

漏洞奖励计划的测试与红队演练与渗透测试有何不同

从这起第一证券爆发的事件来看,许多人对于红队演练、渗透测试甚至是漏洞奖励计划的差异并不了解。Orange Tsai指出,红队演练是范围最广的资安测试,从广泛的流程到服务,找出各种可能的系统和逻辑漏洞;至于渗透测试,则是针对单一的核心系统做更深入的测试,以提升系统的安全性;而漏洞奖励计划其实是补讲究广度的红队演练,和在意深度的渗透测试的不足之处。

Orange Tsai同时身兼奖金猎人以及资深资安顾问双重身份,根据他的经验,一般产业通常会建议先跑过几轮红队演练,找出可以找出的系统与逻辑弱点、漏洞并修补后,再针对重要核心系统进行深度的资安渗透测试,这样对整个系统的安全性,才可以做到一定程度的提升。

他说,之后就可以透过举办仅邀请少数人的私有化漏洞奖励计划(Private Bounty Program),或者是针对大众公开的漏洞奖励计划(Bug Bounty Program),邀请更多白帽骇客协助找出该企业服务或系统漏洞,这通常已经是难度更高的漏洞,像Orange Tsai先前挖掘的各种零时差漏洞,则是透过集合各种漏洞的连续技所挖掘的漏洞,难度相对高,也通常不在红队演练或渗透测试的过程中。

至于第一证券许多客户抱怨,相关的资安测试没有事先通知,客服部门一问三不知的状况,Orange Tsai表示,一般而言,渗透测试会事先通知,但红队演练为求真实,则不会事先告知;至于客服部门由于权限太低,通常很难得知这类资安测试的讯息。

推测白帽骇客应该是在更新第一证券测试资料时出包

翁浩正也表示,改资料基本上会是在测试范围的,因为那边也是常见的被攻击点。因此,该公司在执行红队演练或渗透测试时,改资料会相当谨慎,并遵守一个方法论,如果发现是Update(更新)资料的区块,不仅测试会非常谨慎,也会一定会避免影响客户资料,甚至高风险的部分,也会先跟客户沟通之后再进行。

也就是说,执行相关的资安测试时,都会先与客户确认,然后针对更改、删除等等部分严谨进行;如果客户有担忧,因为怕影响客户资料,通常会请客户提供测试环境,这样要怎么改都没关系。

他进一步解释,戴夫寇尔会根据经验,预测资料的呼叫方式,这个叫做CRUD,可以分成CREATE(新增)、READ(读取)、UPDATE(更新)和DELETE(删除)等四个动作,根据每个测试项目与方式不一样,而有不同的作法。

他说,通常READ问题不大,因为只读取资料,其实不更动客户的资料;CREATE其次,因为新增资料可能会造成客户其他流程受到影响;UPDATE再更严重些,DELETE最严重。

翁浩正从整个流程推测,第一证券应该是骇客在测试资料UPDATE的环节出包,因为更改了其他使用者资料,推测可能是SQL Injection测试不严谨,导致UPDATE 语法缺少了WHERE的语句,造成更改整个资料表。

有经验的系统测试者,会使用造成最小程度的Payload去做测试

Orange Tsai也说,由于许多奖金猎人平常对于红队演练或渗透测试,所需要严谨的过程并不了解,像这一次第一证券的问题,就可能是白帽骇客在测试过程中,在每一个测试项目都插入一样的参数,遇到SQL Injection的漏洞配上有问题的系统时,“牵一发、动全身”,一个不小心就更动到客户资料了。

他表示,对此有经验的资安专家,会使用造成最小损害程度的攻击代码(Payload)去做测试,既可以达到不要造成系统问题,又可以测出漏洞的目的。也就是说,有经验的资安专家,会针对不同测试项目插入不同参数,而这些参数对系统造成的影响程度最小,却又可以验证系统漏洞,他说:“这其实是从许多实务经,验慢慢累积而成的。”

翁浩正观察到,有一些劣质的PT业者,会使用自动化工具扫描,或者是遇到经验不足时,可能会以为是基本的SQL Injection漏洞,测试结果发现是更改资料,最后,就不小心改了整个数据库的资料了。

他也补充指出,一般红队演练或渗透测试的检测流程都有规范,也会在每天公司内部战情会议讨论执行进度,也会请业主委托IT或者资安部门观察与监控该公司的服务器状态,但若这个过程,是透过执行漏洞奖励计划而达成的目标,有可能遇到不专业的检测人员,无法用团队来做规范跟品管。

台湾产业对推动漏洞奖励计划,整体环境还不成熟

曾经参与金融业多次红队演练及渗透测试的Orange Tsai,他认为,台湾个产业,包括金融业在内,目前外在环境的成熟度以及骇客社群的成熟度都还不足,推动金融业的漏洞奖励计划(Bug Bounty Program)难度很高;相较国外市场,骇客社群已经有一定成熟度,但各产业对于漏洞奖励计划的接受度仍有落差。

他说,目前台湾金融业面对资安问题采取的解决之道,并不是从基本面去提升整体系统的安全性,往往是,采用各种禁止访问存取的手段,例如,当外部使用者对某一项金融服务的存取访问,超过系统预设的限制时,就会搭配实体临柜的方式,确保使用者是可信任的。这样的作法或许当下确保系统安全,但对于整体安全性的提升,并没有任何加分。这也使得产业的漏洞奖励计划难以实施,也容易造成白帽骇客会因为金融业系统端的各种警报,导致无法真正测试系统资安问题所在。

Orange Tsai会建议,金融业者可以先做过几次红队演练后,再针对关键系统做渗透测试,之后再透过举办漏洞奖励计划的方式,找出对系统有危害但大家还没有发现的漏洞。但他也提醒,不管哪一个产业,在无法确保一定的系统安全程度之前,各种漏洞测试绝对不要直接测试线上服务系统,以免出包后,难以收拾。

至于从事相关资安测试的白帽骇客,Orange Tsai则说:“白帽骇客永远要清楚知道,自己插入的参数Payload到底是什么,而这个插入的参数,会对系统带来什么影响。”如果只会一招半式闯江湖,想要用一个参数、适用全部系统,充其量,也只不过是脚本小子(Script kiddie)而已。

 

 

2019-09-18 11:50:00

相关文章