一、操作系统安全(Operating system security)

安全管理员通常负责配置操作系统以满足组织的安全控制要求。这项配置工作可能包括所有类型的终端设备,从笔记本电脑和服务器到智能手机和平板电脑。这是一项极其重要的责任,因为攻击者可以利用一个端点设备的安全漏洞,然后利用这个权限进入整个网络。

1.限制资源访问
任何操作系统都有许多不同的安全设置,我们可以自定义这些设置以满足自己的组织的安全需求。其中之一是限制用户对管理资源的访问,因为这种级别的管理访问往往会导致安全问题的发生。Windows操作系统可以通过组策略对象(Group policy objects)或GPO来管理许多安全设置。

2.补丁管理
补丁管理(Patch Management),对操作系统和应用程序应用补丁是至关重要的,因为它可以确保这些系统不会受到攻击者发现的安全漏洞的影响。每次软件供应商发现了一个新的漏洞。他们就会创建一个补丁来纠正这个问题。及时应用补丁可以确保一个干净整洁的操作系统和应用环境。在Windows系统上,Windows更新机制是对系统应用安全补丁的最简单的方法,一旦发布,就立即应用。
对于LInux系统,有几种不同的方法来更新,这取决于我们所使用的发行版。对于Ubuntu Linux发行版。使用apt-get命令,这是在一堆发行版中使用的软件包管理器。然后,我们要跟上update命令,获得所有最新的软件包更新。它只是检索一个更新列表。它实际上没有在我的系统中应用任何东西,并没有将更新应用到我的系统中。
我将再次使用命令apt-get upgrade。Update检索软件包的列表,Upgrade实际下载并安装它们。然后,我得到一个长长的清单,上面列出了当我发出这个命令时将被升级的所有软件包。
作为一个安全管理员,我们不仅应该确保自己的系统被配置为接收更新,还应该分析补丁管理过程的输出,以确保这些补丁被正确应用。配置管理工具可以帮助我们实现这项工作的自动化。它们还可以帮助我们跟踪你的组织中运行的应用程序的补丁。

3.系统加固
我们需要执行一项被称为系统加固(System hardening) 的任务。系统加固包括分析我们的操作系统的默认设置,并删除不需要的服务和组件,以满足对应业务需求。当我们执行系统加固时,应该完成几个重要的任务:

  1. 首先,我们应该删除任何不必要的软件或操作系统组件,将系统配置为执行其功能所需的最小功能。这项工作被称为减少攻击面(Reducing the attack surface),在系统上安装的东西越少,攻击者可以利用的东西就越少;
  2. 第二,我们应该配置主机防火墙,只允许访问那些供其他系统使用的开放端口和服务;
  3. 第三,我们应该禁用我们所安装的操作系统或应用程序所附带的任何默认账户和密码。这些默认账户为攻击者提供了一个暴力破解的机会;
  4. 最后,我们应该验证自己的系统配置设置是否符合行业最佳实践。

在Windows系统上,这可能意味着修改注册表设置来配置我们的系统,以满足最低的安全要求。在Linux系统上,我们可能需要修改配置文件来执行类似的加固任务。

二、预防恶意软件(Malware prevention)

Malware是对计算机和移动设备安全的最常见威胁之一。Malware是一个术语,是恶意软件(Malicious Software)的简称,它由专门为破坏信息和系统的保密性、完整性或可用性而设计的软件组成。恶意软件有许多不同的种类,我们需要了解的四种恶意软件:病毒、蠕虫、特洛伊木马和间谍软件(Viruses, Worms, Trojan horses, and Spyware)。

  1. 病毒是恶意代码对象,在人类的一些行动后从一个系统传播到另一个系统。病毒可能通过可移动媒体传播或通过电子邮件附件传播。它们携带恶意的有效载荷,执行病毒作者的意图,如窃取数据或将一个系统加入僵尸网络;
  2. 蠕虫携带的有效载荷与病毒携带的有效载荷相似,但它们有一个重要区别。蠕虫在自己的力量下传播。 它们不需要任何用户行动就能从一个系统移动到另一个系统。它们扫描网络,寻找新的脆弱系统进行破坏;
  3. 特洛伊木马假装是用户可能想要下载和安装的合法软件。 当用户运行该程序时,它确实按照预期执行,然而,木马也在幕后执行恶意的隐藏有效载荷;
  4. 间谍软件是在用户不知情或不同意的情况下收集信息的恶意软件。 然后它将这些信息反馈给恶意软件作者,后者可以将其用于任何类型的目的。这可能是身份盗窃或获得金融账户的访问权,甚至在某些情况下是间谍活动。间谍软件使用许多不同的技术。按键记录器捕捉用户按下的每一个键,然后将其反馈给恶意软件作者,或者它们可能监测对某些网站的访问,并捕捉用于访问银行账户或其他敏感资源的用户名和密码。

我们可以使用现代反恶意软件可以防止病毒、蠕虫、特洛伊木马和间谍软件。反病毒软件使用两种不同的机制来保护系统免受恶意软件的侵害:

  1. 签名检测(Signature Detection) 使用已知恶意软件模式的数据库,并扫描系统的文件和内存,寻找与已知恶意软件模式相匹配的任何数据。如果它发现可疑的内容,就可以从系统中删除该内容或将其隔离,以便进一步分析。当我们使用签名检测时,关键是需要要经常更新病毒定义文件,以确保你对新发现的恶意软件有最新的签名。
  2. 启发式或行为检测(Heuristic or behavior detection) 采取不同的方法。这些系统不使用已知的恶意活动模式,而是试图对正常活动进行建模,然后在发现异常情况时进行报告。偏离这些正常模式的活动。行为检测技术存在于先进的恶意软件保护工具中,被称为端点检测和响应(Endpoint Detection and Response)或EDR解决方案。这些先进的工具超越了基本的签名检测,并对端点进行深度检测。它们分析内存和处理器的使用、注册表项、网络通信和其他系统行为特征。EDR解决方案通过使用安装在端点设备上的代理来观察恶意活动的迹象,对恶意软件和其他安全威胁提供高级实时保护。然后,它们可以触发自动响应,以保护系统免受攻击。

此外,这些解决方案通常具有执行沙盒(Sandbox) 的能力。当系统收到一个可疑的可执行文件时,高级恶意软件保护系统会将该可执行文件发送到恶意软件沙箱,然后再允许它在受保护的系统上运行。在该沙盒中,恶意软件保护解决方案运行该可执行文件并观察其行为,检查是否有可疑活动。如果恶意软件的行为类似于攻击,就不允许它在受保护的端点上执行。

垃圾邮件过滤(Spam Filtering) 是另一种类型的过滤,如果我们使用管理的电子邮件服务,如谷歌应用程序或微软Office 365,可能不需要做任何事情。垃圾邮件过滤是由这些服务提供商内置的,而且效果相当好。但是,如果我们正在运行自己的电子邮件服务器,一定要配置垃圾邮件过滤,以防止不需要的信息到达用户收件箱。

恶意软件保护工具为网络安全分析人员提供了非常重要的信息。然而,除非我们使用一个集中的监控系统,否则这些有用的信息会存在于在管理员无法接触到的终端上。出于这个原因,我们应该将所有反恶意软件配置为直接向安全信息和事件管理系统或专门的恶意软件管理解决方案报告结果。在那里我们可以分析恶意软件的发现结果,以确定重要的安全问题。

三、应用管理(Application management)

1.黑白名单
防止恶意软件的最好方法之一是用一种叫做应用控制(Application control)的技术防止用户运行不需要的应用程序。应用控制将系统上运行的软件限制在符合组织安全策略的程序上。应用控制有两种主要方法:白名单(Whitelisting)和黑名单(Blacklisting)。

  1. 在白名单方法中,管理员创建一个用户可以在其系统上运行的所有应用程序的列表。这在一个非常严格控制的环境中效果很好,但如果我们有许多不同的应用程序和角色,它就很难管理;
  2. 黑名单的方法为用户提供了更大的灵活性。管理员不是列出允许用户运行的应用程序,而是列出禁止的应用程序。这对用户来说要容易得多,但它降低了应用控制的有效性。

注意,许多网络安全专业人员发现 "白名单 "和 "黑名单 "这两个术语正在慢慢退出使用,转而使用 "允许列表 "和 "拒绝列表 "等术语。
2.应用控制
应用控制技术为网络安全分析人员提供了重要信息。因此,我们应该将应用控制日志连接到我们的安全信息和事件管理系统或中央日志库。一旦我们把这些日志放在一个安全的、集中的位置,就可以观察它们是否有恶意活动的迹象。但除非我们定期存储和分析这些日志,否则将无法获得这些信息。Windows提供了应用锁(App locker)功能来实现应用控制,应用锁在组策略中实现。

3.应用程序打补丁
给应用程序打补丁也很重要,因为应用程序也可能有严重的安全漏洞。不同的软件供应商提供不同的补丁机制。许多更新机制是自动的,可以在应用程序的设置中启用。用户可以自己检查更新,也可以由管理员通过其正常的软件部署机制来部署。如何应用更新不一定重要,只要我们确实应用了更新。
4.主机软件基线检查
最后,使用我们选择的系统配置管理器进行主机软件基线(Host Software Baselining)检查是一个好的做法。主机软件基线使用一个标准的软件清单,这是我们希望在自己的环境中的系统上看到的软件。然后报告与该基线的偏差,这将能够识别在我们的环境中运行的不需要的软件。

四、基于主机的网络安全控制(Host-based network security control)

1.防火墙
防火墙是一种重要的安全控制手段,它们监控启动通信的尝试,只允许那些符合企业安全策略的连接通过。防火墙遵循默认拒绝原则(Default Deny Rule),即任何没有明确允许的网络连接都应该被阻止。只有当管理员确定连接是满足业务要求所必需的,并在防火墙规则中包括这种类型的连接时,才应连接到计算机。防火墙有两种不同的形式:

  1. 网络防火墙(Network Firewalls) 是位于两个网络之间的硬件设备,控制这些网络之间的连接。组织将网络防火墙置于其网络的边界,在组织的网络和互联网之间。这种网络防火墙构成了组织外围防御的一个重要部分。网络防火墙只限制那些通过防火墙的连接。同一网络上的系统之间的连接不受网络防火墙的限制,因为流量不通过它。
  2. 基于主机的防火墙(Host Firewall) 以类似方式工作,但它们不是硬件设备,而是软件。通常是位于个人工作站或服务器上的操作系统(例如Windows的防火墙)的一部分。主机防火墙限制任何试图从网络上的任何其他系统连接到该个人计算机的行为。它们是网络安全深入防御方法的一个重要组成部分。

下一代防火墙(Next-Generation Frewall)在现有防火墙技术的基础上增加了额外的安全功能,例如,它们可能具有上下文感知能力,将用户的身份信息、他们的行动性质和他们过去的行为纳入防火墙决策等。

2.IDS和IPS
入侵检测和防御系统(Intrusion detection and Prevention systems )是另一个重要的网络安全控制。这些系统监测网络流量的可疑活动,如果是入侵检测系统,则提醒管理员注意可疑的活动。入侵防御系统则更进一步,实际进行干预,阻止可疑的活动。与防火墙一样,入侵检测和预防系统有基于网络和主机的两种形式。与防火墙不同的是,IDS和IPS的功能通常不作为操作系统组件出现。希望补充其基于网络的IDS和IPS系统的组织必须购买第三方安全软件包来实现这一技术。
与其他基于主机的安全技术一样,主机防火墙和主机入侵检测和预防系统为安全分析提供了一个信息宝库。我们可以把它们把信息记录到我们的安全信息和事件管理系统或集中式日志库中。当我们分析这些日志时,要注意被拒绝的访问模式,以确定可能的入侵企图。我们还可以使用防火墙日志来帮助重建网络上发生的活动。

五、文件完整性监测(File integrity monitoring)

文件完整性监测是纵深(Defense-in-depth)网络安全方法的一个重要组成部分。我们有许多不同的防御措施,旨在保持我们的终端系统安全。

  1. 反病毒软件的设计是为了在恶意文件在入侵终端时发现它们;
  2. 集中的多因素认证可以防止有人企图破坏用户账户;
  3. 主机入侵检测和预防系统提醒我们注意潜在的损害,有时甚至阻止它们。

然而,深度防御的原则表明,我们应该有控制措施,可以帮助我们检测到入侵,即使这些其他系统失效。文件完整性监控是这种类型的控制的一个很好的例子。文件完整性监控系统观察终端或服务器的文件系统是否有任何意外变化,然后将这些变化报告给管理员,以便进一步调查。 它们通过加密哈希函数运行每个被监控的文件,将得到的哈希值存储在一个安全的位置。然后他们定期运行同样的检查,并将新的哈希值与旧的哈希值进行比较。如果哈希值发生了变化,完整性监控软件就知道文件发生了变化,然后可以检查自己的配置,看看这种变化是否是预期的。Tripwire就是一个实现文件完整性监控的软件包。

文件完整性监控系统的管理员需要进行一些配置,以帮助系统确定哪些变化是预期的,哪些不是。例如,我们肯定希望计算机系统中的日志文件经常变化。如果文件完整性监测系统在文件中每次出现新的日志条目时都发出警报,就不正常了。但是,如果一个日志文件消失或减少,这将是值得注意的。另一方面,如果一些核心操作系统的可执行文件发生变化,这可能是一个恶意软件感染的迹象,应该仔细调查。

作为一名网络安全专业人员,我们还会经常会被要求分析文件完整性监测系统的输出,并认识到假阳性(False positive )告警和真正入侵之间的区别。这需要分析发生变化的文件类型,并理解其背景。例如,如果系统管理员昨晚应用了安全补丁,我们应该想到许多操作系统文件会发生变化并触发警报。然而,如果同样的文件在没有预定补丁的情况下发生变化,就可能是一个问题。

最后,文件完整性监控通常是作为一种合规性要求进入组织的。例如,支付卡行业数据安全标准对使用这项技术有明确要求。

六、数据丢失预防(Data loss prevention)

数据丢失预防(Data loss prevention),或称DLP解决方案,提供技术,帮助企业执行信息处理政策和程序,以防止数据丢失和盗窃。DLP解决方案搜索系统中可能不安全的敏感信息存储,并监测网络流量,以发现从组织中删除敏感信息的潜在企图。然后,DLP解决方案可以迅速采取行动,在损害发生之前阻止传输,并提醒管理员注意企图的破坏。DLP系统在两种不同的环境中工作:

  1. 基于主机的DLP(Host-Based DLP)使用安装在单个系统上的软件代理,搜索该系统是否存在敏感信息。这些搜索经常在最不可能的地方发现身份证号、信用卡号码和其他敏感信息。检测到存储的敏感信息的存在,使安全专业人员能够迅速采取行动,删除这些信息或对其进行加密保护。基于主机的DLP还可以监控系统配置和用户行为,阻止不合规的行为。例如,一些组织使用基于主机的DLP来阻止用户访问基于USB的可移动媒体设备,他们可能会用这些设备将信息带出组织的安全环境。
  2. 基于网络的DLP(Network-Based DLP)系统专注于保护网络连接。它们监测出站的网络流量,观察任何包含未加密的敏感信息的传输。然后,它们可以阻止这些传输,防止敏感信息不安全地丢失。DLP系统可以简单地阻止违反组织政策的流量,或者,在某些情况下,它们可以自动对内容进行加密。这种自动加密通常用于专注于电子邮件的DLP系统。

DLP系统也有两种行动机制:

  1. 首先,它们可以进行模式匹配(Pattern Matching),观察敏感信息的蛛丝马迹。例如,如果它们看到一个数字的格式像信用卡或身份证号,就可以自动触发该模式。同样,它们可能包含一个敏感术语的数据库,如最高机密或商业机密,当它们在文件中看到这些术语时就会触发;
  2. DLP系统的第二种工作方式是通过使用水印(Watermarking),即系统或管理员对敏感文件应用电子标签,然后DLP系统监控系统和网络中包含这些标签的未加密内容。

在Windows系统上,我们可以使用基于主机的DLP工具,称为Spirion。这是一个相当用户友好的工具,可以扫描我们的系统是否存在敏感信息,并对其进行后续操作。DLP系统也可以作为基于云的安全管理服务运行。服务提供商操作一个DLP系统,客户在云中访问。这种服务交付模式减轻了客户自己操作和维护DLP系统的负担。

整理资料来源:
https://www.linkedin.com/learning/paths/become-a-comptia-security-plus-certified-security-professional-sy0-601

Security+ 学习笔记33 主机安全相关推荐

  1. 影像组学视频学习笔记(33)-使用SimpleITK实现医学影像差值、Li‘s have a solution and plan.

    作者:北欧森林 链接:https://www.jianshu.com/p/afcd06221ea4 来源:简书,已获转载授权 RadiomicsWorld.com "影像组学世界" ...

  2. spring security——学习笔记(day05)-实现自定义 AuthenticationProvider身份认证-手机号码认证登录

    目录 5.2 自定义 Provider 身份认证 5.2.1 编码思路和疑问 5.2.2 创建用户信息配置类 PhonePasswordAuthenticationToken 5.2.2 修改自定义的 ...

  3. JAVA学习笔记33——模拟实现HandSet+数据存储综合练习(javabean版+容器板)

    最近在看JAVA教学的视频,觉得老师讲的很好,同时借用源代码还有笔记来撰写本系列博客,记录自己的学习内容,同时也供看到的人学习. 本篇第一个内容是模拟实现HandSet,其实这个模拟和之前的相比简陋了 ...

  4. 有关Expander组件的研究——Silverlight学习笔记[33]

    Expander组件常用做边栏目录的分类,比如Windows中"我的文档"的侧边栏.本文将为大家介绍该组件的基本特性以及实际应用. 组件所在命名空间: System.Windows ...

  5. Java学习笔记33

    关于Set这个接口,我们在前面的笔记中提到过,Set是代表无序.不可重复的集合,其实Set就是一个不包含重复元 素的collection.关于Set不包含重复元素的标准是:不包含满足e1.equals ...

  6. 学习笔记(33):Python网络编程并发编程-进程池线程池

    立即学习:https://edu.csdn.net/course/play/24458/296451?utm_source=blogtoedu 进程池与线程池: 一般应用在网站上,进程池或线程池最大的 ...

  7. Security+ 学习笔记44 网络攻击

    一.拒绝服务攻击(Denial of service attacks) CIA三要素描述了信息安全的三个目标,即保密性.完整性和可用性.攻击者使用的大多数攻击技术都集中在破坏数据的保密性或完整性上. ...

  8. SpringBoot + Spring Security 学习笔记(一)自定义基本使用及个性化登录配置

    官方文档参考,5.1.2 中文参考文档,4.1 中文参考文档,4.1 官方文档中文翻译与源码解读 SpringSecurity 核心功能: 认证(你是谁) 授权(你能干什么) 攻击防护(防止伪造身份) ...

  9. 机器学习李宏毅学习笔记33

    文章目录 前言 一.神经网络压缩 二.Network pruning----一种network compression技术 1.移除不同单位的区别 2.大乐透假说 总结 前言 神经网络压缩(一) 类神 ...

  10. 计算机组成原理学习笔记:主机各个硬件部件和工作过程

    概述 现代计算机的基本构成都是基于冯诺依曼结构的思想来设计的, 主要有五大硬件部件 我们研究下主机内部的三个硬件部件:主存储器,运算器,控制器的内部细节 三者之间是如何协调工作的 主存储器 主存储器里 ...

最新文章

  1. 【Qt】通过QtCreator源码学习Qt(七):插件管理类简介
  2. test markdown
  3. IBMDB2数据库软件安装教程
  4. Linux C编程之二:Linux基础
  5. 宜人贷,指旺理财,投米网有什么不一样?
  6. Android中的各种Adapter
  7. 用python写脚本看什么书-终于知晓python编写脚本入门教程
  8. 考公务员的本科学历可以考吗
  9. Python之gmplot:gmplot库的简介、安装、使用方法之详细攻略
  10. OpenJudge 2757 最长上升子序列 / Poj 2533 Longest Ordered Subsequence
  11. css_04 | CSS——CSS 值和单位
  12. python之torchlight使用_python游戏编程之pgzero使用介绍
  13. python -lambda表达式的用法
  14. 黑盒法测试c语言,黑盒测试的测试用例设计方法(经典理论知识,推荐)
  15. 判断IE关闭还是刷新
  16. java毕业设计——基于java+Eclipse的扫雷游戏设计与实现(毕业论文+程序源码)——扫雷游戏
  17. Python Pitfall: 时间戳长度- 10位和13位时间戳
  18. 鬼谷子谋略之空手套白狼
  19. RNA-seq流程学习笔记(18)- Heatmap图
  20. android u盘 uuid,Android4.4KitKat支持u盘功能

热门文章

  1. PyTorch学习—2.张量的创建与张量的操作
  2. numpy-np.concatenate
  3. embedding与pytorch中squeeze()和unsqueeze()函数介绍
  4. 连载丨《极简设计:苹果崛起之道》——硅谷伊甸园(二)
  5. 博文视点OpenParty第11期“世界黑客大会那些事儿”成功举办
  6. numpy线性代数基础 - Python和MATLAB矩阵处理的不同
  7. keras load model 并保存特定层 (pop) 的权重save new_model
  8. 1g的树莓派4b能做什么_树莓派4B系统安装及配置
  9. request payload怎么发_如果不是你,我也不会发朋友圈
  10. docker 容器安装conposer_docker和composer安装