Skip to content

实施检测和预防措施

时间:2023年5月6日 星期六

作者:小王

理想状况下,组织通过实施预防措施来避免事故发生,但不论多有效的预防机制,事故也可能仍然发生,因此需要其他控制来检测和响应事故。

1.预防性控制:试图阻止或停止非预想或未授权的活动发生,事前措施。

2.检测性控制:试图发现或检测非预想或未授权的活动,事后措施。

一、基本预防性措施

1.保持系统和应用程序及时更新

2.移除或禁用非必需的服务和协议

3.使用入侵检测和防御系统(IDP)

4.使用最新版本的反恶意软件程序

5.使用防火墙

6.实施配置和系统管理流程

二、理解攻击

安全人员需要充分理解常见攻击方法,域3涉及密码学攻击、域4涉及网络攻击、域5涉及访问控制攻击、域8涉及恶意代码。

1.僵尸网(botnets)

具备访问互联网的设备(终端、服务器、IoT设备、智能手机等)受到攻击,被植入恶意代码后,可以被黑客远程控制,这样的终端或服务器被称为僵尸主机(bots or zombies hosts);海量僵尸主机形成的网络被称为僵尸网(botnets)。

• 僵尸网主要目的用于发动DDoS攻击,也用于窃取用户数据等。

• 防御手段包括但不限于用户安全意识培训(用户)、反恶意软件程序(主机)、防火墙(边界)、威胁情报等(知识)。

2.拒绝服务攻击(DoS)

DoS攻击的目标是使目标拒绝服务或缓慢提供服务,攻击源一般是一个,由于单机性能的提升,基于流量型的不太好使了。

• 分布式拒绝服务(DDoS)攻击是DoS的升级版,配合僵尸网实现多打一,利用资源优势碾压目标。

• 分布式反射型拒绝服务(DRDoS)攻击时DDoS的一种,特点在于利用公共资源(如DNS服务器)放大攻击流量。

• 最有效应对流量型DDoS攻击的措施是与运营商合作,在管道侧将攻击流量清洗掉。

3.SYN Flood攻击

利用TCP三次握手机制的漏洞,伪造源IP地址向目标发送大量SYN包建立半连接而不回复ACK,导致目标为了维护半连接而导致内存塞满,进而无法响应正常服务请求。

• 拒绝服务攻击的一种形式。

• 防御手段包括但不限于SYN cookie(替代建立半连接)、源认证(代理回复ACK确认对方真实性)、缩短会话超时时间(释放内存空间)等。

4.Smurf和Fraggle攻击

×

• Smurf通过伪造源IP,发送ICMP广播让广播域内的主机都对目标主机进行响应,致使目标主机被流量淹没。

• Fraggle与Smurf相似,但利用的是UDP数据包。

对于现在的计算机性能和网络分段来说,这两个攻击不再那么有效。

5.ping flood

×

利用大量ICMP请求包淹没目标,配合僵尸网才有效,通过过滤ICMP echo请求包就能解决。

过时攻击

• Ping of Death:使用超大ping数据包(64KB以上),导致目标系统崩溃(可能引发缓冲区溢出错误)。

• Teardrop:利用TCP分段偏移重叠无法组合,导致目标系统崩溃。

• Land::利用TCP SYN包将源IP和目标IP都伪造成目标IP,导致目标系统不断自己与自己建立连接而崩溃。

6.零日利用(Zero-day Exploit)

零日利用指的是利用其他人还不知道的漏洞(0 day漏洞)的攻击,随着时间的推移会叫1 day、N day等,补丁一旦发布就被称为已知漏洞了。

防护零日利用的方法包括基本预防措施,以及蜜罐(honeypots)和APT检测(沙箱)可用于发现0 day攻击行为。

7.中间人攻击(MiTM)

也叫路径上攻击(on-path attack),两个终端通信之间被攻击者监听(嗅探攻击)或代理(可篡改数据)。

嗅探攻击极难被检测到,代理攻击可以被防代理机制或异常网络活动检测到。

8.蓄意破坏(Sabotage)

指的是内部员工对自己所在组织实施破坏的犯罪活动,包括物理和技术破坏。蓄意破坏一般发生在员工对组织心怀不满时(如工资待遇、怀才不遇等),防范机制是做好人员安全管理。

三、入侵检测和防御系统

入侵检测系统(IDS)用于检测攻击行为,入侵防御系统(IPS)用于预防或防御攻击行为,IPS包含检测能力,也称之为入侵检测和防御系统(IDPS)。

1.基于知识和基于行为的检测

基于知识的检测:也叫基于签名或模式匹配检测,检测速度快、误报率低,无法检测未知攻击。

基于行为的检测:也叫统计型入侵检测、异常检测和基于启发检测,检测速度慢、误报率高,可以检测未知攻击。

两个场景中关于误报的四个概念

img

真阳性(True positive):事故发生被检测到。

假阴性(False negative):事故发生没有被检测到。

假阳性(False positive):事故没发生被检测到。

真阴性(True negative):事故没发生没有被检测到。

img

真阳性(True positive):注册用户尝试身份验证并成功验证。

假阴性(False negative):注册用户尝试身份验证但验证失败。

假阳性(False positive):虚假用户尝试身份验证并成功验证。

真阴性(True negative):虚假用户尝试身份验证但验证失败。

结果合理则为真,结果不合理则为假;机制执行成功则为阳,机制执行失败则为阴。

一般我们只会提及假阴性(漏报和错误拒绝率高)和假阳性(误报和错误接受率高),因为他们不符合预期结果。

2.IDS响应

IDS在发现安全事故后,会以被动或主动方式做出响应。

• 被动响应:该方式不会影响组织环境,仅通过邮件、短信、弹窗消息等方式通知管理员。

• 主动响应:该方式通过改变组织环境来拦截攻击,如给防火墙下发访问控制策略。

被动响应的优势在于不会惊动黑客的攻击行为,这也是IDS较IPS的优势所在,而主动响应则会打断黑客当前的攻击进程,迫使黑客放弃或尝试绕过。

3.基于主机或基于网络的IDS

• 基于主机的IDS:检测主机的行为来发现异常,如进程活动、日志信息等,检测能力强、管理和经济成本高、占用系统资源、易被黑客发现。

• 基于网络的IDS:检测网络流量特征来发现异常,检测能力较弱、管理和经济成本低、不影响系统、隐蔽性高。

越来越多的通信采用TLS加密,虽然提高机密性,但也给安全设备带了挑战——无法检测加密流量中的攻击行为。通过使用TLS解密器(一般叫SSL网关或SSL卸载等),可以解密加密流量让安全设备进行检测,通常是硬件形态(性能原因),部署在组织互联网边界。

4.入侵防御系统

IDS以旁路方式部署,IPS以在线串接方式部署,因此可以实现攻击流量拦截。

四、具体预防措施

1.蜜罐(Honeypots)和蜜网(Honeynets)

蜜罐是单个的计算机,被创建当作陷阱或诱饵来应对入侵者或内部威,多个蜜罐组成的陷阱网络就是蜜网。

• 蜜罐与生产环境中的系统基本一样(不含真实数据),但被人为设置了大量漏洞(即伪漏洞,pseudo-flaws),其目的是吸引攻击者远离生产环境、对攻击行为进行监测和记录用于抵抗0 day。

• 蜜罐和蜜网通常在虚拟系统上构建,方便重建系统,但攻击者容易识别出所在环境是否是虚拟环境。

• 诱惑(enticement)和诱捕(entrapmeng)的区别在于蜜罐所有者是否主动邀请访问者,主动就是诱捕、不合法、类似钓鱼执法,被动就是诱惑、合法行为。

2.警告横幅(Warning Banners)

警告横幅的目的是为了威慑,对象包括授权用户和未授权用户,警告其行为都在监控之下,注意什么能做什么不能做。

3.反恶意软件(Antimalware)

也就是杀毒软件,基于签名和启发式检测能力,需要定期更新规则库来保障反恶意软件能力。除了常见主机反恶意软件,边界的下一代防火墙也具备反恶意软件能力,还有安装在电子邮件服务器上的专用反恶意软件等等,起到纵深防御的能力。

• 通常不建议安装多个反恶意软件,耗费主机性能。

• 限制用户的权限也可以降低恶意软件的影响。

• 教育用户了解恶意软件的危害,能有效对抗社会工程攻击。

4.白名单和黑名单(Whitelisting and Blacklisting)

黑白名单的应用领域非常广泛,包括应用程序限制、网络过滤、访问控制等,黑明单限制已知内容、允许未知内容,白名单允许已知内容、限制未知内容,从安全的角度考虑,白名单优先级高于黑名单。

5.防火墙(Firewall)

防火墙也是主要的预防措施,域4已经详细讨论过。

• 一代墙主要依靠五元组(源IP、目的IP、源端口、目的端口和协议)进行过滤。

• 二代墙加强了应用程序的过滤。

• 三代墙基于会话状态进行过滤。

• 下一代防火墙集成多种过滤功能,包括FW、IPS、AV、URL、TI等,之前被称为统一威胁管理(UTM)系统。

6.沙箱(Sandboxing)

沙箱提供了一个隔离的环境用意运行可疑软件来检测其行为,以此来判断可疑软件的性质,可用于检测0 day攻击。

7.第三方安全服务(Third-Party Security Service)

专业的事情交给专业的人去做,雇佣专业外包人员负责诸如渗透测试、代码审计等工作,也是预防措施的一种。