日产生50亿条金融交易的SWIFT攻击正在进化

简介:

就在去年,还只有极少数人听说过环球银行金融电信协会(SWIFT)。该组织的标准化信息格式,被采纳为银行间金融转账的全球标准;相关软件和消息网络,驱动着今天大多数的国际银行转账,每年产生的金融消息超50亿条。然而,这并不是大多数人听闻SWIFT的原因所在。

近些年,利用或入侵SWIFT应用的网络攻击和欺诈频频见诸报端。2016年,孟加拉央行和纽约联邦储蓄银行便涉入一场净值1.01亿美元的网络劫案——其中大多数资金都未追回。若非其中一笔交易出现拼写错误引发质疑,另外8.5亿美元恐怕也会被盗。随后,对SWIFT网络的攻击此起彼伏,越南、厄瓜多尔、乌克兰都发生了此类事件,不过大多数受影响银行和国家都未公开事件。

攻击策略在进化

对支付系统的攻击,包括对SWIFT的攻击,都不算新鲜。金融机构从一开始就在与欺诈和盗窃作斗争,攻击者则紧跟技术发展,利用一切可以利用的漏洞。

数年前,攻击者选中的策略,是入侵用户电脑,然后以该用户的名义提交虚假金融交易。这让银行恶意软件和远程访问木马(RAT)的流行,成为了金融机构的主要关注点。尽管这些策略依然留存,也是对个人、公司和银行的一个威胁,对这些威胁的认知,已经导致了更好的防护和罪犯成功率的下降。

不过,攻击者也是越战越勇的类型,他们开始改变策略,从对用户终端的攻击,转变到对驱动银行系统本身的应用和网络的攻击。除大量资金被盗外,孟加拉央行攻击事件的重点,在于攻击者使用的攻击方法。除了利用从授权用户处盗得的凭证,攻击者还安装了恶意软件以在支付系统中形成驻留。

举个例子,有系统负责所有交易的打印,那么所有交易记录必然会有一份复印件拷贝。为规避记录,攻击者禁用了该过程,让自己的虚假交易不会出现在打印件里。越南网络劫案中,攻击者修改了用于跟踪SWIFT转账的PDF阅读器,让虚假转账不显现。

除了阻止交易记录打印,攻击者还将恶意软件安装到托管着SWIFT网络管理和连接软件集 SWIFT Alliance Software 的服务器上。 该恶意软件可以解密各种配置文件,搜索特定条款,然后绕过验证检查,规避交易被发现的风险。

很明显,此类攻击正演变得越来越复杂,他们正将攻击堆栈向底层移动,从终端用户,移动到之前尚未触及的银行系统和安全措施上。

Swift Alliance Software架构

凝练出有效防御

针对此一情况,SWIFT发布了其《客户安全计划》,围绕 Swift Alliance Software 和与SWIFT网络互动的任何定制应用,为金融机构提供安全防护指南。

尽管该指南是迈向正确方向的第一步,实际防护SWIFT应用堆栈却是说起来容易做起来难,因为太多SWIFT应用组件都是遗留实体系统,不支持最新的安全软件,也不接收任何安全性更新,并且这些应用组件还往往存在于那些难以适应新安全协议的数据中心里。

防护银行应用的安全控制也有那么一些——交易监测、用户行为监视、反恶意软件、用户安全培训等等,但 SWIFT Alliance Software (或定制SWIFT应用)无论安全通常难以实现。

直到最近,安置各种SWIFT组件的最佳实践,都还是将它们都放到防火墙后面,但这依然阻挡不了同区域内与其他工作负载的自由通信,而且提供不了第4层之上的可见性与控制。很明显,对付熟知SWIFT应用逻辑的黑客时,更精妙的方法是必需的。

有效保护SWIFT应用堆栈的理想解决方案应包含3个要素:

  1. 微分隔——获得对所有数据中心通信的完整可见性与控制
  2. 实现从第7层开始的安全策略,获得细粒度的高效策略构建
  3. 支持虚拟和物理两种工作负载——因为很多金融机构依然是两套系统并行的

微分隔SWIFT应用架构的各种组件,确保了只有恰当的终端和应用组件可以相互通信,且只通过经批准的应用协议进行通信。于是,如果攻击者想要侵入你的SWIFT应用堆栈,他们就得利用SWIFT应用协议中的漏洞,而且要从另一个经授权的应用组件发起攻击,不能简单地在运行SWIFT组件的服务器上通过可用端口或协议获得立足点了。即便是技术高超的攻击者,这也是个极难跨越的障碍。

保护支付系统不受诈骗或网络攻击侵扰是没有万灵丹的。不过,将支付系统组件间通信限制在“有必要才允许”的范围内,可以大幅减小攻击界面,这比其他方法提供的控制严格得多。随着我们继续见证对银行和支付应用的攻击,以及随之而来的安全最佳实践和网络安全监管的收紧,对系统应用间各个方面通信的细粒度可见性与控制的需求,只会不断上升。

目录
相关文章
|
3月前
|
安全 编译器 Swift
IOS开发基础知识: 对比 Swift 和 Objective-C 的优缺点。
IOS开发基础知识: 对比 Swift 和 Objective-C 的优缺点。
91 2
|
2月前
|
监控 API Swift
用Swift开发iOS平台上的上网行为管理监控软件
在当今数字化时代,随着智能手机的普及,人们对于网络的依赖日益增加。然而,对于一些特定场景,如家庭、学校或者企业,对于iOS设备上的网络行为进行管理和监控显得尤为重要。为了满足这一需求,我们可以利用Swift语言开发一款iOS平台上的上网行为管理监控软件。
192 2
|
3月前
|
监控 Swift iOS开发
局域网计算机监控软件中利用Swift构建iOS端的移动监控应用
在局域网计算机监控软件的开发中,构建iOS端的移动监控应用是一项关键任务。本文将介绍如何利用Swift语言实现这一目标,通过多个代码示例展示关键功能的实现。
225 1
|
3月前
|
安全 JavaScript 前端开发
IOS开发基础知识:介绍一下 Swift 和 Objective-C,它们之间有什么区别?
IOS开发基础知识:介绍一下 Swift 和 Objective-C,它们之间有什么区别?
65 0
|
5月前
|
JavaScript 前端开发 PHP
用swift开发ios移动端app应用初体验
直接跟着 apple 官方的 SwiftUI 教程跑的,写惯了 javascript 奔放的代码,很多语法理解起来还是有点费劲
57 1
|
7月前
|
Swift iOS开发
iOS OC混编Swift 后者无法走断点
iOS OC混编Swift 后者无法走断点
49 0
|
Swift iOS开发
IOS使用Swift加载Xib文件
IOS使用Swift加载Xib文件
252 0
|
Swift iOS开发
iOS开发 - 适合工程多环境切换(swift环境),适合经常打很多不同环境包的人
iOS开发 - 适合工程多环境切换(swift环境),适合经常打很多不同环境包的人
219 0
iOS开发 - 适合工程多环境切换(swift环境),适合经常打很多不同环境包的人
|
Swift 数据安全/隐私保护 iOS开发
iOS开发 - swift通过Alamofire实现https通信
iOS开发 - swift通过Alamofire实现https通信
345 0
iOS开发 - swift通过Alamofire实现https通信
|
Swift iOS开发 容器
iOS 仿支付宝银行卡界面(支持Swift/OC)
在有支付相关的APP中,都有对应的钱包,虽然现在的支付宝,微信支付很流行,但是都是需要绑定自己的银行卡,那么这个银行卡的卡包页面该怎么实现呢?在网上找了许久也没有找到合适的,那就索性自己造轮子。
324 0