Web漏洞—安全评估基础知识

        一个安全评估的过程,可以简单地分为4个阶段:资产等级划分、威胁分析、风险分析、确认解决方案。

        一般来说,按照这个过程来实施安全评估,在结果上不会出现较大的问题。这个实施的过程是层层递进的,前后之间有因果关系。

资产等级划分

        资产等级划分是所有工作的基础,这项工作能够帮助我们明确目标是什么,要保护什么。我们前面提到安全三要素时,机密性和完整性都是与数据相关的,在可用性的定义里,笔者则用到了“资源”一词。“资源”这个概念描述的范围比数据要更加广阔,但很多时候,资源的可用性也可以理解为数据的可用性。
        在互联网的基础设施已经比较完善的今天,互联网的核心其实是由用户数据驱动的——用户产生业务,业务产生数据。互联网公司除了拥有一些固定资产,如服务器等死物外,最核心的价值就是其拥有的用户数据,所以——互联网安全的核心问题,是数据安全的问题。、

        当完成资产等级划分后,对要保护的目标已经有了一个大概的了解,接下来就是要划分信任域和信任边界了。通常我们用一种最简单的划分方式,就是从网络逻辑上来划分。

威胁分析

        什么是威胁分析?威胁分析就是把所有的威胁都找出来。怎么找?一般是采用头脑风暴法。当然,也有一些比较科学的方法,比如使用一个模型,帮助我们去想,在哪些方面有可能会存在威胁,这个过程能够避免遗漏,这就是威胁建模。

        在威胁建模中STRIDE模型是最早由微软提出的。

        STRIDE是6个单词的首字母缩写,我们在分析威胁时,可以从以下6个方面去考虑。

        在进行威胁分析时,要尽可能地不遗漏威胁,头脑风暴的过程可以确定攻击面(AttackSurface)。

        在维护系统安全时,最让安全工程师沮丧的事情就是花费很多的时间与精力实施安全方案,但是攻击者却利用了事先完全没有想到的漏洞(漏洞的定义:系统中可能被威胁利用以造成危害的地方。)完成入侵。这往往就是由于在确定攻击面时,想的不够全面而导致的。

        威胁分析是非常重要的一件事情,很多时候还需要经常回顾和更新现有的模型。可能存在很多威胁,但并非每个威胁都会造成难以承受的损失。一个威胁到底能够造成多大的危害,如何去衡量它?这就要考虑到风险了。我们判断风险高低的过程,就是风险分析的过程。在“风险分析”这个阶段,也有模型可以帮助我们进行科学的思考。

风险分析

        风险由以下因素组成:
Risk= Probability * Damage Potential
        影响风险高低的因素,除了造成损失的大小外,还需要考虑到发生的可能性。地震的危害很大,但是地震、火山活动一般是在大陆板块边缘频繁出现,比如日本、印尼就处于这些地理位置,因此地震频发;而在大陆板块中心,若是地质结构以整块的岩石为主,则不太容易发生地震,因此地震的风险就要小很多。我们在考虑安全问题时,要结合具体情况,权衡事件发生的可能性,才能正确地判断出风险。

        如何更科学地衡量风险呢?这里介绍一个DREAD模型,它也是由微软提出的。DREAD也是几个单词的首字母缩写,它指导我们应该从哪些方面去判断一个威胁的风险程度。

        在 DREAD模型里,每一个因素都可以分为高、中、低三个等级。在上表中,高、中、低三个等级分别以3、2、1的分数代表其权重值,因此,我们可以具体计算出某一个威胁的风险值。

        在任何时候都应该记住——模型是死的,人是活的,再好的模型也是需要人来使用的,在确定攻击面,以及判断风险高低时,都需要有一定的经验这也是安全工程师的价值所在。类似STRIDE 和 DREAD的模型可能还有很多,不同的标准会对应不同的模型,只要我们觉得这些模型是科学的,能够帮到我们,就可以使用。但模型只能起到一个辅助的作用,最终做出决策的还是人。

确认解决方案

        安全评估的产出物,就是安全解决方案。解决方案一定要有针对性,这种针对性是由资产等级划分、威胁分析、风险分析等阶段的结果给出的。

        设计解决方案不难,难的是如何设计一个好的解决方案。设计一个好的解决方案,是真正考验安全工程师水平的时候。好的安全方案对用户应该是透明的,尽可能地不要改变用户的使用习惯。

        好的安全产品或模块除了要兼顾用户体验外,还要易于持续改进。一个好的安全模块,同时也应该是一个优秀的程序,从设计上也需要做到高聚合、低耦合、易于扩展。比如Nmap的用户就可以自己根据需要写插件,实现一些更为复杂的功能,满足个性化需求。

        一个优秀的安全方案应该具备以下特点:

  •         能够有效解决问题;
  •         用户体验好;
  •         高性能;
  •         低耦合;
  •         易于扩展与升级。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2660527.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

【CSS3】第4章 CSS3选择器

学习目标 熟悉属性选择器的用法,了解不同属性选择器的功能。 掌握关系选择器的用法,能够使用关系选择器选取父标签中嵌套的子标签。 掌握结构化伪类选择器的用法,能够使用不同功能的结构化伪类选择器精准控制标签样式。 掌握状态化伪类选择…

HCIA-Datacom题库(自己整理分类的)——OSPF协议多选

ospf的hello报文功能是 邻居发现 同步路由器的LSDB 更新LSA信息 维持邻居关系 下列关于OSPF区域描述正确的是 在配置OSPF区域正确必须给路由器的loopback接配置IP地址 所有的网络都应在区域0中宣告 骨干区域的编号不能为2 区域的编号范围是从0.0.0.0到255.255.255.255…

边缘计算网关:在智慧储能系统中做好储能通信管家

背景 目前储能系统主要由储能单元和监控与调度管理单元组成,储能单元包含储能电池组(BA)、电池管理系统(BMS)、储能变流器(PCS)等;监控与调度管理单元包括中央控制系统(MGCC)、能量管理系统(EMS)等。 2021年8月,国家发改委发布《电化学储能…

新版ONENET的物联网环境调节系统(esp32+onenet+微信小程序)

新版ONENET的物联网环境调节系统(esp32onenet微信小程序) 好久没用onenet突然发现它大更新了,现在都是使用新版的物联网开放平台,只有老用户还有老版的多协议接入,新用户是没有的,所以我顺便更新一下新的开…

大厂前端面试题总结(百度、字节跳动、腾讯、小米.....),附上热乎面试经验!

先简单介绍下自己,我“平平无奇小天才”一枚,毕业于南方普通985普通学生,有幸去百度、字节面试,感觉大公司就是不一样,印象最深的是字节,所以有必要总结一下面试经验,以及面试中遇到的一些问题&…

html-css-js使用axios和ajax获取接口并携带请求头+获取输入框或选择器内容

需求:使用axios或者Ajax获取接口,有些需要获取到输入框,或者选择器内容之后传给接口,也就是写了几种不同请求的方法,网上有很多方法,本文章算是个归纳吧。 一、axios请求传参请求头 1.github下载axios 我…

智安网络|实现安全与网络功能一体化:SASE的全新安全策略

随着企业信息化和数字化程度的不断提升,网络安全面临着前所未有的挑战。传统的网络安全模式已经无法满足日益复杂的安全需求。在这一背景下,安全访问服务边缘(SASE)崭露头角,并逐渐成为新一代网络安全架构的关键概念。…

嵌入式开发——ADC开发

学习目标 了解ADC开发流程掌握采样方式能够使用ADC进行芯片内部通道进行采样能够使用ADC对外部电路进行采样学习内容 GD32F4的ADC 特点: 16个外部模拟输入通道;1个内部温度传感通道(VSENSE);1个内部参考电压输入通道(VREFINT);1个外部监测电池VBAT供电引脚输入通道。ADC开…

自动化测试与功能测试

什么是自动化测试? 自动化测试是指利用软件测试工具自动实现全部或部分测试,它是软件测试的一个重要组成 部分,能完成许多手工测试无法实现或难以实现的测试。能够正确、合理地实施自动测试,可以 快速、全面地对软件进行测试,从…

JVM篇:JVM内存结构

程序计数器 程序计数器英文名叫:Program Counter Register 作用:用来记录下一条jvm指令的地址行号。 先来查看一段jvm指令,这些指令对应的java代码就是输出1-5 操作系统运行该Java程序时具体流程如下 语言解释:源文件通过编译转…

水果软件2024FL Studio21.3mac苹果中文版

FL STUDIO21发布,提供您一直在等待的出色工作流程功能。通过新效果、多个播放列表曲目选择和无所畏惧的撤消一切编辑,将您的音乐带入2024年。FL Studio21中文完整版是一个功能齐全、开放式架构的PC音乐创作和制作环境。它具有基于音乐音序器的图形用户界…

OFDM——PAPR减小

文章目录 前言一、PAPR 减小二、MATLAB 仿真1、OFDM 信号的 CCDF①、MATLAB 源码②、仿真结果 2、单载波基带/通频带信号的 PAPR①、MATLAB 源码②、仿真结果 3、时域 OFDM 信号和幅度分布①、MATLAB 源码②、仿真结果 4、Chu 序列和 IEEE802.16e 前导的 PAPR①、MATLAB 源码②…

手撕测试tcp服务器效率工具——以epoll和io_uring对比为例

服务器性能测试介绍 服务器的性能测试主要包括2部分: 并发量。能容纳多大的连接效率。在不崩坏的情况下能对报文的处理效率。 本文主要进行效率测试,看看基于epoll模型和io_uring模型的tcp服务器,谁的效率更高。 测试思路 客户端&#x…

字节跳动 MapReduce - Spark 平滑迁移实践

摘要:本文整理自字节跳动基础架构工程师魏中佳在本次 CommunityOverCode Asia 2023 中的《字节跳动 MapReduce - Spark 平滑迁移实践》主题演讲。 随着字节业务的发展,公司内部每天线上约运行 100万 Spark 作业,与之相对比的是,线…

mac 生成 本地.ssh

输入下面命令行 ssh-keygen 默认回车得到下面的 Generating public/private rsa key pair. Enter file in which to save the key (/Users/{用户名}/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has be…

中央集成式架构量产时代,openVOC方案将引发软件开发模式变革

2024年,中央计算区域控制架构正式进入规模化量产周期,汽车智能化正式迈入2.0时代,产业生态、应用创新、开发模式都将迎来巨大变革。 同时,随着ChatGPT引发的AIGC领域的爆发式增长,人工智能技术掀起全球万亿级信息化应…

MySQL进阶之(一)逻辑架构

一、逻辑架构 1.1 逻辑架构剖析1.1.1 连接层1.1.2 服务层01、基础服务组件02、SQL Interface:SQL 接口03、Parser:解析器04、Optimizer:查询优化器05、Caches & Buffers: 查询缓存组件 1.1.3 引擎层1.1.4 存储层1.1.5 总结 1.…

Android画布Canvas矩阵Matrix放大裁剪Rect区域的Bitmap,Kotlin

Android画布Canvas矩阵Matrix放大裁剪Rect区域的Bitmap,Kotlin private fun mydraw() {val originBmp BitmapFactory.decodeResource(resources, R.mipmap.pic).copy(Bitmap.Config.ARGB_8888, true)val newBmp Bitmap.createBitmap(originBmp.width, originBmp.h…

使用Vue3开发学生管理系统模板5 学生家长信息的实现

字段设计 IDname:姓名,字符串,最长36个字符gender:性别,字符串,最长6个字符串age:年龄,数字类型phone:电话,字符串,最长20个字符student_id&…

[JS设计模式]Observer Pattern

使用观察者模式是加强关注点分离(seperation of concerns)和单一职责(single-responsibility)原则的好方法。观察者模式对象和观察者对象没有紧密耦合,并且可以随时(去)耦合。可以将监控事件和处理事件分离。 下面举例来阐述: 首先,定义一个…