26回答

0收藏

Google系统架构解密:构建安全可靠的系统 PDF 电子书 X0127

电子书 电子书 2483 人阅读 | 26 人回复 | 2024-01-13

Java电子书:Google系统架构解密:构建安全可靠的系统   PDF 电子书 Java吧 java8.com
" |) A% w3 Z  u7 Q2 f' ^) [, S  }6 O! I- J
作者:希瑟·阿德金斯Heather Adkins)[美]贝齐·拜尔Betsy出版社:人民邮电出版社出版时间:2021年09月 3 Q" {3 `6 c# C: A; _

$ u% M, a+ i3 \
编号:166-Java吧资源免费-X0127【Java吧 java8.com】
$ X/ [8 ]; k: Q+ c% s) g; G, X" m7 U( b$ J

% J: p9 w1 A: a6 q

* }( W  x" k: w' `+ _) k. J目录:2 o2 B) j% v8 t. B( ^3 P. N- h* k: ?' k
推荐序一 xvii
1 E+ c2 y' t3 [( n5 z
) r6 S1 q, Q1 L% C" b- G推荐序二 xix
# r8 A. z" O" H+ v
- U' h" g8 q/ C( C. q对本书的赞誉 xxi
! N3 u% a2 ^6 y$ J" {
, a7 }  l' A! _# ?" R序一 xxiii
: O+ `/ b6 ^+ D% k, x- c  B. |8 Z: x% o. p  O+ H
序二 xxv
3 V) R( v" ?6 U9 l7 C
- X- q" k! A; K. D' A前言 xxvii! _/ z( @! I3 r, Q4 S  v" _

+ }% v7 G6 ^1 l# v. F第 一部分 入门资料
& {& o7 `+ t% R& J) f7 \6 j) q" s  F9 r
第 1章 安全性与可靠性的交集 3& X6 q2 g( D# E# T3 s
+ ^6 U) _& g( j( [- ~$ V2 P
1.1 从密码和电钻谈起 3
( [1 m2 a& z: ?2 D
/ w5 S2 x* d6 X+ c9 f6 d% \" p1.2 可靠性与安全性:设计注意事项 40 ~7 H! A4 W# v" m, j2 @
8 r5 l# ]0 t" l5 Z: Y" E4 }
1.3 机密性、完整性、可用性 5; i" U9 S- v+ _5 Z" B# g# J
$ f  m2 r9 u( B, u0 d- R
1.3.1 机密性 5
9 i6 B6 g1 c8 H9 x8 q" z* Y# a5 E/ {! c4 z
1.3.2 完整性 5
* s6 j( f+ Y# B/ I2 `$ p2 b" G6 J7 }3 H: l  M. f, B/ j: p' l
1.3.3 可用性 6  ]0 V6 a0 Q/ [2 `

  ~* X" X  h2 `- L/ J4 E1.4 可靠性与安全性:共性 61 }' T& `; R7 j
/ E0 t1 ^$ k7 c) V& |8 z4 ]
1.4.1 隐形 6
0 I! W) f' V. L) w, y, d' ~* U$ x7 I: M  i
1.4.2 评估 7
7 {% D3 n" l* N9 S) Z' l7 H7 Z9 a
! {2 i, f# o! i1.4.3 简洁性 72 Z( u' f5 e1 H$ m3 J: q
: u, f: G* K$ L! E
1.4.4 演变 7
' Q6 R% J" T5 v$ D& u+ E' q& T, p: Z3 ]! ?
1.4.5 弹性 86 i. H* H2 H# o) Q( ^7 n

4 p, J( }0 r, G  g1.4.6 从设计到生产 9. H2 b) }# m, Q! }  L+ H' D

4 ^; c3 G6 @9 k. n' ~* f( p. p1.4.7 调查系统和日志 99 Z% f3 _" {# e* U
# A# c% _% o. P0 X9 c
1.4.8 危机响应 9; r% y$ g; P' S% z) n5 ^
5 a5 J3 ^8 s/ e. D$ i& S2 O
1.4.9 恢复 10
3 q! t8 v4 o+ {2 C' [+ v" j/ d+ z' P. E9 W! o* h6 E
1.5 小结 109 C0 a$ _! A5 y7 X8 i  b* j

3 q' k2 Y8 I' F8 e! V7 m; Y第 2章 了解攻击者 11
  h8 J# i! g% @' ~9 M
, w' e: Q! d) |+ y; ]6 }2.1 攻击者动机 12# e6 w& T6 r, Q7 d- K- M

2 Y" [1 b9 h" ]2 I  q& d0 q; I2.2 攻击者画像 13
! y  c. Z! y! k! S" [6 A0 D8 b/ X# ?  X# C  y  W4 y
2.2.1 业余爱好者 13- e' w% M/ Y+ K) T* C! k

! ?; q+ ], x) h0 `9 I. N2.2.2 漏洞研究人员 13( D  h3 Q% d5 c8 ?

, h# O- J' T1 `5 ~2.2.3 黑客活动家 14- k6 S1 C5 E3 b) d3 o

! q" B  Z6 \( Q' ]2.2.4 犯罪分子 14$ e" r0 R3 F2 R3 y9 ^& K' q
+ E1 w6 ^- w9 c) g( Z7 e3 @& D
2.2.5 自动化和人工智能 15
8 C* Y' a# r$ w4 R
% }# U9 e: [' D# s" Y2 Y2.2.6 内部人员 156 Y' b, l( x4 s0 v4 {- b, i

" b- v$ d$ D; {% ~' O) ^8 ?2.3 攻击者方法论 19
* Q1 P% g! R) h9 ~: y! C$ i1 y) C) @6 w6 w9 \5 u
2.3.1 威胁情报 19
8 h# W; L! a9 W: b/ Q/ L
0 Y. r% @9 f7 f& _" z# }: x2.3.2 网络杀伤链 200 z8 b8 T: R/ i

2 z  z" L* l: B+ d! M" ~4 W2.3.3 TTP 206 I7 F) D4 ?& D$ g
7 a5 T6 A; U' D  u/ s$ I3 Y" o* g
2.4 风险评估注意事项 21% ~$ p( z" J$ y
! A/ {, e5 X) q
2.5 小结 21
! k# u! |9 {) H5 {8 w6 F8 ]) i
  m' A2 o3 R% \9 O2 W第二部分 设计系统
% m4 w8 e1 U. @/ h6 \2 o
; w2 e- o  N. m( o第3章 示例分析:安全代理 25: Y5 e, n: Z) g! n& n, ~+ t. t+ f
2 Q! P* n6 k  f+ ^) H
3.1 生产环境中的安全代理 258 [) O4 Q2 l. w7 T2 ~

7 I, h- p/ F, o9 I3.2 Google工具代理 27" }) o2 d& B7 S
: h# L6 @* b0 n% n5 A$ s* H
3.3 小结293 I. x9 l0 b# K3 S  D- I8 Q" ?
$ q$ K! w. q/ s# a% ~
第4章 设计中的权衡 30
3 i  V  h. {8 J) i
4 T5 ]0 V1 C, Z* R4.1 设计目标和要求 315 [  W. {& x. G" D% I1 J

$ k2 {1 X! e/ ^# J3 X4.1.1 特性需求 31
# C: G! g$ H1 N% }+ D3 L, ?; O0 C" e8 M4 D: n  ~
4.1.2 非功能性需求 310 x& j& N" s* V/ _
/ U5 V/ T2 t3 A+ Q  w
4.1.3 功能与涌现特性 32
/ g! P1 J; `: P- B( n; u* ~$ i) I6 R0 k9 W5 }' K2 s
4.1.4 案例:Google的设计文档 33
' V  N8 W1 k5 |! }. v4 l5 w# [' B% u# c: u
4.2 需求平衡 34
+ B0 B5 N3 ]7 Q4 h
7 F9 [3 D/ A, u' _' p( J4.3 处理紧张局势和统一目标 37
) f$ ^, {- }* F, j, d( r
) s; k/ @$ D# r  F/ v4.3.1 案例:微服务和Google Web应用程序框架 37
3 w8 Q, ?7 G8 @! |+ H1 T7 ~' _
6 m* i' X! G- s3 D9 [4.3.2 统一涌现特性的需求 39
( |# M; Q7 `# O/ s# t& E6 \4 ?& \) e/ x* `$ ]# a6 S
4.4 初始速度和持续速度 39" _- t! V% z" w& w
! `/ }$ C2 \$ G0 Q+ l" F
4.5 小结 41
4 y- f7 i8 a8 `  ?# |; ~0 `' O9 B
第5章 小特权设计 42. p( Z; i) w0 d" O
! u; |# v' _0 |! d: A# X
5.1 概念和术语 43
  I1 i- [7 z$ y' x% E6 I) x( X# y# x% |* B, q
5.1.1 小特权 43& d/ p  |/ }& M- \
5 i, V5 o3 @& s+ y" {( O
5.1.2 零信任网络 43$ J& [- W5 @) k" u
  P0 d, v6 M2 C9 e9 I* G4 ]# ?
5.1.3 零接触 43
! [6 ~7 f- E4 y; L8 g" N0 J! D# t- M$ q- H2 F
5.2 基于风险的访问分类 43; h* y! |0 y6 D) s9 F6 k0 k
8 ]7 m! c' U* D2 s
5.3 实践 44
9 L7 n/ Q& R, S5 P
" Y; J. r+ p9 \$ g5.3.1 API功能小化 45: f! w" w5 z1 J) s, a

  \) _3 ^& A4 T/ \5.3.2 Breakglass机制 470 J) G: m$ |- Y2 ]8 d, T. S. ?
2 h( b. \: c  |; j3 S' J9 `' U8 |
5.3.3 审计 47
: \4 `6 V' V* v6 D7 {2 `& k' a% K6 j, ^" o" j4 G6 e7 K
5.3.4 测试和小特权 49
& U7 l& n! n# S# p
" S" _# Z9 [% X& o- w" A5.3.5 诊断被拒绝的访问 501 H( W/ j2 }7 l
: g) f& }+ g3 k! C% R4 r) l
5.3.6 优雅失败和Breakglass机制 51
/ L8 X  `9 J" D3 n/ m% f: O) i! m' z5 \8 i1 A
5.4 工作案例:配置分发 514 J, n% M6 s" @9 m) I9 F# @! m
; Q$ k: T& q; N
5.4.1 基于OpenSSH实现的POSIX API 521 Y* ~) V. {! i/ z/ m9 ?
2 m2 O: ~( s8 F6 R
5.4.2 软件更新API 526 V6 ]% m, n8 n: D2 p
+ c5 E) _' J! w! Z# n2 J
5.4.3 自定义OpenSSH ForceCommand 53& U! ^& r) [% q( E

  t  T: i6 D. w! o7 i& \5.4.4 自定义HTTP接收器(边车) 53
! q+ R- Q$ V/ h! r3 O2 ?  q8 x" A/ D+ k3 v0 a
5.4.5 自定义HTTP接收器(内置) 535 P* u5 R) e; f1 y+ O" w$ [$ A( Z

3 R+ _0 a3 J6 n$ _) R$ E5.4.6 权衡取舍 536 H# |9 e4 Y' C5 i" {3 \
1 c0 ^1 v* J+ k- d! R% A" S
5.5 一种用于认证和授权决策的策略框架 54
8 O" w5 R5 f& c% Y$ R
3 v- b! R3 B* v7 f* ]4 f5.5.1 使用高级授权控件 55: x9 c8 x! {+ ~4 y, {

6 \. c" a7 q! O6 }' k, _5.5.2 投入广泛使用的授权框架 55
2 F7 K8 `! B$ A* I( |- B. ]6 }6 P0 D. l, I: }
5.5.3 避免潜在的陷阱 56! e6 B! b. @2 l! h

$ Z8 X7 u  ^" \5 X( \5.6 高级控制 56
' M7 P# J5 ~. r% V. ^7 `3 u
7 x$ V+ z5 d  L. _- W7 l+ R5.6.1 MPA 56
1 y7 O; }5 z3 v5 ]5 X& N2 T
9 D# x+ z- \1 A/ n1 ?5.6.2 3FA 57  r8 S, K% h& @- a) T- f! S8 a7 [

) B" `5 s$ q$ x4 X1 _! k5.6.3 业务依据 58& }1 P7 k5 @, y0 O* \

( y  M! }9 V" Q) r5 c( l( n5.6.4 临时访问 59
& Y9 o9 h* d' o6 P$ M, [0 h" ]7 J! A$ J
5.6.5 代理 59
# L! j" o% c% A* t+ F" @- a' }/ _
5.7 权衡和冲突 59
& T) _) _* f1 @2 V
8 C) _8 E& M+ d& d4 m+ }5.7.1 增加了安全复杂性 60$ p0 H4 w5 D+ b/ u# Y4 r: P

/ O: M7 B9 u8 U7 h+ R, n% `1 N5 v5.7.2 对合作商及公司文化的影响 60* f2 s5 M1 ~( S+ C/ ~9 S, ]: x  X  h

% S& a) P! h% u# ]( W5.7.3 影响安全性的质量数据和系统 603 c0 Z( r1 I  ^/ u, _. t9 a/ t- c

' j  a: `8 h3 B% e5.7.4 对用户工作效率的影响 60
3 O" Q3 X# v4 n; O) |/ O, o$ t% Q7 S3 C# R4 j8 H
5.7.5 对开发复杂性的影响 60; R0 s( ]: F! H; I
9 l# z! `+ u( ~9 W4 M
5.8 小结 61
# c. u) ~' H: J( t9 {  e7 P$ C3 J* I4 l8 K
第6章 面向易理解性的设计 62
& ?" S$ _0 L4 v' Y' }8 w6 [$ c7 u  U- e! \4 B( v4 \$ T# S8 D
6.1 为什么易理解性很重要 629 a) N1 l4 K/ t( ~3 B* m

. ?1 Q+ X# {! N2 y( U  V, t( c6.1.1 系统不变量 63
+ m6 d( ^. Y( {4 Z& X( ~2 k' }, W1 e8 F% F7 w. p
6.1.2 分析不变量 64* P9 q/ w, O' N, }8 y  j8 f) s2 g

  A- S: {$ ~+ Y6 A* c' E$ R6.1.3 心智模型 657 }6 d. U4 v% b
& j" v; j! r+ p  n
6.2 设计易理解的系统 65
7 B3 u( n/ g7 z6 N7 w) c
# ]/ K8 V. C# Q0 c4 N6.2.1 复杂性与易理解性 651 L1 D3 Y3 K) E2 M

4 s' I" G- X4 S, p" F) _2 S6.2.2 分解复杂性 66
* F* R6 `% {2 [# k! |- z
* e0 h6 m1 Y# A3 E6 o# h6.2.3 集中负责安全性和可靠性需求 67# Q# A& `& S# a4 D$ S2 P
# N" P; E- `$ @5 v' O
6.3 系统架构 67
3 v' \5 Y3 a" H9 Z2 w% `( k, g3 Z, k  L6 X8 a
6.3.1 易于理解的接口规范 68' W2 s, f( s4 [* d

8 ?, j: Q: Y) f( A, w6.3.2 易于理解的身份、认证和访问控制 69& L! B# N+ j/ y  M4 ~! L7 N: y
  m9 D* `& V+ g5 U- K* u
6.3.3 安全边界 749 h3 N0 K, c4 P& h5 {5 d
9 |6 r0 k- C6 o+ c$ |6 K) K
6.4 软件设计 78
% z1 b0 o7 q- r$ }4 e3 H1 L* o" `, \6 J
6.4.1 使用应用程序框架满足服务需求 789 h+ T: c/ j- K$ d
* X, N5 W. _( m  c2 q
6.4.2 理解复杂的数据流 793 a6 x$ D9 u; m# c* H

4 ^' C* ~2 k9 ^, p* r6 D" A6.4.3 考虑API的可用性 81! f6 p( a9 T/ o3 S  [4 A
: d9 n# p/ a3 ?( I
6.5 小结 83% c( V2 d) ^  c/ J( r! `) T
- g# E5 n! X- O2 ?6 g' `
第7章 适应变化的设计 84( a3 E4 @9 c# a9 L7 _. @$ \/ F

/ a; o3 f- e8 p2 Q' S$ A3 a$ q7.1 安全变更的类型 85
! g! Y1 y4 u, |/ T2 H7 Q9 ?! Z+ U( n3 Z$ W' a. f2 v7 O' |. M5 n
7.2 变更中的设计 85
, y; R% y3 z5 _+ h$ L6 \0 r" X2 z( Z5 G' Z5 w
7.3 让发布更容易的架构决策 86
% W6 n; |/ [( v/ N2 C: Q1 E# j" c; j* x# l# [& C
7.3.1 让依赖项保持并频繁重建86! a; c% L  X% ~$ l1 s5 k
4 F# R1 r0 l* }- p* L2 R
7.3.2 用自动化测试让发布更频繁86
: C& t2 [/ m: g' x* H7 l9 `# M2 c, i* {+ {4 I+ s0 h5 I" F
7.3.3 使用容器 87
5 t, l# }3 i/ W4 V  A9 F4 ~5 g3 [& D1 T
7.3.4 使用微服务 87
: J/ ?" d& F0 X5 t" s
3 o2 B% i0 z. p" B0 b* G- [! N- h7.4 不同的变更:不同的速度与不同的时间线 89) w. d5 y6 ^6 r& W1 N' n* Y
3 d" ?, {4 P0 Q( x2 G7 h
7.4.1 短期变更:零日漏洞 90  Q; N" {8 A" E0 |* p6 s
8 l6 ?9 [; ^6 S+ `* |) A9 L
7.4.2 中期变更:改善安全态势 92+ t5 t+ U3 }+ B1 M- S% ]/ a2 J4 U

0 Y4 [+ u" H) f5 X1 Y. s) c( \7.4.3 长期变更:外部需求 94
( n1 L3 Y5 A8 U/ {% |5 r9 \, B% Z& r" _
7.5 难点:计划调整 96
9 `4 F* z/ j, Y
9 V; s3 ]2 @4 O7 I! g3 w" K* Q7.6 不断扩大的范围:心脏滴血漏洞 973 y0 [. U1 w+ p6 u( D/ C3 r
( r  r0 m' y, N
7.7 小结 98& {0 f8 S8 _- U( d+ }; R! {' `
3 s; f( {( N5 B; Y/ P) T
第8章 弹性设计 99" B6 S  o, y. ?! @$ I" |
6 Q6 {5 C. j8 G& v* `
8.1 弹性设计原则 100
6 A, `) o7 g$ G: }' K" |( V7 X0 D
5 S4 r2 ]' r! S$ j8.2 纵深防御 100
8 \; {8 D1 ^7 f1 i6 j9 c- E4 g( T- n1 ?+ c" E' B  H
8.2.1 特洛伊木马 100, a# W  j1 S9 `: Y% Q; p) _* f/ c
) b- c5 ]* |# g& R5 X0 k1 U( }
8.2.2 Google App Engine分析 102
4 q" W& u* t, y! Y" H& U3 y; W( s: ~6 r, b+ d2 ~  A  Y
8.3 控制降级 1041 v0 z1 u8 I. {, l
7 c0 b) H! t: N! d: n
8.3.1 区分故障成本 1050 V  }0 `/ k( }( ?  k1 c4 h5 ]* p

* H$ S3 G* {) Z, f8.3.2 部署响应机制 107% L& {& P. H0 Y  I# A. ~! \
+ }: d$ l' }, V
8.3.3 负责任的自动化 1098 M( W; p. t2 q

" T) T. X" H& _1 J- q5 j3 c8.4 控制爆炸半径 111; }$ W$ }( ?& {% b2 X5 y
5 ~( d) x+ Q7 S! Y9 P
8.4.1 角色分离 112
. T0 [* p  a" C1 n
6 L8 X! H# }4 o2 g5 R8.4.2 位置分离 1138 I9 H) v/ K( w" C4 O6 g* P( y( ^
# P& X$ N( E& M/ _
8.4.3 时间分离 115% v/ |; L2 W) x: J+ f
2 |* \- M" M1 x" P
8.5 故障域和冗余 1157 T: W2 ]8 K2 o) S& Q2 a

  s1 m% a( i/ p8 S6 h8.5.1 故障域 116
  n8 q& c" f- V& Z9 o* i, V1 l4 ?7 v
8.5.2 组件类型 117
; u- e2 }) {2 w' w7 F
1 j; z2 x, x2 m! ]+ k, {5 U, ^8.5.3 控制冗余 119( v, W5 @9 l  {' x

; q6 E/ i. g- X& M8.6 持续验证 120
4 k& {  M/ C- \, `. n; U+ Q4 H$ m* n1 K
8.6.1 验证关键区域 121
4 S+ N8 C: F7 S+ \% T; F! b+ k$ {
8 K, x' w, g; D3 \: L$ e& i) u: z8.6.2 验证实践 122
* A6 j- b5 t# p) c6 [' W9 ?
; i8 U$ ^: C. p/ y8.7 实践建议:着手点 124- Q" M/ u: W( s7 K: d$ T8 E
- b, V8 v3 Q/ D( J  Q
8.8 小结 125; x3 c- k3 k5 S1 L7 B9 B! G) U
2 O, o  J5 m; u+ _0 A
第9章 面向恢复性的设计 1272 d" s' H  D! n. i& k0 _

! [* B( s" {8 Q$ ~( a* C, q. |9.1 要恢复什么 128
; @- j; M! ^" g; w4 }2 i( `" d
9.1.1 随机错误 128
8 ~, V7 W  W% P/ X; U% G3 H' J5 F+ S4 ?
9.1.2 意外错误 128
/ U- C8 u8 L) a" ^9 j! N, r6 y1 I, f$ ?% T2 c, a
9.1.3 软件错误 128
/ \9 N/ q2 t) ^# J# x) ~3 k( C7 t2 ?) P
9.1.4 恶意行为 129
, u3 \2 h) x4 G9 J# z, m+ j+ l+ {) a# y2 M
9.2 恢复机制的设计原则 129) ], N2 k' P8 I; l% T% J
5 w3 K9 z2 U+ j  y0 e9 _3 d3 u/ u
9.2.1 面向快速恢复的设计(受政策监督) 129" Z" r( d# \3 y3 W

' X' O1 E# S* z( o9 E9 u9.2.2 限制对外部时间观念的依赖 1324 B# t! c, G6 z% K
1 ^+ n$ ?( j) c8 e* {& ^3 S& E3 H
9.2.3 回滚所代表的安全性和可靠性间的权衡 133
! F( u! q/ n% C3 Z, s" e8 \' {) x9 R
9.2.4 使用显式吊销机制 1395 Z0 ?( i) i! T* s
' w7 ?! ?8 d) t* C, B1 y
9.2.5 了解精确到字节的预期状态 142
9 V7 q7 O1 o3 H0 \
- `9 B% k+ K) K) T/ O6 p! l9.2.6 面向测试和持续验证的设计 145
, q/ I& A* `) A; z" n
, [6 |7 c/ ?( p/ b+ T) a4 \: D9.3 紧急访问 146
/ v8 @# ~. u5 t
$ x% M! q: x# U6 w* w( \8 o9.3.1 访问控制 147- ^& P+ A, b  B4 t9 ]2 o) _; w
0 X/ U" w0 ?7 \
9.3.2 通信 148" N' o* [; ^( a# }) F  J2 m
) v* `- c9 @5 g! l) M
9.3.3 响应人员的习惯 148" x6 d1 a1 R# h+ x! k4 O

3 ^4 J8 M6 [1 g, |" W$ |9.4 预期外的收益 149( k4 d+ {, M1 t' z

& ]/ L6 R- `9 p$ F4 c9.5 小结 149* n1 k  H0 o5 U, L, G% I

8 E5 J3 M4 z7 o4 E- }" C第 10章 缓解拒绝服务攻击 150% [3 Z3 t6 l5 @

2 l0 D, I4 D5 Q5 \( r10.1 攻守双方的策略 150$ \3 D# _# f: ?: W4 q( X

0 E2 P6 h  |% T. S10.1.1 攻方的策略 151* Y9 I4 e- @* y, i, Q: O6 w, ^" X

" p. i( `8 I: |! ?* G3 {! w& X; [10.1.2 守方的策略 1520 |) s1 {; s" k% x4 Y4 s
% ^) d( B8 }% W1 z
10.2 面向防御的设计 152
8 X5 K5 O' i6 q& V$ i0 l( L3 B# O, ]  V+ W$ _
10.2.1 具有防御能力的架构 152
" A) I4 i2 r: Y/ c9 d* |7 d* i0 X7 u  @
# w+ M8 J- l) o* Z; {0 x! U/ p10.2.2 使服务具备防护能力 154
4 H$ Y2 P' J* G0 {5 I0 G
& H5 `; |3 W5 X3 P' e10.3 缓解攻击 1541 t% F  M! f4 e2 _% M( s8 M

' D& j6 D) }2 ^. f& H; _10.3.1 监控与告警 154* y! ]3 d: Y" l
& D. N* U3 h+ h: v9 i; S
10.3.2 优雅降级 1550 C& X/ [* F) S+ o- m. ^" L/ A

5 b% u' Q+ G1 x8 d6 l/ j, r10.3.3 DoS防护系统 155
* ^1 ^4 g& i7 ?% e/ q# ]8 K; G* S8 W2 D, {6 o% X5 ?
10.3.4 有策略的响应 156
2 T5 o. }8 u+ h# {( ~  ?% y7 j( O. x2 V( o9 u. e/ C1 z
10.4 应对源于服务本身的“攻击” 157: G' ^! ]0 Q3 {1 d6 x
# T0 ^  X" Z4 Z
10.4.1 用户行为 157
, f" g( I' w2 E  K! R; I+ R6 y2 D
, ~; b! f. \& @4 }" l# l10.4.2 客户端重试行为 158
: w. ]: V7 U  J9 k( @9 |" t* u# X" @6 W" F* Q! C3 V$ A; [8 R
10.5 小结 159. Q9 J/ K, }+ O9 h& E# B7 W

/ ]# O$ S- t- t: V! F# p& c第三部分 实现系统
; p2 C+ |& l9 h1 }( ~0 g( e7 N; {' E# ~3 y! d1 Q5 R# m
第 11章 案例分析:设计、实现和维护一个受信任的公共CA 163
; d1 i. `- p" g. O# o; t2 B( m$ B1 u, e7 k
11.1 受信任的公共CA的背景 163
6 R% J" d6 q6 g; T) _& D% {
9 ?9 e% Z8 ]3 \  C6 i& [8 U11.2 为什么需要受信任的公共CA 164, Z+ d6 z4 B1 q, L) o. K
7 T2 t7 Q0 a2 Z+ `
11.3 自建还是购买CA 165
& B- F; ~4 T/ G7 A$ d1 _- ]8 [
- G1 Q7 d2 A. z8 g11.4 设计、开发和维护过程中的考虑 165( ]7 j/ Y1 w) v6 W1 a

2 g' P! O5 p6 `; Z& c11.4.1 选择编程语言 166
, W. r9 c1 [$ v
: |* _9 p" b) g" S11.4.2 复杂与简明 166. Y# w8 T' S; y- d* t/ P5 U0 E  B
& g5 Z  V, T8 y, d
11.4.3 保护第三方和开源组件 1670 v+ f/ {, f. r7 d, b& ~
- }4 A( |" u( h6 S& F. ]
11.4.4 测试 167
/ C: ]" o3 I# {$ b. i- i" c1 f1 P6 ~$ @0 ]8 i+ H4 m' q3 O6 o/ D( F2 _
11.4.5 CA密钥材料的弹性 168
, ^6 U2 w" G$ ?% `, \* p' N; c& _
  @" b/ x/ f3 N11.4.6 数据验证 168
1 Q( B1 J! t4 b% u, L# Y% h' y; T9 l& }+ P" {
11.5 小结 169
$ g; z: Y4 K5 \+ p
: ~. K1 V) a! J( @第 12章 编写代码 170% D( l! c- Z5 h4 u, U- H9 H

7 _) |! }1 D% }( F3 ^" T12.1 框架级安全性和可靠性保证措施 171
2 H1 L5 L' n$ \* \3 T4 P
5 {; H9 N: n9 k4 C! h8 I12.1.1 使用框架的好处.172
# o2 G# C* [; {( _) p  b6 d; X' K' B- d. V- G5 `
12.1.2 案例:用于创建RPC后端的框架 172
8 g$ ^/ V7 u* }4 l9 [7 A8 `
7 R+ {4 Z. n9 d$ @/ {12.2 常见安全漏洞 176
4 u+ I  B" Q/ z, c) C5 L# {) e3 ^  b
12.2.1 SQL注入漏洞:TrustedSqlString 1775 V* I+ x+ w, R: H( D& e- X) p
' L8 N( h& b+ t( w
12.2.2 预防XSS漏洞:SafeHtml 178# }, s+ b7 x' s3 }. p# e
9 _8 w3 c- C2 R: H, p+ {
12.3 评估和构建框架的经验 179
, L4 U1 f* z! V- A: [# B
* s. U! }% i. S% D5 J12.3.1 用于常见任务的简单、安全、可靠的库 180& j/ E- c9 L# U: o4 n# _4 U$ w2 g. G

! ^3 }/ `4 o6 L( n! G  X12.3.2 部署策略 181# P3 D5 `# i: p) \& D

$ C7 l5 [7 f7 L4 K3 g. ~- [12.4 简洁性有助于提升代码的安全性和可靠性 182
- \' M/ G1 ^6 N* Z. l. _1 W. @
! q) A% N7 }: S6 M+ O5 O+ G6 \1 U12.4.1 避免多层嵌套 182* D/ h3 w3 w& l2 S# B, k

0 x2 {* @$ E$ Y, r12.4.2 消除YAGNI类代码 183% n2 A  A/ c  r4 v
; p0 t1 c! G. K
12.4.3 偿还技术债务 184
6 g6 H+ G& O& W3 z$ ^& R+ A% \2 V& ~; X  c
12.4.4 重构 184
6 L2 U4 U2 ^$ L* d, H
8 r, a/ H$ Y2 Y, z12.5 默认安全性和可靠性 185
) T/ H  u# k% r  {! y+ M$ J: c
12.5.1 选择合适的工具 1850 W8 w# c6 E7 w: r

+ N9 q  P' |% r) O; g12.5.2 使用强类型 1864 A, I# Z: M" O& v* s2 {& C4 I
/ T7 }2 J. t/ X! y  B
12.5.3 检查代码.188
% w# g: h2 N% a+ {" o5 o
1 i4 i7 q1 \5 e1 x12.6 小结 1898 V9 W+ p: N0 j( Z
: l* h' W* k8 U# M; K7 r" R( U
第 13章 代码测试 190
& n& a8 m) x  O* G, q) l  {/ {1 G  }5 C6 [3 D6 h4 B
13.1 单元测试 190  _! ]- @) h3 |% ?0 e3 |

% |5 k/ u1 ~* S13.1.1 编写有效的单元测试 191
" R! ?! F( r( {2 r! O) R$ i& G( F$ R7 T6 m
13.1.2 编写单元测试的时机 191
& G5 [7 A3 x/ u. ?% K- c7 I* x1 a; j, m- x' U9 v) }- f
13.1.3 单元测试对代码的影响 1929 `, l( r7 Z7 ^7 }4 X4 ~  p
/ C& j0 c! \, n, A- V
13.2 集成测试 193
1 O0 H9 r! b" q( f7 n0 m0 `6 I# s+ h. p6 V. {
13.3 动态程序分析 194
! x+ A/ e0 p0 ?" A, Q( I
; V7 C5 R' q) T' D7 u13.4 模糊测试 197
* F; t4 M8 g" Q$ q) r5 h3 F- B, }9 J4 N
13.4.1 模糊引擎的工作原理 1974 F) ^- B+ X' p1 N: p( m

1 Z/ J5 }* C4 o/ y13.4.2 编写有效的模糊测试驱动程序 200
4 U' _, E4 s; ~- ^. o. _' e( V, |. r- [/ D, a8 C! j) g
13.4.3 示例fuzzer 201
  n3 B0 V) ~6 r2 O* j0 [. c2 T1 u* p: W% z' L% j$ j
13.4.4 持续模糊测试 204
; S! o' o8 v" w9 R/ K
  b1 W/ g3 l# C$ Z* P6 G( f13.5 静态程序分析 205
& [+ C1 h) z; s2 c# D- s7 w$ b- ]3 _$ Z: d- Z& N* v2 Q+ i0 L7 E
13.5.1 自动代码检查工具 2059 K7 C$ @# y- M
4 Z! p1 y6 e1 O) f2 C
13.5.2 如何将静态分析集成至开发工作流中 2095 c1 \, E' A$ a. ^% W
: o# ~. M8 f1 N! J" B. j# ]
13.5.3 抽象解释 211
5 U* _  d& Q) ?7 x
* t9 l( I4 P% x8 T13.5.4 形式化方法 213& V/ j+ l9 C+ \8 \8 D% Z7 J3 S* J: |

0 I' ^( r) Z# c3 @( h0 g7 E13.6 小结 2135 u, ^% R- P3 b$ g

7 b) ^, |3 ~6 k. |第 14章 部署代码 214
/ K" p1 B* V8 W* _; v3 x6 |. e2 s) X. B& x" T9 X
14.1 概念和术语 214% r* U' a5 A6 Q
, a$ b/ Q1 y1 ~4 p: A  ]2 K
14.2 威胁建模 216
1 Q9 y$ g% ~$ V" S' u+ P) ~0 f
6 h# o' Y0 C" \4 k9 d14.3 实践 217
! B! S& E0 @7 R$ ^
- B* q/ @  w, J14.3.1 强制做代码审查 2173 }# o- |: B, d$ m3 C" \5 q

# f3 Y2 @0 p2 {' O( C6 e! e3 r14.3.2 依赖自动化 218& r0 {5 X5 a* u0 w" c: ?
! n2 f$ I1 h( \, `( k( n( s
14.3.3 验证工件,而不仅仅是人 218
- t) [: C, ~3 u3 [) {$ q7 ^0 X0 W
; Z: k& g4 j, s  O5 c0 p14.3.4 将配置视为代码.219! y9 h  Y* V7 W  P: D1 S
4 T! ?! L5 L! Y) o
14.4 基于威胁建模做安全加固 2209 n. Z( ^  [8 U4 k' N/ \4 _7 m

6 T( z; c. `- i% S& J& l: b14.5 高级缓解策略 222
6 U: c: a; l0 G* z/ [5 ?8 P
! n4 }; b* v# P. V8 I$ ?& A14.5.1 二进制文件来源 222
! Z/ ?' ~2 [7 K% K3 t3 x
) _1 I& q% B. {2 a0 j: z3 v( A14.5.2 基于来源的部署策略 224. C3 O  z' A, Y4 T% ^! X- W$ P

( l0 b' U  S8 @, k9 E9 ?14.5.3 可验证的构建 225# K' S' q4 n9 G8 v( `2 v

  u6 \1 o6 a; u% Q# ?2 ]4 Y; v7 Z' k14.5.4 部署阻塞点 230
! ^) K6 [  u; |9 l, P" V% Z+ ?6 Y8 A. _6 [
14.5.5 部署后验证 231
: E: T7 p1 s, d) E1 b- B( v0 _0 W. [+ I, G' R. H% N3 p& ?& {9 }+ ?+ ^  a6 [3 R
14.6 实用建议 232
& O- v6 c% q3 G7 o: G; j1 x
& ^% l( Y6 H. [- F) X6 ]' `6 y; c$ t14.6.1 一步步来 2321 p  R  Z/ z* A+ K' p4 _
( ]+ s2 |8 r" {; f3 O: }
14.6.2 提供可操作的错误消息 233. I$ G! @* M) v
8 q1 D: A* O; E5 U  D' p
14.6.3 确保来源信息明确 233
8 p7 e8 {7 C# \0 f1 p! f" f& e8 b: q0 o9 K
14.6.4 创建明确的策略 233# c( e. A+ r6 Q0 U- j0 a

" F. u4 |/ j1 R) B1 d0 I14.6.5 引入Breakglass机制 2341 U$ {9 o, w/ i3 j9 ~7 g6 D

' _! |' S5 G; h8 M7 S- k2 z14.7 重温基于威胁建模部署安全措施 234
. h2 r& Z" l" O! [' t) _. f  H4 c; d- m
14.8 小结 234, O3 f+ _& k/ J/ |$ r6 {) T

0 ~/ f2 J, }: n5 A1 r0 Z$ w6 z第 15章 调查系统 235) g/ S' I$ p! B9 O2 ^) R

2 F, L+ a! w! i( N2 r9 t( I15.1 从调试到调查 2368 {1 m& `. W; f$ `7 H) n

* n( k" O* ^! a! i15.1.1 案例:临时文件 236
  g/ p" h7 B! t
! H3 V# s3 p' r$ W% M15.1.2 调试技巧 237
. E4 E) x; }8 q8 v  D
% f; b- g+ ^2 P& s; m8 A2 Z4 [15.1.3 当陷入困境时该怎么办 243" W$ ]8 h! @  F( e: x( B) l+ p  {! h

$ E6 t$ v, q! N% B0 p/ M- T3 }- W15.1.4 协同调试:一种教学方法 246
8 i; G; [- X( t0 G1 Y. K* }" I# k1 x) j) [. ?. k/ W) v, X
15.1.5 安全调查与系统调试间的差异 246
* k" f' A4 i& Q7 z3 P) F# v
& K( e' g$ A) E9 u$ x) w. Q15.2 收集恰当、有用的日志 2478 E+ `! W4 l$ w! h& d
4 ~: G& e# Y( _0 z; f
15.2.1 将日志设计为不可变的 2489 b) s: F- k  g1 m) x
0 k4 B) h0 s) ^
15.2.2 考虑隐私要素 249
4 P* U9 D$ Q  N3 {" I4 l" W/ u2 ^! p1 t
. L! t0 I  Z& J0 a15.2.3 确定要保留哪些安全相关的日志 2490 W8 Y7 g4 |* r/ x/ d, p& E

  p1 ~. s  ?/ f* a0 w4 U' W6 e15.2.4 日志记录成本 252
" I7 g! j8 G3 p- x* z9 z5 B9 t- V1 C* i2 Q9 s6 e) i, M% O7 A' V
15.3 可靠、安全的调试访问 2538 Q2 ]" A' T; |1 O1 Z& T; k

# |# T: P1 {6 Y. @& |( {6 O% w8 F, ~15.3.1 可靠性 253
, e( R- D# D! s- m" Q
& u5 g% f6 l7 @3 ]5 H5 c2 T15.3.2 安全性 2531 G4 b/ ~7 G2 r, o* n6 q. _0 W
! {  E# Z: P3 x: o3 x0 S3 L
15.4 小结 254
) l. f# r1 @# `: c/ m% `8 `" c, H: P8 G9 m% |3 z2 f8 z
第四部分 维护系统
- I  `- G0 `0 s1 W1 c
' u9 s" N% G, @( m  r0 e第 16章 防灾规划 257! j0 F3 h! Y; |3 _" N4 p: Q

; d( H; O3 d% {) w% k16.1 “灾难”的定义 257
! S" H; N3 g3 A% N9 p
7 u) V" U, f: h: H% O16.2 动态灾难响应策略 258
9 \" |5 J# Q5 _1 i3 B# p- P0 p- U: A& P) O7 k/ W  ?$ U
16.3 灾难风险分析 2592 t. i: R8 d6 E0 u/ L0 m
/ \( z* f1 p( d$ M! H* A+ X
16.4 建立事件响应团队 259
8 V# g+ S) Z4 k. e( A: k9 P9 r, [0 I* s4 f+ V2 a9 {7 H6 b
16.4.1 确定团队成员和角色 260
" c. r3 V8 L% N' p$ C* }: ^1 L* c* o" n7 i
16.4.2 制订团队章程 261
* k5 u2 x' y% p& @3 j' c8 L* u
- r& g1 w0 [; o$ b2 D% ?3 d3 M. I16.4.3 建立严重性和优先级模型 2625 p" s9 C" R0 M$ _+ Q+ M4 S
6 f! m9 j" d7 R5 n. n8 N" j& ^5 d% W" Q1 f
16.4.4 确定与IR团队合作的运营参数 262
2 b7 b0 I0 H% O: o
8 m1 ?6 q1 D4 f3 k  ]16.4.5 制订响应计划 263
5 W. ^9 s6 f3 }: j
! A. H, }! x/ c" n- }6 |4 J  b) d16.4.6 创建详细的行动手册 264$ \; T. X  n( B: r, ^4 Q

& ~  P* A2 S  j3 ?16.4.7 确保访问和更新机制就位 264/ g! Z: S) u* C* a; B% K
* m- _6 Q6 o( x+ y6 e$ D# c
16.5 在事件发生前预先安排系统和人员 264
* c4 B" w2 N# Y6 b; F( t) o7 ]" V( T  {3 Y
16.5.1 配置系统 265
$ P# ~5 q; P/ O1 r/ h. o2 h; d, X- u' s# C7 m
16.5.2 培训 265: t' E3 v% g8 |# @6 ?8 e
. k. k4 ~& x* [; [9 e: O
16.5.3 流程和程序 266& h+ S" s/ N2 I9 {- L! S6 B+ N. E9 m

( {& P. U* O( K16.6 测试系统和响应计划 266
1 j) I( [- M, G  r, A. y  |/ P* b2 f2 a& P0 v. P# i; n( y' Y, w
16.6.1 审计自动化系统 267
. E6 p. D4 I- y4 G" A  ]
6 K' s" ]( F" |6 L! A) u16.6.2 开展非侵入式桌面演练.267
/ l; a6 l5 P3 w6 s1 l! B0 x, q; u
. y6 S, }$ R& l0 p* y3 c16.6.3 在生产环境中测试响应 268
4 u8 b9 U, L2 y$ U- E9 k) B8 ]: b) n2 q7 k8 R
16.6.4 红队测试 270$ f: l; `+ b. y3 b

+ v0 A# E3 L) P9 P" q$ R* _2 ~. ~$ B( o16.6.5 评估响应 270- s$ i" v0 d! U+ r% M! C' G
- M- `, y5 n* T% r, A
16.7 Google的案例 271
' n5 i$ {" d3 [# `8 `# p9 S
/ g& e# V+ B* p& N& R+ W( v5 Y5 m16.7.1 具有全球影响的测试 2710 f2 k( \# K4 I  K& c# G( ^

- P) W2 M# R. B! P" H; `16.7.2 DiRT演习测试紧急访问 271/ i7 Y7 j: C4 `; w* s& j

7 K5 }* O& M' B1 s; I16.7.3 行业级漏洞 271
# R* W$ N& ?- T6 J
/ b9 z8 p- m! V$ B  K; ~4 q16.8 小结 2722 Q, Z- F  U) l. e# ^$ y

1 F) u6 Z3 z1 o第 17章 危机管理 273* L5 }6 P2 @9 O% A, J

# v  H) z% {) L0 ?) I+ f, i17.1 是否存在危机 274
8 R$ t1 x# x4 o6 }4 ~2 }5 Q$ X! [9 J9 _  l
17.1.1 事件分诊 274
/ j+ B$ o& J4 M* z0 k
4 K! d" x7 U2 b$ K3 ~% ^( k17.1.2 入侵与缺陷 275
/ n. C8 I) W. S5 O, A- P3 P' m0 C3 l- i: T5 n5 L
17.2 指挥事件 2762 D4 e. V+ i; J% |

5 c$ I* t0 C# U9 t* |: s17.2.1 第 一步:不要惊慌 2766 ]4 M4 @! T/ J0 W6 \6 T$ f
/ U: E* S" Y7 l
17.2.2 开展响应 277! b6 k" {, t5 c2 q% V! p6 D

8 l: u) M& T# @$ q4 I0 C17.2.3 组建自己的事件团队 2775 X2 g% A: q5 G, {6 M; X+ b) c/ G; R) {

' t5 V1 p8 t  I, o8 N" u2 y17.2.4 OpSec 278( D# v- e9 X* b

2 y5 v) i) X# O  t* K1 Q17.2.5 牺牲好的OpSec实践换取更大的利益 280
) X1 O# B; }1 N! ~: A
5 P5 B; `2 T) i8 Y% Y# J3 _+ k6 I17.2.6 调查过程 280% o6 c& z) Z3 R% b- c! q2 o1 C& X
; `/ I% U$ t' q) y& Q! \
17.3 控制事件 283! p! h* [8 H. d
; q2 K' q: R6 k- r
17.3.1 并行处理事件 2837 q1 ]( P$ t# x1 \; v! |# q! o

5 C, [/ Q) P; k0 t- J+ ], w17.3.2 移交 2848 A9 e9 I0 x+ x% \9 Q

/ `' _9 n. M% ~/ q/ `7 l0 \17.3.3 士气 286
9 k/ e- H" C$ e0 d% j( u6 d1 A' ]) K+ D8 d4 n3 V) t
17.4 沟通 287, M1 D  h0 g& I  c& t( k* |

. \# M  l" {5 u5 H/ t17.4.1 误解 2877 }: b3 U, j3 Q" {5 O: n$ M

2 l5 `' @: v' C( i  o+ _17.4.2 拐弯抹角 2879 F* R7 f6 @& G# s$ j  x% F) @
$ n3 P" ?' Y- {( i/ d8 {* O
17.4.3 会议 288
# p# P0 A+ t' D# r+ }8 l! p
! Y! \3 C& \% Z# W( E9 F17.4.4 让合适的人了解合适的细节 289
! _" G9 m4 e; R7 U% B$ _+ D8 k9 z( |
% U2 j: C- u$ O. ^7 \% R17.5 整合回顾 290! |- {  D0 {# g2 B
7 F/ Q3 j7 l! |. E, D1 J9 r
17.5.1 分诊 290
5 {+ [4 v( ^: V9 F  Z& a+ }1 h3 K$ e0 O* O
17.5.2 宣布事件 290
7 B0 A6 M" o. {. J2 r  y& [5 {' k: H5 M" E" g
17.5.3 沟通和OpSec 2905 B. ^  M4 y9 @7 l$ U" ^

7 z: R0 N7 v2 d' A0 N) c' L17.5.4 开始处理事件 291
/ E) }; Y" @) X6 ~) ]2 r" v1 M3 S/ p/ |$ w& T5 [/ ]/ b( C
17.5.5 移交 291% H+ q( j  X/ [4 M; n1 w: {) z
& R, G# P) s9 y; K5 O! }
17.5.6 交还事件调查工作 291
9 d* e) K. _7 @; |! G, x7 y) w6 c# @1 w
17.5.7 准备沟通和补救 292  G, ?, A+ p, E( R
* ~& [* V+ p# ?7 u9 T
17.5.8 结束 292
* [2 ^/ h( P9 _, Q" T0 b0 y  |1 H9 K
17.6 小结 293
6 I% e1 B) e# j7 j6 {$ q) O
( X1 i$ U7 t9 e第 18章 恢复和善后 294
0 [  T. r3 V) }8 U+ Y$ u$ t% p" D0 q; C' K/ j
18.1 恢复调度 295
7 q( s. j' P4 J8 l) P0 ^2 J, {0 w# l0 c& N( Z* \2 T
18.2 恢复时间线 2960 d; ^/ `  F  y3 b

) k' j# r( z( j  |* _18.3 恢复计划 297: o3 F7 H6 h. l1 J
* L" H5 j: h1 a. k1 P( x& S
18.3.1 确定恢复范围 297  R9 T" j' q  T1 S$ H

8 }1 @6 w& _$ A1 N/ L18.3.2 恢复过程的考虑因素 298, g5 u* L' w0 O. v/ Q
2 k: |9 H1 n8 L: i4 n" \* Q: E
18.3.3 恢复检查清单 301
8 }5 C+ _7 g+ A) P2 R$ V8 d
/ {* g% J2 E$ A; V) T6 u1 ]! W18.4 启动恢复 302" ]" x" q0 ?! h8 Z) m
! m+ Y4 k) a  r
18.4.1 隔离资产 3022 D8 O+ [0 X& z$ c5 w1 g

# F- k* y- I. [1 U) m18.4.2 系统恢复和软件升级 303
* J" A6 T2 Y" B1 V0 s
9 q# Q( m+ E5 T2 U18.4.3 数据过滤 304
1 l. s1 D" p3 U3 }8 G7 J3 ~( T
6 O$ p' a' w; O/ d% F18.4.4 恢复数据 304* Z/ A. h# `/ F9 Z0 t1 z

# N' k% q. m: L18.4.5 更换凭据和密钥 305$ l* ^4 m; ^/ X9 L: ^& z9 n; t% ^2 v

6 U4 f) ~/ Z) v) |" I7 K  d18.6 恢复之后 306' Y( z4 _8 c4 r- k  P
5 x$ M( d' M. F8 L6 |  Y5 k
18.7 示例 308
# K5 q6 d8 j5 v* z: A# i  `0 i3 [
18.7.1 被入侵的云实例 308, d6 _' [' j# z, Z+ d: r2 Q$ @+ `) p
; o- G2 I1 A' s! @4 b
18.7.2 大规模钓鱼攻击 309/ i  {; O7 X" J

# k- \7 P% P7 Q  I' ^3 }- y' ?18.7.3 需要复杂恢复工作的、有针对性的攻击 310( s# j* J9 F; ^: G! k
( B  h: t# Q9 T, c0 I0 ^9 c
18.8 小结 3111 c  v2 ~3 F8 G" @8 g% S
5 \7 D. _; O- v1 S
第五部分 组织与文化
8 j2 p" B3 w3 D* @1 w$ b" G1 m- [6 X! R' z: d" v
第 19章 案例研究:Chrome安全团队 315
2 i8 i. s- D  y$ [0 Q6 Q1 g2 M' L! ?, p& X5 R
19.1 背景和团队发展史 315  A' m; i& d8 G- \
" \' r( L& D6 C' K
19.2 安全是团队的职责 317
; b' T& U, H3 Q( z% s
, T; i. U8 w( `/ {% B1 s5 E2 v19.3 帮助用户安全地浏览Web页面 318
6 ?- `3 a7 S; d. o6 \8 O9 B9 }) y6 `6 K) a( l5 f8 Q
19.4 速度很重要 319
/ N# e. b- T) l( T3 W
4 v0 ^. v: P: I8 _' C, {19.5 设计纵深防御机制 319
/ b6 L8 c) O6 N! V7 o! C8 K" S0 O# A2 q9 L% d! ]" A3 P
19.6 保持透明,让社区参与进来 320
! R: b6 D6 `# [! @8 z$ q7 l% R
. Q0 p- O) z1 v. ]0 O- X19.7 小结 320
$ s- e5 Z) j# I$ s( u: P
9 H# M* A: W- k第 20章 理解角色和责任 3215 z; V# W" r3 s( {
$ p" e! u8 M! m/ u( r; U& i
20.1 谁为安全性和可靠性负责 322; x7 F# _! ^( m9 O3 Z# z
/ r+ B% g& {2 X( E/ F. S
20.1.1 专家的作用 322, P7 }) l; x5 K' d8 ^

0 M/ {& G* G5 z1 \  ]1 t" A20.1.2 了解安全专业知识 324/ x7 u9 R) ?- b0 o

2 c- M, c4 z- H20.1.3 资格认证和学术教育 325- K2 l5 m. [7 F. u( c

& O7 `' I4 j* U1 M* \% V* y20.2 将安全性整合到组织中 325/ d* G  \. z! K, _$ ~

! U8 x) v! ?; D20.2.1 嵌入安全人员和安全团队 327; |7 v6 n; }' i( \. H) M" l

8 v" Q  t! U. _  Q# b0 k+ x4 `20.2.2 案例:Google的嵌入式安全 327& q- w3 ?: Q/ I) p  l. E1 n! f+ D
  B# _4 M0 }7 G% S1 ?
20.2.3 特殊的团队:蓝队和红队 329
% P; R( g3 D' c2 m
1 J- |$ _' M6 Z1 B3 F8 {20.2.4 外部研究者 330
) |& o' U+ ~9 }+ ^" `0 e
0 a7 Y; S& d# D, v, w+ V20.3 小结 332( H9 T! x9 ^9 E& _) v4 z
9 j* r" R: u/ [- e0 d  w
第 21章 建立安全可靠的文化 333* i1 V& [' X% S9 t- V( m* A. {

: L/ V- ~! i8 u$ z0 }2 @21.1 定义健康的安全性和可靠性文化 3349 m( u2 L3 U4 B9 o) b

! V. h' ?/ x0 M( }3 x21.1.1 默认的安全性和可靠性文化 334
+ P, C% L4 m# F& y9 v5 m! b! V( l9 P& y  [: \$ |7 z6 g6 r
21.1.2 评审文化 3354 _- ^( C* G6 |  }# T2 B0 K

- j: w; W& }- O" r$ O3 _% m21.1.3 意识文化 336
! ~$ k) y- G* u8 b2 K8 T8 n
# d7 x" f9 Y: I, t5 ^6 s( l% [21.1.4 说“是”的文化 3391 b/ K) ]7 {: c+ a' j- q7 S

- {$ U# k& y2 O+ o, m, M" V21.1.5 接受必然性的文化 3400 j7 t1 ]6 I3 `2 V# Q8 n, s
+ S" M( ^- S5 f/ S+ [+ E
21.1.6 可持续发展文化 3408 f( F' o4 P7 D9 S
' j/ p3 o6 f" V/ n# E8 {9 ^
21.2 通过实践改变文化 3428 r! f" Z* h% [' P/ x; g* r
/ L3 L1 ^+ g) l% L6 N( V
21.2.1 对齐项目目标和激励参与者 342
7 x! }+ t2 w5 M' o/ p' V6 @/ D3 a/ S4 `7 x/ d) b
21.2.2 通过风险规避机制减少恐惧 343
& q8 P4 `, e: k# ~; L7 \( d* D/ I; j* q  ~2 S
21.2.3 使安全兜底措施成为常态 344
! S* w" u9 L) W. r' p) D' Y1 B. W: b- u* J7 A& x* v
21.2.4 提高生产力和可用性 344
4 k  t" T3 i0 s2 \: }6 E, \
( Q& I1 X8 K0 `" Q) }( j21.2.5 多沟通,保持透明 345/ m3 K# l/ R3 D" _2 j. n' U% e+ J

( H# Y% i  R' f/ v  }21.2.6 怀抱同理心 346
+ J: i6 Z" s! ?( {
& L1 I. c" }/ K" L' ^. \2 J; b21.3 说服领导层 347
+ L* [; F3 C  ~1 [
/ M8 `* X  k) s$ |21.3.1 了解决策过程 347
/ k; |. q1 N; K  E4 b
1 d7 [$ W# W# q21.3.2 为变革立案 3482 m% a. {5 Q0 S# N: B  Q
7 m$ K: l+ ?. Z. f; j  T" J
21.3.3 选择自己的战场 349* B$ P! i: g7 z7 x1 u. I" r. F

# N5 O. q; r- S21.3.4 升级和问题解决 349
% b! M, m- [0 l! cjava8.com3 g7 f2 \$ r* p* H( l  z
21.4 小结 350
. m. ~/ @+ b9 a& K* f( t6 ~2 u3 u! {( H
总结 351+ g# t5 m; j9 H$ P5 d& f
. P$ o4 g2 P  F9 d3 E# \4 E, t8 y  A
附录 灾难风险评估矩阵 3530 O1 L% S! v. f& T+ i1 X# k
: f5 t2 t0 A6 D& U
作者介绍 355  ^: v" t( V! D3 R) b

: v: C0 \0 ^. K7 K# y$ B封面介绍 355
8 `/ _* N7 i8 r' ]: w
百度云盘下载地址(完全免费-绝无套路):
游客,如果您要查看本帖隐藏内容请回复
: O( e- r" u( i; D0 V+ X

- [% \: {! a7 g) E- D6 B3 b9 q' Q! Q* G5 C
; `8 M8 k, h  k7 W5 N
5 ?. T2 @3 [! l; W% B( ]: w' T) b

# R! S  h) U. \# U! S% o  j8 I- Y

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
关注下面的标签,发现更多相似文章
分享到:

回答|共 26 个

梦丶一世相守

发表于 2024-1-13 11:19:51 | 显示全部楼层

免费资源 真的无套路

秋天的紫薇

发表于 2024-1-13 12:00:36 | 显示全部楼层

学习java,就选java吧了

手写的曾经

发表于 2024-1-13 12:41:22 | 显示全部楼层

免费资源 真的无套路

轩翾霸霸

发表于 2024-1-13 13:21:39 | 显示全部楼层

真的无套路,大赞

碳火

发表于 2024-1-13 14:01:53 | 显示全部楼层

不错不错,下载到了

热熟了

发表于 2024-1-13 14:43:15 | 显示全部楼层

免费资源 真的无套路

负手望众山巅

发表于 2024-1-13 15:24:09 | 显示全部楼层

以后学java 就靠java吧了

百合仙子

发表于 2024-1-13 16:05:12 | 显示全部楼层

学习java,就选java吧了

硪幺悻呋壹鞴笫

发表于 2024-1-13 16:45:19 | 显示全部楼层

以后学java 就靠java吧了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则