0


【太原理工大学】软件系统安全 - 本人认为可能会出的 (最精简!!背!!!)

纯个人猜测,背住最基本的,自己上考场适当加词

  1. 零日攻击:利用未公开的软件漏洞进行的攻击,成功率高,破坏性大。

  2. 软件漏洞:软件设计、编码或运行中的安全缺陷。

  3. 恶意代码:未经授权,旨在破坏或窃取信息的软件或代码片段,如病毒、蠕虫等。

  4. 软件安全:系统方法识别、分析追踪软件安全风险并控制。

  5. CIA三属性:保密性、完整性、可用性,是信息安全的基本属性。

  6. 软件可靠性:软件在规定条件下不引起系统失效的概率。

  7. 可信软件:行为和结果可预测,符合预期的软件系统。

  8. 软件定义网络(SDN):通过网络软件化提高网络创新能力。

  9. 软件定义安全(SDS):通过软件编程实现网络安全防护。

  10. 软件安全防护:围绕漏洞消除,从软件开发生命周期早期开始安全考虑。

  11. Web安全漏洞:Web应用中的安全缺陷,如SQL注入、XSS等。

  12. 软件生命周期:定义、开发、维护时期,每个时期包括多个阶段。

  13. 安全开发生命周期(SDL):将安全活动分散到软件生命周期各阶段。

  14. 软件安全需求分析:确定软件安全需求,基于系统客观属性。

  15. 软件安全设计:将安全属性融入软件架构,包括架构安全性设计和分析。

  16. 软件安全编码:选择安全的编程语言,进行代码检测和安全编译。

  17. 软件测试与安全测试:从用户和攻击者角度出发,发现并修复漏洞。

  18. 模糊测试:通过非预期输入发现软件问题的技术。

  19. XSS蠕虫Samy:存储型XSS攻击,攻击者上传恶意脚本到服务器。

  20. 敏捷SDL:适用于快速迭代开发的SDL模型,与传统SDL的主要区别在于开发模型和发布要求。

一些“方法”及“思想”:

简答可能会涉及到“如何做”或者“什么原理”之类的问题,现在我们来梳理一下“通用模版”,注意:通用不代表可以什么都不管直接套,有时间的话还是自己背背不同的应对措施,这是没有办法的办法。

怎么做:(通过这些方法可以在一定程度上保证软件安全,万金油答案)

  1. 减少受攻击面:移除或限制不必要的功能、服务和协议,减少潜在的攻击点
  2. 最小授权原则:仅授予用户或系统执行任务所需的最小权限,减少权限滥用风险
  3. 权限分离:将关键功能分散至多个条件或角色,避免单一故障点
  4. 纵深防御:多层次安全措施,确保即使一层防御失败,系统仍受保护
  5. 完全控制:对所有访问受保护资源的行为进行细粒度的权限检查
  6. 输入验证:对所有输入进行验证,防止恶意数据导致安全问题。
  7. 经济性原则(KISS原则):简单设计减少复杂性,降低成本,提高安全性
  8. 心理可接受原则:安全机制应用户友好,易于接受和使用
  9. 平衡安全设计:在不同的安全原则之间找到平衡,根据业务需求做出合理折衷

理念类:(将安全活动分散到软件生命周期各阶段,大部分安全设计都采用这个思想,可根据题目灵活变动,同时这也是SDL的核心步骤)

  1. 培训:进行安全培训,“赛前准备”
  2. 需求分析:确定安全需求
  3. 设计:确定设计要求,减少攻击面,威胁建模
  4. 实施:弃用不安全函数等
  5. 验证:程序动态分析
  6. 发布:事件响应计划,最终安全审核
  7. 响应:执行事件响应计划

“洋文”汇总:

经常会出来英文字母,看见别懵,知道啥意思就好写了

零日漏洞:0 day

CIA:信息安全三大基本属性——保密性、完整性、可用性

SDN:“分离”出来以达到“控制”目的

SDS:底层抽象,顶层统一

/GS:防止栈溢出攻击

DEP:防止恶意代码

ASLR:随机化内存加载位置

SafeSEH:防止攻击者滥用结构化异常处理

标签: 安全

本文转载自: https://blog.csdn.net/goldfish8848/article/details/139674682
版权归原作者 SUGERBOOM 所有, 如有侵权,请联系我们删除。

“【太原理工大学】软件系统安全 - 本人认为可能会出的 (最精简!!背!!!)”的评论:

还没有评论