APT终结者之流量实名制

APT攻击及APT化的勒索攻击一直是业界的痛点,没完没了的挖洞、修洞,永无止境的策略/模型更新,层出不穷的理论堆砌,让我们的资产、服务、数据安全了吗?一方面我们无法准确的量化系统的脆弱性,更无法预知未来变故;另一方面攻防双方都在与时俱进,但往往攻击方至少领先防守方一步。

曾经听过一种声音”漏洞修复的程度和覆盖面决定整体安全水位”,固然有一定道理,但日复一日、年复一年、路在何方。APT攻击路径中,无论攻方如何漏洞利用、提权、横移、注入,最终目标是控制、破坏和窃取,这一切都离不开网络资源的利用,抓住这一点很重要。当然现如今网络层面的安全防护已经有IDS、IPS、FW、WAF、DLP、ICG等,覆盖了边界防御、流量检测和分析、恶意软件检测、数据加密、访问控制等五个部分。常见的安全能力及部署方式如下图所示。


 

图片

图1.现有流量层主要安全能力及部署结构

上图中的安全能力大部分基于数据传输过程中的网络协议、内容、行为等进行分析和过滤,但都没有回答”他们来自何方?”。整个宇宙空间中,小到微观世界,大到宏观世界都是由对象、事件、时间、空间这四要素组成,抛开对象去谈事件、时间、空间是无意义的。应用实体流量安全透析(简称:流量实名制)建立在任何应用层网络数据传输都有一个潜在的用户态或内核态的进程/线程对象,这是操作系统赋予的特性,任何基于当前技术体系实施的攻击都无法回避,这是识别和阻断攻击的第一个理论基础。我们不再单纯的基于协议、端口、IP、域名、关键字、行为等进行正则匹配、规则匹配、特征建模,而是首先关注流量发生对象(进程/应用)的合法性。

流量实名制体系的第二个理论基础是无论常规攻击还是APT攻击,一般都会经历远程控制的回显、Web泄露数据的回传、C2通道数据回传。基于这样的背景,我们通过在网络层切断数据回传通道,达到阻断APT攻击的目的,同时追求漏洞容忍的效果,让系统/服务可带伤运行,让攻击流量”有来无回”。

下面通过现实生活中发送快递的场景来解释流量实名制的基本原理。最初我们发送快递的流程是这样的。

图片

图2.原始快递业务流程

寄件人位于某小区,需发送快递,直接联系快递公司上门取件,填写目的地并付款即可完成快递的发送过程。很长一段时间我们的快递发送过程就是这样,突然一天发现有不法分子通过该渠道运输毒品、枪支等非法物品,于是乎我们的流程变成这样:

图片

图3.改进版快递业务流程

改进版快递流程中,快递公司在将快件发出前进行一次”内容、协议、关键字”扫描,起到了一定效果,但随着快递业务量增加误报率极高,因为面粉看起来像毒品,儿童玩具抢像枪支。于是乎我们进一步改进成这样:

图片

图4.最终版快递业务流程

在新的流程中,快递员首先确认寄件人所宣称身份与寄件人真实身份是一致的(防止身份假冒);其次快递员拿着该身份询问公安机关此人是否有权使用我们的运输渠道投递快递,公安机关基于此人身份作出如下处理:

  • 1.此人发送快递的行为是否在公安机关备案。(现实中无此流程)

  • 2.此人是否有过贩毒、贩卖枪支的案底。

  • 3.此人是否是通缉犯。

基于上面的处理公安机关最终决策是否允许发送该快递,甚至决策是否抓捕该寄件人。

在上述案例中寄件人充当流量实名制体系中的用户态或内核态进程/线程,快递公司充当网络基础设施,快递员充当了主机安全代理,公安机关充当流量层决策和拦截组件/安全设备。在该体系中我们不再单纯从流量层识别分险,转而从系统、应用、流量三个纬度综合研判该”快递包”是否有权利用网络资源。该体系中我们会用到白名单、模型、策略等技术手段,面向的应用场景主要有数据中心/服务中心安全防护、Linux/Win单机系统防护。

终端终结者是一个在Ubuntu上使用的终端模拟器。您可以按照以下步骤来安装和使用终端终结者: 1. 打开终端(按下Ctrl+Alt+T)。 2. 运行以下命令来安装终端终结者:sudo apt-get install terminator 3. 安装完成后,您可以通过在应用程序菜单中搜索“终端终结者”或在终端中运行“terminator”命令来打开它。 4. 一旦打开终端终结者,您可以右键单击终端窗口,并选择“水平”或“垂直”方向来扩展一个新的终端。这样,您就可以在一个窗口中同时操作多个终端。 如果遇到终端终结者无响应的问题,可能是由于系统默认的Python版本设置为Python 3导致的。这时您可以按照以下方法解决: 1. 打开终端终结者的启动文件。您可以通过运行以下命令来找到启动文件的位置:which terminator 2. 打开启动文件并进行编辑。例如,如果启动文件是“/usr/bin/terminator”,则可以运行以下命令来编辑它:sudo nano /usr/bin/terminator 3. 在打开的文件中,找到以“#!/usr/bin/python”开头的一行,并将其修改为“#!/usr/bin/python2”。 4. 保存并关闭文件。 5. 再次尝试运行终端终结者,应该可以正常启动了。 希望这些信息能够帮助您解决问题。如果您有任何其他相关问题,请随时提问。 相关问题: 1. 如何卸载终端终结者? 2. 如何在终端终结者中创建自定义布局? 3. 如何在终端终结者中设置快捷键?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值