《白帽子讲Web安全》世界观安全

news2024/11/25 16:52:20

1.Web安全简史

1.1中国黑客简史

对于现代计算机系统来说,在用户态的最高权限是root,也是黑客们最渴望能够获取的系统最高权限。不想拿到“root”的黑客,不是好黑客。

在现实世界中,真正造成破坏的,往往并非那些挖掘并研究漏洞的“黑客们”,而是这些脚本小子。而在今天已经形成产业的计算机犯罪、网络犯罪中,造成主要破坏的,也是这些“脚本小子”。

1.2黑客技术的发展历程

从黑客技术发展的角度看,在早期,黑客攻击的目标以系统软件居多。运营商、防火墙对于网络的封锁,使得暴露在互联网上的非Web服务越来越少,且Web技术的成熟使得Web应用的功能越来越强大,最终成为了互联网的主流。黑客们的目光,也逐渐转移到了Web这块大蛋糕上。

1.3Web安全的兴起

2.黑帽子,白帽子

正如一个硬币有两面一样,“黑客”也有好坏之分。

在黑客的世界中,往往用帽子的颜色来比喻黑客的好坏。

3.返璞归真,揭秘安全的本质

安全问题的本质是信任的问题。

一切的安全方案设计的基础,都是建立在信任关系上的。我们必须相信一些东西,必须有一些最基本的假设,安全方案才能得以建立;如果我们否定一切,安全方案就会如无源之水,无根之木,无法设计,也无法完成。

4.破除迷信,没有银弹

安全是一个持续的过程。

5.安全三要素

6.如何实施安全评估

6.1资产等级划分

对互联网公司所拥有的资产进行等级划分,就是对数据做等级划分。

做资产等级划分的过程,需要与各个业务部门的负责人一一沟通,了解公司最重要的资产是什么,他们最着重的数据是什么。通过访谈的形式,安全部门才能熟悉、了解公司的业务,公司所拥有的数据,以及不同数据的重要程度,为后续的安全评估过程指明方向。

6.2威胁分析

在本书中介绍一种威胁建模的方法,它最早是由微软提出的,叫做STRIDE模型。

威胁

定义

对应的安全属性

Spoofing(伪装)

冒充他人身份

认证

Tampering(篡改)

修改数据或代码

完整性

Repudiation(抵赖)

否认做过的事情

不可抵赖性

InformationDisclosure(信息泄露)

机密信息泄露

机密性

Denial of Service(拒绝服务)

拒绝服务

可用性

Elevation of Privilege(提升权限)

未经授权获得许可

授权

6.3风险分析

如何更科学地衡量风险呢?这里再介绍一个DREAD模型,它也是由微软提出的。

等级

高(3)

中(2)

低(1)

Damage Potential

获取完全验证权限;

执行管理员操作;

非法上传文件

泄露敏感信息

泄露其他信息

Reproducibility

攻击者可以随意再次攻击

攻击者可以重复攻击,但有时间限制

攻击者很难重复攻击过程

Exploitability

初学者在短期内能掌握攻击方法

熟练的攻击者才能完成这次攻击

漏洞利用条件非常苛刻

Affected users

所有用户,默认配置,关键用户

部分用户,非默认配置

极少数用户,匿名用户

Discoverability

漏洞很显眼,攻击条件很容易获得

在私有区域,部分人能看到,需要深入挖掘漏洞

发现该漏洞及其困难

6.4设计安全方案

作为安全工程师,要想的就是如何通过简单而有效的方案,解决遇到的安全问题。安全方案必须能够有效抵抗威胁,但同时不能过多干涉正常的业务流程,在性能上也不能拖后腿。

好的安全方案对用户应该是透明的,尽可能地不要改变用户的使用习惯。

7.白帽子兵法

7.1 Secure By Default原则

按照白名单的思想,应该根据业务需求,列出一个允许使用的软件以及软件版本的清单,在此清单外的软件则禁止使用。如果允许工程师在服务器上随意安全软件的话,则可能会因为安全部门不知道、不熟悉这些软件而导致一些漏洞,从而扩大攻击面。

通配符“*”,代表来自任意域的Flash都能访问本域的数据,因此就造成了安全隐患。

所以在选择使用白名单时,需要注意避免出现类似通配符“*”的问题。

最小权限原则要求系统只授权主体必要的权限,而不要过度授权,这样能有效地减少系统、网络、应用、数据库出错的机会。

7.2 纵深防御原则

纵深防御并不是同一个安全方案要做两边或多遍,而是要从不同的层面、不同的角度对系统做出整体的解决方案。

它要求我们深入理解威胁的本质,从而做出正确的应对措施。

7.3 数据与代码分离原则

在Web安全中,由“注入”引起的问题比比皆是,此类问题均可以根据“数据与代码分离原则”设计出真正安全的解决方案,因为这个原则抓住了漏洞形成的本质原因。

7.4 不可预测性原则

不可预测性能有效地对抗基于篡改、伪造的攻击。

不可预测性的实现往往需要用到加密算法、随机数算法、哈希算法。

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

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

相关文章

css右外边距失效问题解释以及解决办法

浏览器默认从左往右渲染元素&#xff0c;在没有超出父容器的宽度的前提下 如果子容器的宽度能够被容纳 设置margin-right是没有用的 解释 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title></title…

Linux环境搭建SVN服务器并实现公网访问 - cpolar端口映射

文章目录前言1. Ubuntu安装SVN服务2. 修改配置文件2.1 修改svnserve.conf文件2.2 修改passwd文件2.3 修改authz文件3. 启动svn服务4. 内网穿透4.1 安装cpolar内网穿透4.2 创建隧道映射本地端口5. 测试公网访问6. 配置固定公网TCP端口地址6.1 保留一个固定的公网TCP端口地址6.2 …

C/C++中文参考手册离线最新版

最近又用回C/C刷题&#xff0c;回想上一年还在用Java&#xff0c;C/C才是世界上最好的语言&#xff08;纯属调侃&#xff09;。哼哼&#xff0c;不许反驳。 想分享我正在使用的C/C中文参考手册离线最新版给大家&#xff0c;需要的朋友们可以自行下载&#xff08;free的哦&#…

Pytorch对预训练好的VGG16模型进行微调

目录 1.数据集准备、预训练模型准备 2.对VGG16模型进行微调 3.对数据集进行预处理 4.对模型进行训练并可视化训练过程 5.该测试案例的完整代码 对于一个复杂的卷积神经网络来说&#xff0c;通常网络的层数非常大&#xff0c;网络的深度非常深、网络的参数非常多&#xff0c…

中文翻译英语转换器-怎么把wps表格里的英文翻译成中文

对于那些需要频繁地进行中英互译的用户来说&#xff0c;字数限制是一个常见的问题。很多翻译软件经常会限制每次翻译的字数&#xff0c;导致用户翻译工作的效率和质量无法得到保证。如果您正在遭受这些限制&#xff0c;中英互译字数无限的软件将让您的翻译工作变得更加便捷和高…

反射之成员方法

Class类中用于获取成员方法的方法 Method[] getMethods(): 返回所有公共成员方法对象的数组&#xff0c;包括继承 Method[] getDeclaredMethods(): 返回所有成员方法对象的数组&#xff0c;不包括继承 Method getMethod(String name,Class ) …

笔记本硬盘坏了还能恢复数据吗 笔记本硬盘坏了怎么修复

笔记本电脑是经常使用的的学习、工作设备&#xff0c;它的硬盘中储存着大量的数据。一旦笔记本硬盘出现故障&#xff0c;这些数据会无法正常使用&#xff0c;对我们的学习生活产生重大影响。那么&#xff0c;笔记本硬盘坏了还能恢复数据吗&#xff0c;笔记本硬盘坏了怎么修复&a…

如何制作每日工作清单,让你高效完成开发工作

作为开发者&#xff0c;每天都有大量的任务需要完成。有时候&#xff0c;我们可能会感到无所适从&#xff0c;甚至失去动力。那么&#xff0c;如何有效地管理自己的任务和时间呢&#xff1f;在这篇文章中&#xff0c;我们将分享一位国外程序员大佬的亲身经验&#xff0c;介绍他…

【已解决】Field ‘id‘ doesn‘t have a default value 错误的解决办法

介绍 这里是小编成长之路的历程&#xff0c;也是小编的学习之路。希望和各位大佬们一起成长&#xff01; 以下为小编最喜欢的两句话&#xff1a; 要有最朴素的生活和最遥远的梦想&#xff0c;即使明天天寒地冻&#xff0c;山高水远&#xff0c;路远马亡。 一个人为什么要努力&a…

OpenLdap学习笔记3

1、进入容器&#xff1a; docker exec -it my-openldap-container /bin/bash2、在home目录下创建learn目录&#xff1a; CD /home mkdir learn 3、创建barbara.ldif文件&#xff1a; dn: cnbarbara,dcexample,dcorg objectClass: inetOrgPerson cn: barbara sn: Jensen titl…

优思学院|质量大师的那些名言(一)【质量是免费的】

名言是一种短小精悍、言简意赅的语言表达方式&#xff0c;它们通常包含着深刻的哲理和智慧&#xff0c;可以为我们提供指导和启示。 优思学院会在这个《质量大师的那些名言》系列中让大家透过那些名言&#xff0c;用最简单、直接&#xff0c;和深刻的方法来学习质量和六西格玛…

H2 Database Console未授权访问漏洞复现+利用

1、产品简介 H2是Thomas Mueller提供的一个开源的、纯java实现的关系数据库。H2的主要特点是&#xff1a;非常快&#xff0c;开源&#xff0c;JDBC API&#xff1b;嵌入式和服务器模式&#xff1b;内存数据库&#xff1b;基于浏览器的控制台应用程序。 2、漏洞概述 H2 datab…

virsh 获取虚机IP,网桥ip,brctl,arp使用

第一种方法: allenjettech-WS-C621E-SAGE-Series:~$ sudo virsh domifaddr win10-01Name MAC address Protocol Address -------------------------------------------------------------------------------vnet0 52:54:00:b3:42:28 ipv4 1…

电脑不限时长的录屏软件分享

案例&#xff1a;有没有录屏软件不限时长录制视频&#xff1f; “今天的视频会议特别重要&#xff0c;我想用录屏的方式记录下来。在网上下载了一个录屏软件&#xff0c;录到3分钟的时候&#xff0c;需要解锁高级功能才能继续录制。想问问大家有没有电脑免费不限时长的录屏软件…

四百左右哪款蓝牙耳机比较好?400元价位蓝牙耳机推荐

除了日常通勤以及休息前听歌以外&#xff0c;随着加班变得频繁&#xff0c;工作时也戴起了耳机&#xff0c;由于市面上的耳机种类繁多&#xff0c;因此许多人不知道从而选择&#xff0c;小编发现更多的人是追求性价比&#xff0c;所以整理了一期四百左右性能表现优异的款式给大…

Leetcode 剑指 Offer II 023. 两个链表的第一个重合节点

题目难度: 简单 原题链接 今天继续更新 Leetcode 的剑指 Offer&#xff08;专项突击版&#xff09;系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 给定两个单链表的头节点 headA 和 headB &#xff0c;请找出并返…

vs2022 xp支持情况测试

vs2022默认安装是不支持xp的&#xff0c;生成的可执行文件在xp下报错如图&#xff1a; 1、 若要vs2022支持xp&#xff0c;需要安装xp支持模块&#xff0c;如下图&#xff0c;单个组价&#xff0c;勾选xp支持&#xff0c;右边自动打勾&#xff0c;直接安装即可&#xff1b; 2、工…

2023年第十三届MathorCup高校数学建模挑战赛|C题|电商物流网络包裹应急调运与结构优化问题

【2023 年第十三届 MathorCup 高校数学建模挑战赛】C 题 电商物流网络包裹应急调运与结构优化问题 1 题目 电商物流网络由物流场地&#xff08;接货仓、分拣中心、营业部等&#xff09;和物流场地之间的运输线路组成&#xff0c;如图 1 所示。受节假日和“双十一”、“618”等…

QTableView中添加代理控件

目录 1、设置样式文件 2、set base attribute 3、设置model 4、设置表头 5、设置数据 6、添加代理控件 6.1 添加 QSpinBox 代理 6.2 添加 QComboBox 代理 6.3 添加 QPushButton 代理 6.4 添加 CheckBox 代理 6.5 添加 Pixmap 代理 6.6 添加 LineEdit 代理 6…

部署环境从docker swarm迁移到k8s后kie-server的发布方式变化

书接swarm https://cloud.tencent.com/developer/news/475316 swarm的集群部署非常简单,但领导说docker和 docker swarm都不想用 换k8s ok 哦另外, k8s的CRI运行时 也不用docker 而是用containerd 完成. 但发现一个问题 ,k8s没有暂停pod的概念. 同时containerd没有暂停容器的…