Cybersecurity
微软 Cybersecurity for Beginners 课程学习笔记。
参考:
基础安全概念
保密性完整性可用性
网络安全(cybersecurity),又称信息安全,指保护计算机系统、网络、设备和数据免受数字攻击、未经授权的访问、破坏或盗窃。它的主要目标是保护数字资产和信息的保密性(confidentiality)、完整性(intergrity)和可用性(availability)。
保密性,是保护数据和信息免遭未经授权访问的过程。
完整性,指保护环境中所含数据的准确性和可信度,不允许未经授权的个人修改数据。
可用性,是整个运营系统要考虑的问题,保证业务可用。
真实性(authenticity),保证与你互动的信息或实体是真实的,没有被未经授权的各方篡改。
不可抵赖性(nonrepudiation),确保一方无法否认其参与或通信的真实性。
隐私性(privacy),保护敏感信息不被未经授权的访问、使用、披露或篡改。
常见的网络安全威胁
什么是网络安全威胁
网络安全威胁是指有可能损害数据或 IT 系统的保密性、完整性和可用性的任何潜在风险。这些威胁是由恶意行为者造成的,他们试图利用漏洞获得未经授权的访问、窃取敏感信息、破坏运营,对个人、组织等造成伤害。
为什么恶意行为者想要破坏数据和系统
通常是出于个人利益、意识形态或造成破坏的愿望。了解这些动机有助于更好地抵御网络威胁。有助于更好地抵御网络威胁。
恶意攻击者的一些常见原因:
- 经济收益
- 间谍活动
- 干扰和破坏
- 意识形态动机
- 无意行动
常见的网络安全威胁有哪些
- 网络钓鱼(Phishing):指发送看似来自合法来源的欺骗性信息,以诱骗收件人泄露敏感信息。
- 恶意软件
- 勒索软件
- 木马
- 病毒
- 蠕虫
- DoS/DDoS
- SQL 注入
- XSS
- 社会工程学:利用人的心理,操作个人泄露机密信息。
- 零日漏洞:针对软件或硬件中尚未被公众所知的漏洞。
- 凭证攻击:包括暴力破解和凭证填充攻击(从一个网站获取的密码来尝试另一个网站)。
什么是ATT&CK 框架
对抗战术、技术和常识 (ATT&CK Adversarial Tactics, Techniques, and Common Knowledge)是一个对对手在网络攻击中使用的战术、技术和程序进行编目和分类的框架。由 MITRE 公司创建。
- 了解敌对行为:该框架记录了真实世界的攻击行为,概述了攻击者从最初进入到实现目标的步骤。
- 规划和实施防御策略
- 事件响应和威胁猎取
在哪里了解网络安全威胁
- Open Web Application Security Project (OWASP) top 10 vulnerabilities
- Common Vulnerabilities and Exposures (CVEs)
- Microsoft Security Response Center blogs
- National Institute of Standards and Technology (NIST)
- Cybersecurity and Infrastructure Security Agency (CISA)
风险管理
常用安全术语的定义
- Threat Agent:威胁代理指有可能利用系统或网络漏洞造成危害或破坏的个人、团体或系统。
- Threat:威胁是一种可能利用系统漏洞并对资产造成损害的潜在事件或行为。
- Vulnerability:漏洞是系统中的缺陷,可被威胁者利用来破坏系统的安全性。
- Risk:风险是指威胁与漏洞之间的相互作用可能造成的损失或破坏。
- Asset:资产是指组织寻求保护的任何有价值的东西。
- Exposure:暴露是指容易受到潜在威胁的状态。
- Control:控制是为了降低与漏洞和威胁相关的风险而采取的措施。
安全控制类型
- Administrative Controls
- Technical Controls
- Physical Controls
- Operational Controls
- Legal and Regulatory Controls
评估安全风险
组织必须不断评估安全风险,并决定针对业务采取什么行动。
- 识别资产和威胁
- 评估漏洞
- 可能性评估
- 影响评估
- 风险计算
- 确定优先次序和决策
- 风险处理
- 持续监测和审查
安全实践
安全策略
安全策略是一份高级文件,概述了组织的总体安全目标、原则和知道方针。
安全标准
安全标准是一份更详细、更具体的文件,为在组织内实施安全控制和措施提供指导和要求。
安全基线
安全基线是一套最低限度的安全配置,被认为是系统或程序在某一时刻的必要条件。
安全准则
安全准则是在特定安全标准不适用时提供建议和指导的文件。
安全处理流程
安全处理流程是一份详细的分步骤指南,概述了执行安全相关流程或任务时需要执行的具体操作和任务。
网络安全方面法律法规
零信任
零信任(zero trust),是一种网络安全方法,它对传统的 “信任但要验证” 的概念提出了挑战,认为任何实体,无论是组织内部还是外部,都不应该被固有地信任。相反,零信任主张对试图访问资源的每个用户、设备和应用程序都进行验证。零信任的核心原则是尽量减少攻击面,降低安全漏洞的潜在影响。
零信任模型强调以下原则:
- 验证身份
- 最小权限
- 微分段:将网络资源划分为较小的网段,以便在发生漏洞时限制网络内的横向移动。
- 持续监测
- 数据加密
- 严格的访问控制
分担责任模式
IAM基础
IAM(Identity access management),身份和访问管理。
IAM概念
身份和访问管理,是一整套流程、技术和政策,实施这些流程、技术和政策是为了确保正确的个人能够适当地访问组织数字环境中的资源。IAM 主要目标是提高安全性,简化用户访问,并确保符合政策和法规。
最小权限原则,主张只授予用户和系统执行其预定任务或角色所需的最低权限。
职责分离,旨在通过在组织内不同个人之间分配关键任务和职责,防止利益冲突,降低欺诈和错误风险。
身份认证(authentication),是对试图访问系统或特定资源的用户或实体的身份进行验证的过程。
授权(authorization),是在验证用户的身份后,授予或拒绝其特定权限的过程。
IAM零信任架构
IAM能力
目录服务
目录服务(directory service),是一种专门的数据库,用于存储和管理有关网络资源的信息,包括用户、组、设备、应用程序和其他对象。它是身份和访问相关数据库的集中存储库,允许企业有效管理和控制用户身份验证、授权和其他安全相关的任务。
目录服务为 IAM 解决方案奠定了基础。最著名的目录服务之一是 MS Active Diretory 和 LDAP。
在网络安全方面,目录服务的主要功能:
- 用户认证
- 用户授权
- 组管理
- 密码策略
- SSO(Single Sign-On)
- 集中用户管理
- 审计和日志
确保身份安全
什么样的能力能够确保身份安全:
- Multi-Factor Authentication (MFA):要求用户在允许访问前提供多种形式的验证。
- Single Sign-On (SSO):允许用户使用一套凭证访问多个应用程序和系统。
- Role-Based Access Control (RBAC):根据预定义的角色分配权限。
- Adaptive Authentication:自适应身份验证可评估位置、设备、访问时间和用户行为等风险因素,从而动态调整所需的身份验证级别。
- Biometric Authentication:生物识别身份验证利用独特的生物特征(如指纹、面容等)进行身份验证。
- Privileged Access Management (PAM):重点是通过对账户实施严格控制,确保对关键系统和数据的访问安全。
- Identity Governance and Administration (IGA):身份治理和管理在整个生命周期内管理用户身份及其对资源的访问。
- Behavioral Analytics:行为分析可监控用户行为并建立基线模式。偏离正常模式的行为会触发警报,以便进一步调整。
网络安全基础
网络概念
IP地址
IP 地址/协议,是分配个连接到使用互联网协议进行通信的计算机网络的每台设备的数字标签。有两个版本:IPv4 和 IPv6。
OSI模型
OSI(Open Systems Interconnection)模型,是一个概念框架,它将通信系统的功能标准化为七个层。每一层都执行特定任务,并于相邻层通信,以确保网络设备之间高效可靠的数据通信。
层 | 功能 | ||
---|---|---|---|
Host layers | 7 | Application | 高级协议,如资源共享或远程文件访问,如 HTTP |
6 | Presentation | 在网络服务和应用间传输数据,包括字符编码、数据压缩和加解密等 | |
5 | Session | 管理通信会话 | |
4 | Transport | 网络上端点之间数据段的可靠传输,包括段和 ACK | |
Media layers | 3 | Network | 网络寻址、路由和流量控制 |
2 | Data Link | 物理层连接的两个节点之间的数据帧的传输 | |
1 | Physical | 通过物理媒介传输和解析原始比特流 |
TCP/UDP
TCP(Transmission Control Protocol)和 UDP(User Datagram Protocol)是计算机网络中使用的两个基本传输层协议,用于促进互联网或本地网络设备之间的通信。
TCP 是一种面向连接的协议,可在设备之间提供可靠、有序的数据传输。它在数据交换开始之前在发送方和接收方之间建立连接。它可确保数据包按正常顺序到达,并处理丢失数据包的重传,以确保数据的完整性和完备性。如网页浏览、电子邮件、文件传输和数据库通信等。
UDP 是一种无连接的协议,数据传输更快,但可靠性不如 TCP。它在发送数据前不建立正式连接,也不包括确认和重传丢失数据包的机制。它适用于速度和效率比保证交付更重要的应用,如实时通信、流媒体、在线游戏和 DNS 查询等。
总之,TCP 优先考虑可靠性和有序传送,因此适用于要求数据准确的应用。而 UDP 则强调速度和效率,因此适用于可以接受少量数据丢失以换取延迟的应用。
端口号
在网络中,端口号是一种数字标识符,用于区分网络中单个设备上运行的不同应用程序。端口有助于将数据的输入路由到响应的应用程序。端口号是 16-bit 无符号整数(0-65535),分为三个范围:
- 常用端口(0-1023):为标准服务保留,如 HTTP 80。
- 注册端口(1024-49151):用于不属于知名范围但以正式注册的应用程序。
- 动态/私有端口(49152-65535):可供临时和私有使用。
静态和传输中加密
静态加密(encryption at rest):包括对存储在设备、服务器或存储器系统中的数据进行加密。
传输加密(encryption in transit):包括在数据在设备间或网络上传输时对其进行加密。可防止数据在传输过程中被窃听和未经授权的截取。传输过程中加密的常用协议包括 HTTPS、TLS/SSL。
网络零信任
网络分段
网络分段是将网络划分为更小、更孤立的网段。每个网段与其他网段隔离,网段之间的访问根据特定的安全策略进行控制和限制。通过控制潜在漏洞的影响和限制攻击者在网络内的横向移动来提高安全性。
通过实施网络分段,企业可以创建区域,将不同类型的用户、应用程序和数据分开。这样可以减少攻击面、最大限度地降低安全事故可能造成的损失。
网络分段帮助实现零信任
网络分段与零信任模式的原则密切相关。有助于执行最小权限原则,实施严格的访问控制、隔离关键资产并防止攻击者横向移动。
端到端加密
端到端加密(E2E, end-to-end),可确保数据从发送发到接收方的整个过程中保持加密。数据在发送端加密、只有接收方才有解密的密钥。可为数据传输提供高水平的保密性和安全性。
安全接入服务边缘
安全接入服务边缘(SASE, Secure Access Service Edge),将网络安全和广域网整合到一个基于云的服务中。
SASE 的关键特点:
- 基于云
- 安全和网络一体化
- 零信任
- 以身份为中心
- 可扩展性和灵活性
网络防护能力
防火墙
传统防火墙(Firewalls),是根据预定义安全规则和监控出入网络流量的安全设备。它们是受信任的内部网络与不受信任的外部网络之间的屏障,可过滤流量,防止未经授权的访问和潜在威胁。
WAF
WAF(Web Application Firewalls),旨在保护网络应用免受各种攻击,如 SQL 注入、跨站脚本和其他漏洞。它们分析 HTTP 请求和响应,以识破和阻止针对网络应用程序的恶意流量。
云安全组
安全组是云服务提供商提供的一项基本网络安全功能,可充当虚拟防火墙,控制云资源的出入站流量。
CDN
内容分发网络(CDN),是由位于不同地址位置的服务器组成的分布式网络,可通过缓存内容并从更靠近用户的服务器提供服务,帮助提高网站的性能和可用性。
负载均衡器
负载均衡器将进入的网络流量分配给多个服务器,以优化资源利用率、确保高可用性并提高应用性能。
堡垒机
堡垒机(Bastion Hosts)是高度安全和隔离的服务器,提供从外部不信任网络对网络的受控访问。
VPN
VPN 在用户和远程服务器之间创建加密隧道,确保在互联网等潜在不安全的网络上进行安全、私密的通信。VPN 通常用于提供对内部网络的远程访问。
DDoS保护工具
DDoS 防护工具和服务旨在减轻 DDoS 攻击的影响,它可识别并过滤掉恶意流量,确保合法流量仍能达到预定的目的地。
安全运维基础
SecOps
安全运维概念
企业内部的安全运维职能
企业内的安全运维职能,是指负责监控、检测、调查和应对网络安全威胁和事件的专门团队。团队通过主动识别和降低安全风险以及有效应对安全事件,确保企业数字资产的机密性、完整性和可用性。
安全运维可采取的形式
- 安全运维中心:负责全天候监控、分析和响应安全事件的团队。
- 事件应急小组
- 威胁猎杀小组
- 红队/蓝队
- 托管的安全服务提供商
安全运维与传统运维
事件响应工作流程
安全运维零信任
现代IT环境中的安全运维的最佳实践:
- 集中收集日志
- 持续监控
- 威胁情报
- 用户培训
- 事件响应计划
- 安全自动化
- 备份和恢复
安全运维能力
安全信息和事件管理工具
安全信息和时间管理工具,用于分析整个组织 IT 环境中生成的安全警报。
XDR
扩展检测和响应(XDR, Extended Detection and Response)是一种技术,扩展了川端端点检测的功能,并将其与来自各种来源的更广泛的安全遥测数组相结合,以提供更全面的组织安全态势视图。
加强安全运维的能力
- 机器学习和人工智能
- 用户和实体行为分析
- 威胁情报反馈
- 安全协调、自动化和响应
- 欺骗技术
应用安全基础
AppSec
应用安全概念
应用程序安全,指保护应用程序免受安全威胁、漏洞和攻击的实践。包括在应用程序的整个开发、部署和维护生命周期中用于识别、减轻和预防安全风险的流程、技术和工具。
应用程序安全至关重要,因为应用程序是网络攻击的常见目标。
应用安全的关键原则
- 设计安全:从一开始就将安全性融入到应用程序的设计和架构中。
- 输入验证:所有用户输入都应进行验证,确保复合预期,不含恶意代码或数据。
- 输出编码:发送到客户端的数据应正确编码,以防出现跨站脚本等漏洞。
- 认证和授权
- 数据保护
- 会话管理
- 安全依赖
- 错误处理和记录
- 安全测试
- 安全软件开发生命周期
应用安全能力
应用安全关键能力和工具:
- 静态应用安全测试
- 功能:分析源代码、字节码或二进制,找出漏洞。
- 工具:Fortify, Checkmarx, 和 Veracode。
- 动态应用安全测试
- 功能:通过发送输入请求和分期响应,扫描运行中的应用程序以识别漏洞。
- 工具:ZAP, Burp Suite, 和 Qualys Web Application Scanning。
- 交互式应用程序安全测试
- 功能:结合静态和动态的元素,在运行时分析代码,提供更准确的结果。
- 工具:Contrast Security 和 HCL AppScan。
- 运行时应用程序自我保护
- 功能:实时监控和保护应用程序,在出现安全时及时发现并作出响应。
- 工具:Veracode Runtime Protection and F5 Advanced WAF with RASP.
- WAF
- 功能:在应用程序和互联网之间提供一个保护层,过滤流量并阻止恶意请求。
- 工具:ModSecurity, AWS WAF, and Akamai Kona Site Defender.
- 依赖扫描
- 功能:识别应用程序中使用的第三方库和组件中的漏洞。
- 工具:OWASP Dependency-Check and Snyk.
- 渗透测试
- 功能:模拟真实世界的攻击,以发现漏洞并评估安全性。
- 工具:Metasploit and Nmap
- 安全扫描和分析
- 功能:扫描已知漏洞、配置错误和安全配置错误。
- 工具:Nessus, Qualys Vulnerability Management, and OpenVAS.
- 容器安全工具
- 功能:确保容器环境的安全。
- 工具:Docker Security Scanning and Aqua Security.
- 安全开发培训
- 能力:为开发团队提供安全培训。
- 安全测试框架
- 工具:OWASP Amass, OWASP OWTF and FrAppSec.
- 安全代码审查
- 功能:审查源代码中的漏洞和编码
- 工具:SonarQube and Checkmarx.
- 安全API和微服务工具
- 功能:确保 API 和微服务的安全
- 工具:Apigee, AWS API Gateway, and Istio.
基础设施安全
基础设施
安全卫生:
- 预防攻击
- 保护数据
- 维护信任
- 合规性
- 降低风险
安全态势管理,是指对一个组织的整体网络安全态势进行评估、监控和管理的做法。
补丁,是指对软件、操作系统和应用程序软件更新的过程。
容器安全:
- 镜像安全
- 运行时安全
- 网络安全
- 访问控制
- 日志和监控
- 编排安全
- 机密管理