开始学习积攒已久的吴翰清<白帽子讲web安全>,长期进行WEB开发,也没有能够系统深入的了解一下WEB安全的方方面面 通过这本书,让我对Web上可能存在的威胁,可能存在的攻击方式,以及如何具有针对性的,在不同的阶段实施不同的防御白帽子讲web安全>
ROUND-01 Web安全简史
- 简单结构图
1.趣味简介
- exploit 黑客们使用的漏洞利用代码
- script kids 只懂编译别人代码,没有动手能力黑客
2.中国黑客发展史
- 黑客精神:open free share 开发 免费 分享
启蒙时代 — 20世纪90年代
- 崇尚分享自由免费,喜欢钻研
- 这是一种纯真的黑客精神
黄金时代 — 本世纪以中美黑客大战为标志
- 人数激增但良莠不齐,开始以盈利为目的
黑暗时代 — 从黄金时代到今天
- 黑色产业链成熟,封闭漏洞相关技术细节
- 丧失了黑客精神的实质
3.黑客技术的发展史
- 早期还是以PC端操作系统为主,主要是通过书写脚本,获取系统的root权限后,入侵用户系统
- 基于SMTP POP3 FTP IRRC协议为主,攻击网络、操作系统、软件,web还未兴起
- 防火墙技术改变了互联网安全格局,防火墙、ACL技术,保护直接暴露在互联网上的系统。防火墙保护后,ACL可以控制来自信任源的访问
- web开始兴起,安全逐渐进入大众视野也是通过一些攻击开始的
- web 1.0
- 里程碑一:2003年冲击波蠕虫 — windows RPC(445)的蠕虫 — 网络运营商直接屏蔽135 和445端口
- 里程碑二:SQL注入
- 里程碑三:跨站脚本攻击-XSS
- web 2.0
- XSS,CSR更为强大了
- 什么是安全:安全的本质是信任,不可能一劳永逸,是一个持续的过程
- 安全的三要素CIA:
- 机密性(confidentiality) :数据 —>加密,有很多数据加密技术
- 完整性(Integrity): 数据最终是完整未被篡改的 —> 常见技术手段:数字签名
- 可用性(Availability): 被保护的资源能够随需而得
- 扩充后增加 可审计性 、 不可抵赖性
- DOS 攻击(Denial Of Service)拒绝服务攻击破坏的是安全的可用性
4.如何进行安全的评估
- 互联网安全的核心问题就是数据安全问题
- 对拥有的数据结合自身特点,进行数据重要性等级的划分
- 确定资源等级,划分信任域
- 威胁:可能造成危害的来源
- 风险:可能出现的损失
- 风险一定是和损失是一起的
资产等级划分 --- 明确要保护什么:确定资源(服务器+用户数据)
|
|
|
|
威胁分析 --- 威胁建模一个有效手段是头脑风暴 -- 微软提出的SREIDE(伪装,篡改,抵赖,信息泄露,拒绝服务,提升权限)
|
|
|
|
风险分析 --- 风险分析 -- 微软提出的DREAD模型(damage,reproducibility,exploitability,affected users,discoverability)
|
|
|
|
确认解决方案
5.好的解决方案
- 好的解决方案有以下特点:
- 能够有效解决问题
- 用户体验好
- 高性能
- 低耦合
- 易于扩展与升级
6.白帽子兵法
- secure by default:黑名单白名单,最小权限原则
- 纵深防御,对于一个复杂系统来说,纵深防御是必须的,在不同的层面实时不同的安全方案,spring mvc在不同层采用不同的方法
- 数据与代码分离:代码注入
- 不可预测性:比如内存地址的随机性,token,通过加密等技术实现
Featured Tags
工具类
XML
JAVA
Java
Mybatis
反射
代理模式
日志
工厂方法模式
装饰器模式
结果集映射
Web
RESTful
WebAPI规范
SQL
Redis
Jira
SynapseRT
有限状态机 State Machine
statemachine
SpringBoot
IDEA
Tomcat
Vue
Docker
Springboot
Apache Ignite
项目发布与调试
白帽子讲web安全
黑名单
通用化
企业中台实践
MacOS
docker
minio
springboot
分布式存储
Postgres
数据备份
数据恢复
K8S
抖音小程序
开发实践
SpringCloud
Skywalking
Nacos
Kubernetes
Secret
ConfigMap
Git
GitOps
云原生
RocketMQ
ActiveMQ-Artemis
ClickHouse
Kamailio
sipp
Homer
heplify
heplify-server
HEP