您现在的位置是:首页 > 博文答疑 > 安全攻防技能 要点大纲笔记博文答疑

安全攻防技能 要点大纲笔记

Leo2022-08-18【10】

简介安全攻防技能 要点大纲笔记

下面是学习大纲,仅供后面复习使用。应该不设计版权吧?

 

01,安全原则 CIA:机密性(Confidentiality)、完整性(Integrity)、可用性(Availability)
机密性强调的是不可见性,数据只能被授权的主体访问。
完整性强调的是不可改,数据只能最追加操作,对数据的修改过程进行日志记录。
可用性强调的是可读,数据的可达性。

02, 黄金法则:认证(Authentication)、授权(Authorization)、审计(Audit) Au在元素周期表中代表金。
可在前加上 身份识别(Identification),在后加上 问责(Accounting)。

03, 密码学基础:
对称加密算法:DES(密钥长度56,性能快,国美),IDEA(密钥长度128,性能中,瑞士),AES(密钥长度128、192、256,性能快,国美),SM1(密钥长度128,中国算法保密)和SM4(密钥长度128,中国算法公开)。
非对称加密算法(公钥私钥):RSA(性能快),ECC(加密强度最高的非对称算法),SM2(性能和ECC差不多,中国)
散列算法:MD5(Message-Digest Algorithm 5),SHA(Secure Hash Algorithm),SM3(中国国密)

04,身份认证:对外认证,对内认证。单点登录(SSO)是一种集大成的解决方案。

05,访问控制4种方法:
DAC:(Discretionary Access Control, 自主控制)DAC就是让客体的所有者来定义访问控制规则。
role-BAC:(role Based Access Control,基于角色的访问控制):将主题划分为不同的角色,对角色权限进行定义。
rule-BAC:(rule Based Access Control,基于规则的访问控制):制定某种规则,将主题、请求和客体的信息结合起来进行判定。
MAC:(Mandatory Access Control,强制访问控制):基于安全级别标签的访问控制策略。
此外,威胁评估主要思路:通过识别数据、识别攻击、识别漏洞这三个步骤。

06,XSS攻击: 反射型XSS,基于DOM的XSS,持久性XSS。通过xss攻击,黑客可以窃取Cookie;未授权操作;按键记录和钓鱼。

07,SQL注入:修改WHERE语句;执行任意语句。通过SQL注入,黑客可以:绕过验证、任意窜改数据、窃取数据、消耗资源。
SQ注入防护:使用PreparedStatement;使用存储过程;验证输入。了解 盲注。


08,CSRF 和 SSRF
CSRF 是黑客控制用户的浏览器发起伪造的请求。
SSRF 则是黑客控制服务端发起伪造的请求。通过伪造的请求,黑客可以伪造用户或者服务器的身份,越权获取数据或者发起请求。应用中的请求接口越敏感,黑客能够造成的伤害就越大。

09,反序列化漏洞
应用在输出某个数据的时候,将对象转化成字符串或者字节流,这就是序列化操作。那什么是反序列化呢?没错,我们把这个过程反过来,就是反序列化操作,也就是应用将字符串或者字节流变成对象。
那反序列化漏洞到底是怎么产生的呢?问题就出在把数据转化成对象的过程中。在这个过程中,应用需要根据数据的内容,去调用特定的方法。而黑客正是利用这个逻辑,在数据中嵌入自定义的代码(比如执行某个系统命令)。应用对数据进行反序列化的时候,会执行这段代码,从而使得黑客能够控制整个应用及服务器。这就是反序列化漏洞攻击的过程。
防护方法:认证、限制类和 RASP 检测


10, 信息泄露
间接的信息泄露方式主要是通过拼凑各种零散信息,还原出代码整体的面貌,然后有针对性地发起攻击。
直接的信息泄露,比如程序中的注释,比如http里的注释中携带保密信息,比如.git .svn 这种版本控制工具产生的文件夹部署到了生产环境;把代码发布到github等公开平台。

我们可以从以下几个方面进行防护:
屏蔽信息:通过技术手段,将不该被访问的资源进行屏蔽,从而避免信息泄露的产生;
代码检测:从“白盒”和“黑盒”两个方向,对代码、应用等进行检测,对可能的泄露进行预警;
人工审计:对于非技术原因造成的泄露,加强人工审计的工作。同时从公司制度上,去提高员工的安全意识。


11, 插件漏洞
这里的插件是第三方的插件、依赖库、工具和框架等的统称。
如何建立插件漏洞的防护体系?
第一步:整理插件,剔除无用插件
第二步:管理插件补丁更新
第三步:使用公开漏洞库


12,权限提升和持久化
在进入一个系统后,黑客会进行一系列的操作来扩大自己的权限和攻击影响,这些操作可以被概括为权限提升和权限持久化。权限提升就是利用各种漏洞进行水平或者垂直的扩展,去获得新的身份和权限。
权限持久化则是留下“后门”,并保持“后门”的长期有效性。
对应用和系统进行相应的防御和检测:
最基本的就是强化最小权限原则,限制黑客权限提升的收益。
其次就是对一些异常的入侵行为进行检测,通过分析在网络层或者主机层中,正常用户和黑客的行为异同,从而及时发现黑客的行为。


13, Linux系统安全
Linux安全模型:内核层保护;用户层保护。内核层,保持系统更新就可以。把精力主要花在用户层,确保正确的配置权限。遵从最小权限原则是很重要的一点。
在用户层防护中,使用黄金法则:
认证机制:置顶适当的密码策略,比如每个月修改一次密码;使用已知弱密码库,来检测出使用的弱密码。
授权机制:通过最小权限原则配置对应的读、写、执行 的权限。
审计机制:检测日志,可以使用工具来帮忙监控Linux的日志。
注意:如果你发现需要很多重复的手动操作来完成一项工作时,可以考虑下工具,一般市场上都已经有了相对应的工具可以帮我们完成一些重复性的工作。

14,Linux网络安全
内网中的“最小权限原则”:分区和隔离。水平划分:虚拟网络。垂直划分:使用路由器进行垂直划分。
无线网络安全:最安全的无线网络协议WPA2;强制门户,除了wifi密码外,需要识别用户名和密码。伪造热点诱导用户链接可以获取用户信息,需要扫描检测未知热点。
有线网络安全:主要考虑的问题是劫持,对网络进行合理划分;定期检测发现异常路径。
DDos攻击:用肉鸡代理进行DoS攻击,使服务器down机或者挤占带宽。无法解决。现在云厂商依靠提供额外流量(带宽)保证在遭到攻击时服务依然可用,但也是有限度的。

15,Docker安全
Docker 服务安全:关注隔离,防止逃逸。3 个关键的隔离机制:Namespace 机制、Capabilities 机制和 CGroups 机制。
Docker 守护进程:给远程 API 加上认证功能来保证安全性。
Docker 镜像安全:使用最精简的镜 和最小权限原则。


16, 数据库安全
Redis安全:
认证:设置密码,Redis性能高,容易被暴力破解,需要足够强的密码。但是设置密码会牺牲Redis性能,可能牺牲达到20%
授权:Redis不提供该机制,但是可以在 Redis 的配置文件中加入 rename-command CONFIG pUVEYEvdaGH2eAHmNFcDh8Qf9vOej4Ho,就可以将 CONFIG 功能的关键词,变成一个随机的字符串,黑客不知道这个字符串,就无法执行 CONFIG 功能了。
审计:日志不足够,没有太多的价值。
MySQL安全:自身安全很高,正确配置mysql安全选项即可。

17, 分布式安全-以Hadoop为例
Hadoop认证:Kerberos协议的配置
Hadoop加密:支持硬盘数据加密。HDFS加解,密需要主动创建Zone来进行加解密。
Hadoop安全框架:Apache Knox 集群网关;Apache Centry 集中授权中心;Apache Ranger 集中制的访问控制机制.

18, 安全标准和框架
等级保护>
技术要求:安全物理环境、安全通信网络、安全区域边界、安全计算环境、安全管理中心;
管理要求:安全管理制度、安全管理机构、安全管理人员、安全建设管理、安全运维管理。

ISO27001框架: 是国内比较流行的安全评估认证之一,14 个不同的安全方向。了解PDCA 流程。

NIST框架:提出的 IPDRR 方法,是解决各类安全问题的一种通用思路。


19, 防火墙:如何和黑客“划清界限”?
防火墙分类:
包过滤防火墙:在网络层和传输层上。够获取到的信息包括:源 IP 和端口、目标 IP 和端口、协议号等。
应用网关防火墙:工作在应用层。所谓“代理”,即接收客户端发出的请求,然后以客户端的身份将请求再发往服务端。
状态检测防火墙:包过滤防火墙的升级。它会以连接的形式来“看待”低层级的 TCP 和 UDP 数据包。比如“三次握手”。
防火墙能提供的保护:保护操作系统的漏洞、阻止非法的信息流动、限制可访问的服务和审计。
防火墙的盲区:不能防御已授权服务中的恶意攻击;不能防御不通过防火墙的访问;不能防御防火墙自身的操作系统存在缺陷。


20, WAF:如何为漏洞百出的Web应用保驾护航?
WAF 的本质是“专注于 Web 安全的防火墙”,Web 安全关注于应用层的 HTTP 请求。三种模式:
透明代理和大部分防火墙的工作模式相同:在客户端和服务端通信不需要作出任何改变的情况下,对 HTTP 流量进行请求和转发。在这个过程中,为了解密 HTTPS 流量,WAF 必须和服务端同步 HTTPS 对称密钥。
反向代理要求客户端将请求的目标地址指向 WAF,而不是服务端。在反向代理工作模式中,服务端接收的请求,实际上也是由 WAF 发起的。在这个过程中,WAF 本身就相当于一个 Web 服务,只不过对所有的 HTTP 请求都进行了转发。
插件模式:在插件模式中,WAF 不再是网络中一个独立的安全产品了,而是以插件的形式依附于 Web 服务端本身,为 Web 安全提供防护。
WAF 的功能:HTTP 解析能力;Web 安全防护;审计告警;数据保护和虚拟补丁。


21, IDS:当黑客绕过了防火墙,你该如何发现?
IDS 的最终目的是检测黑客的攻击行为。
类型1-NIDS:NIDS 主要检测网络流量中的攻击行为。比如:Snort、Suricata等。这些工具也依据 CVE 库开发了完整的入侵检测规则。
类型2-HIDS:HIDS 主要检测服务器系统中的攻击行为。系统开销低,但是开发难度比NIDS高。很多公司都会基于Osquery来开发 HIDS。
我们在 NIDS 和 HIDS 中加入了拦截的能力,就成了 NIPS 和 HIPS,统称为 IPS(Intrusion Prevention System,入侵防御系统)。
蜜罐:所谓“蜜罐”,就是一台部署在内网的服务器。这个服务器没有任何保护措施,并且提供带有漏洞的服务,就是为了吸引黑客来攻击它。
低交互蜜罐,就是蜜罐内的所有服务都是模拟的,不能提供真实的服务功能。
高交互蜜罐会提供一个真实的服务,而且不施加任何限制,只是用来做详细的记录而已。


22, RASP:写规则写得烦了?尝试一下更底层的IDS
RASP(Runtime Application Self Protection):设计思路是通过监控应用的底层,来从根本上发现攻击行为的产生。
产品:百度的OpenRASP。


23, SIEM:一个人管理好几个安全工具
SIEM(Security Information and Event Management,安全信息和事件管理)
SIEM 就是一个基于各类日志,提供安全运营和管理能力的统一平台。
安全的发展,前期在于技术建设,长期在于运营升级。


24, SDL:怎样才能写出更“安全”的代码?
2004 年,微软提出了 SDL(Security Development Lifecycle,安全开发生命周期)
感觉在设计方面需要充足的经验。


25, 业务安全体系
在基础安全中,黑客将技术作为核心竞争力;在业务安全中,黑产将资源作为核心竞争力。
防御思路:提高黑产成本 (用户资源、IP 资源。、操作资源);


26, 产品安全方案
降低业务对黑灰产的诱惑。
业务安全中的防御框架:Identify(识别)、Protect(保护)、Detect(检测)、Respond(响应)、Recover(恢复)。
评估:黑产获利、目标用户、实时性要求、误伤影响、漏判影响。
在业务安全中,NIST 的安全框架 IPDRR 可以指导我们与黑产进行对抗,实现全面防护,避免安全短板的出现。

27, 风控系统
风控系统属于事中的防控,是在检测到黑产行为时才进行拦截。
工作模式:同步模式;异步模式;离线模式。


28, 机器学习:如何教会机器识别黑灰产?
无监督学习的目的是挖掘数据的分布特征,主要包括数据的聚集特征(也叫聚类特征,是通过聚类算法获得)和分布规律(也叫离群点,通过时序算法获得)。这些特征和规律能够帮助你发现异常的情况,但是不能帮你定位异常的行为。
有监督学习的基础是标签数据,标签就代表着已知。所以,有监督学习的最大作用就是用来挖掘“已知的威胁”。如果想要保持和黑灰产的持续对抗,我们就必须不断地生产标签数据(也叫“打标”),供有监督学习的算法来学习。


29, 设备指纹
设备指纹的优势:对比于传统的 IP、手机号等 ID,设备指纹具有唯一性高、稳定性强和信息丰富这三个优势。
主要挑战:设备重置之后,保持设备指纹不变;设备更新之后,保持设备指纹不变;硬件静态特征;硬件动态特征。


30, 安全运营:“黑灰产”打了又来,如何正确处置?
业务中处理黑产的手段:直接拦截;验证拦截;假数据拦截。
业务之外处理黑产的运营手段:情报收集;钓鱼执法;案件打击;