草庐IT

信息安全-零信任技术-SDP是什么,SDP可以防御哪些安全威胁

狂飙的高启强 2024-01-28 原文

 

SDP是什么

SDP(software defined perimeter)是美国国防部于2007年发起的项目,旨在解决GIG(全球信息栅格,是美军信息化作战规划中极其重要且宏大的基础设施)中,如何实时、动态地对网络进行规划和重构的问题。

当然,在SDP完全成熟之前,VPN仍是较好的远程访问解决方案。

近两年来,SDP技术逐步开始火爆!

SDP已经快速进入民用互联网领域,得益于互联网丰富、厚重的中间层框架已经实现了比军用通信网络彻底得多的软件定义,以及多网融合之后的全IP化网络。

名为软件定义边界 (SDP) 的远程访问新范式采用零信任方法,以基于身份的细粒度访问代替广泛的网络接入,提供重要 IT 资源访问。

仅仅几年之前,大多数工作还是在办公室里完成的。但如今,大量工作都开始陆续通过远程执行——至少远程工作时间占比很高。员工可在机场、咖啡馆、酒店和火车上接入工作网络。相当多的工作者,比如雇员或承包商,绝大部分时间都是在家或在 WeWork 这样的共享办公空间远程工作。

这一转变对旨在保护边界的企业安全造成了重大影响。企业虚拟专用网 (VPN) 是提供安全远程访问最常见的解决方案,不仅赋予远程工作者企业网络接入,还可使他们能够访问该网络上的应用和数据。但这种局域网 (LAN) 上用户天然 “可信” 的过时认知,给攻击者留出了广阔的攻击空间。

幸运的是,名为软件定义边界 (SDP) 的远程访问新范式采用零信任方法,以基于身份的细粒度访问代替广泛的网络接入,提供重要 IT 资源访问。SDP 保护企业免受多种威胁及黑客技术侵害,防止罪犯成功攻破企业网络。

企业 VPN 无法抵御的八种常见安全威胁,揭示 SDP 在直面此类威胁时的有效性。

威胁 1:中间人

攻击者将自身置于用户与应用的会话中间,窃听或伪装其中一方,使信息交流看起来仍像正常进行一样,这样的攻击就叫做中间人攻击 (MITM)。SDP 和 VPN 解决方案都能通过加密隧道提供针对 MITM 攻击的防护。但 SDP 部署全面,始终在线,可全程保护 Web 流量,提供企业网络安全访问。而很多传统 VPN 解决方案为节省开支和降低延迟,采用单独的隧道直接发送 Web 流量,将终端置于风险之中。SDP 却通过保护开放终端解决了这个问题。

威胁 2:DNS 劫持

DNS 劫持是接入公共 WiFi 网络工作的又一危害。黑客可介入 DNS 解析,将用户导引至恶意站点而非其意图访问的合法网站。使用恶意软件或未授权修改服务器均可达成此目的。黑客一旦控制了 DNS,就能将通过此 DNS 上网的其他人引至假冒网站——布局相似,却包含额外的内容,比如广告等。也可以将用户导引至包含恶意软件或第三方搜索引擎的页面。而始终在线的 SDP 解决方案依托网络即服务架构,使用策展式安全 DNS 服务执行解析,抵御 DNS 劫持攻击。

威胁 3:SSL 剥离

SSL 剥离属于 MITM 攻击的一种,将终端与服务器间的通信降级至非加密形式以便能够读取其内容。防止 SSL 剥离的一种方式是安装 HTTPS Everywhere 浏览器扩展,强制各处均采用 HTTPS 通信,阻止不请自来的攻击者将通信降级为 HTTP。SDP 也能阻止此类威胁,通过以加密隧道发送所有流量加以缓解。

威胁 4:DDoS

分布式拒绝服务 (DDoS) 攻击中,应用因遭遇流量洪水过载而无法响应正常请求。由于是分布式的,此类攻击非常难以阻止。拒绝服务攻击的特征就是攻击者明显要阻塞服务的合法使用。

拒绝服务 (DoS) 攻击主要有两种形式:搞崩溃服务的,以及淹没服务的。最严重的攻击就是分布式的。由于保护的是应用而非终端用户设备,SDP 解决方案对两种 DDoS 攻击都有效。SDP 模型中,应用(以及托管这些应用的基础设施)并不直接接入互联网。SDP 解决方案作为网关拦阻一切未授权访问。

威胁 5:端口扫描

黑客运用端口扫描定位网络上可利用来攻击的开放端口。安全管理员必须留意与端口扫描相关的两大主要关注点。首先,与开放端口及其服务提供程序相关的安全及稳定性问题。其次,与通过开放或关闭端口运行于主机上的操作系统相关的安全及稳定性问题。由于 SDP 解决方案将所有网络资源与互联网隔离,黑客无法利用此技术找出进入的途径。

威胁 6:可蠕虫化漏洞利用

就像近期频登媒体头条的 BlueKeep,蠕虫就是可以从一台机器爬到另一台机器的漏洞利用。有什么可大惊小怪的?因为用户只要进入网络就会被感染——无论可信网络还是非受信网络。换句话说,杀毒软件和 EDR 等常规终端安全平台阻止不了此类漏洞利用,用户安全意识培训也无甚帮助。因为无需用户操作,仅需用户的笔记本电脑或手机接入网络的同时有台被感染设备也接入了同个网络即可。由于网络上利用了蠕虫,大多数情况下,企业防火墙或 VPN 无法缓解 BlueKeep 类漏洞利用。零信任 SDP 为用户提供独特的固定身份和微隔离访问,仅供访问所需的资源,如此一来,被感染设备对整个网络产生的影响就非常有限了。

威胁 7:暴力破解攻击

与 DDoS 类似,暴力破解攻击也是黑客通过反复登录尝试,获取网络或应用访问权的方式之一。SDP 解决方案可立即检测到失败的登录尝试,同时注意到可疑地理位置或登录时段、设备状态改变和终端杀毒软件缺失或被禁用的情况,从而拒绝访问。

威胁 8:遗留应用

很多遗留应用设计时没考虑过从互联网访问的情况,缺乏现代软件即服务 (SaaS) 应用默认的基本安全措施。通过 SDP 解决方案限制对遗留应用的访问可以将这些应用与企业网络和互联网隔离,增加适应性控制措施以降低风险。

从不掉线的软件定义边界在应用层守护网关安全,把守通往云基础设施及其相互之间的交通要道,构筑健壮的安全框架。加之甚至第三方应用提供商都无法刺探通信的加密功能,SDP 为迈向云的公司企业承诺了理想的高安全边界。

有关信息安全-零信任技术-SDP是什么,SDP可以防御哪些安全威胁的更多相关文章

  1. ruby - 为什么我可以在 Ruby 中使用 Object#send 访问私有(private)/ protected 方法? - 2

    类classAprivatedeffooputs:fooendpublicdefbarputs:barendprivatedefzimputs:zimendprotecteddefdibputs:dibendendA的实例a=A.new测试a.foorescueputs:faila.barrescueputs:faila.zimrescueputs:faila.dibrescueputs:faila.gazrescueputs:fail测试输出failbarfailfailfail.发送测试[:foo,:bar,:zim,:dib,:gaz].each{|m|a.send(m)resc

  2. ruby-on-rails - Rails - 子类化模型的设计模式是什么? - 2

    我有一个模型:classItem项目有一个属性“商店”基于存储的值,我希望Item对象对特定方法具有不同的行为。Rails中是否有针对此的通用设计模式?如果方法中没有大的if-else语句,这是如何干净利落地完成的? 最佳答案 通常通过Single-TableInheritance. 关于ruby-on-rails-Rails-子类化模型的设计模式是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

  3. ruby-on-rails - Rails 常用字符串(用于通知和错误信息等) - 2

    大约一年前,我决定确保每个包含非唯一文本的Flash通知都将从模块中的方法中获取文本。我这样做的最初原因是为了避免一遍又一遍地输入相同的字符串。如果我想更改措辞,我可以在一个地方轻松完成,而且一遍又一遍地重复同一件事而出现拼写错误的可能性也会降低。我最终得到的是这样的:moduleMessagesdefformat_error_messages(errors)errors.map{|attribute,message|"Error:#{attribute.to_s.titleize}#{message}."}enddeferror_message_could_not_find(obje

  4. ruby - 什么是填充的 Base64 编码字符串以及如何在 ruby​​ 中生成它们? - 2

    我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%

  5. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  6. ruby - 使用 Vim Rails,您可以创建一个新的迁移文件并一次性打开它吗? - 2

    使用带有Rails插件的vim,您可以创建一个迁移文件,然后一次性打开该文件吗?textmate也可以这样吗? 最佳答案 你可以使用rails.vim然后做类似的事情::Rgeneratemigratonadd_foo_to_bar插件将打开迁移生成的文件,这正是您想要的。我不能代表textmate。 关于ruby-使用VimRails,您可以创建一个新的迁移文件并一次性打开它吗?,我们在StackOverflow上找到一个类似的问题: https://sta

  7. ruby - 为什么 4.1%2 使用 Ruby 返回 0.0999999999999996?但是 4.2%2==0.2 - 2

    为什么4.1%2返回0.0999999999999996?但是4.2%2==0.2。 最佳答案 参见此处:WhatEveryProgrammerShouldKnowAboutFloating-PointArithmetic实数是无限的。计算机使用的位数有限(今天是32位、64位)。因此计算机进行的浮点运算不能代表所有的实数。0.1是这些数字之一。请注意,这不是与Ruby相关的问题,而是与所有编程语言相关的问题,因为它来自计算机表示实数的方式。 关于ruby-为什么4.1%2使用Ruby返

  8. ruby - 我可以使用 Ruby 从 CSV 中删除列吗? - 2

    查看Ruby的CSV库的文档,我非常确定这是可能且简单的。我只需要使用Ruby删除CSV文件的前三列,但我没有成功运行它。 最佳答案 csv_table=CSV.read(file_path_in,:headers=>true)csv_table.delete("header_name")csv_table.to_csv#=>ThenewCSVinstringformat检查CSV::Table文档:http://ruby-doc.org/stdlib-1.9.2/libdoc/csv/rdoc/CSV/Table.html

  9. ruby - 如何使用 Ruby aws/s3 Gem 生成安全 URL 以从 s3 下载文件 - 2

    我正在编写一个小脚本来定位aws存储桶中的特定文件,并创建一个临时验证的url以发送给同事。(理想情况下,这将创建类似于在控制台上右键单击存储桶中的文件并复制链接地址的结果)。我研究过回形针,它似乎不符合这个标准,但我可能只是不知道它的全部功能。我尝试了以下方法:defauthenticated_url(file_name,bucket)AWS::S3::S3Object.url_for(file_name,bucket,:secure=>true,:expires=>20*60)end产生这种类型的结果:...-1.amazonaws.com/file_path/file.zip.A

  10. ruby - ruby 中的 TOPLEVEL_BINDING 是什么? - 2

    它不等于主线程的binding,这个toplevel作用域是什么?此作用域与主线程中的binding有何不同?>ruby-e'putsTOPLEVEL_BINDING===binding'false 最佳答案 事实是,TOPLEVEL_BINDING始终引用Binding的预定义全局实例,而Kernel#binding创建的新实例>Binding每次封装当前执行上下文。在顶层,它们都包含相同的绑定(bind),但它们不是同一个对象,您无法使用==或===测试它们的绑定(bind)相等性。putsTOPLEVEL_BINDINGput

随机推荐