25回答

0收藏

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

电子书 电子书 282 人阅读 | 25 人回复 | 2024-01-13

Java电子书:Google系统架构解密:构建安全可靠的系统   PDF 电子书 Java吧 java8.com
+ R( F. e4 F3 A5 e. i. x& P  Z7 S  x" c( _# c
作者:希瑟·阿德金斯Heather Adkins)[美]贝齐·拜尔Betsy出版社:人民邮电出版社出版时间:2021年09月 . d- S; T/ C  f" {! f
. Y! n, }4 n7 s2 P' P2 ?
编号:166-Java吧资源免费-X0127【Java吧 java8.com】
3 Q- B& t3 i& V+ e6 X. |$ S( z% l, O8 ~: @% S  N7 y% ]5 e

0 @! ?" b7 s* p& Z1 a9 ~
% H: M$ \4 X8 M9 S
目录:
) p" P$ D  b+ `' o
推荐序一 xvii! s) [0 t' ]1 a! o+ Q& u

6 u7 D; M9 x5 t% n推荐序二 xix
$ E; I; j3 o& C  ^' ?9 x( G
1 o% d7 {2 N4 F9 t$ W4 n对本书的赞誉 xxi4 F0 t" {: d* J/ ]0 |' h; |

! P/ t. {* ]/ `% I序一 xxiii# b8 H/ J5 W. I" Q

  U2 y" [0 K# [4 I4 ~序二 xxv- \# j8 D2 y. S! V0 ^% a
3 H7 W8 Z( o) D# W
前言 xxvii
# B4 ?/ T* u5 q: S0 v0 t* \: f: c, l/ ~6 l4 k
第 一部分 入门资料
' b  v, o# u* V2 {/ }( E# A; W9 Y/ h; q( u" v/ k
第 1章 安全性与可靠性的交集 3
" Y) W7 O5 p8 V% [
( z8 p2 f9 U" @1.1 从密码和电钻谈起 3
# o( _' i: }8 r' I0 e- w+ u" `  A9 _9 l  ~" d
1.2 可靠性与安全性:设计注意事项 42 T$ d8 a- K; @# z+ }2 H- y7 T

, A. B4 R1 g0 H$ Z1 g7 W% m4 y0 l1.3 机密性、完整性、可用性 5- J2 H  B' R( q; P: ]

/ ]0 d0 Y, o/ O) e1.3.1 机密性 5
8 j5 T% _- O8 ^& v0 d. V2 R0 d& q$ D- ^7 j9 ~/ u" j
1.3.2 完整性 5
3 B# n5 z6 y1 T7 {* s
: f% T3 ]+ o" j8 D, d1.3.3 可用性 6
/ b3 q; g6 I# _( |' M' v5 K& F3 z8 B2 `* W/ b" P& u
1.4 可靠性与安全性:共性 6; j' B; V$ {7 k8 j1 x
7 G0 p+ z/ Z6 v2 A$ _
1.4.1 隐形 6
" V) e$ @. j1 s( F0 ^( u: G' `7 @, C# [" e0 I1 r/ a4 d5 q
1.4.2 评估 7
) Q) l2 x3 J6 `; g8 k# Q! s
: V: Q3 ^7 P5 z' S$ g+ r1.4.3 简洁性 7
- n& q  d, i& z' W& W+ w! g& ~  i% N/ N! R
1.4.4 演变 7
% ~4 f& a, D! h! @6 Y; G2 o4 b9 ?. d
1.4.5 弹性 8
9 l$ ]: x0 H7 y/ l1 l7 _' t, Z& b5 Q% _1 M8 [
1.4.6 从设计到生产 99 S2 F' d) C3 b  W

8 s2 H2 K0 Q+ o1 m9 F9 g1.4.7 调查系统和日志 9
8 j! A% j7 P$ h" K4 v
: m9 V! T: u! u$ z- c1.4.8 危机响应 9
# {8 Y% g5 C. f
& K5 I$ X. o9 w  V: b+ |  ^1.4.9 恢复 10. {' M. k3 @; B- C6 p: K

& @  l# [9 j0 p* P+ n1.5 小结 10. W4 u& ~! B9 c
, a0 G  D/ ?9 b
第 2章 了解攻击者 11
. J1 ~6 o6 c% F- ]- M- _6 n% i  b/ B% j
2.1 攻击者动机 128 }2 L$ t* @) i( C
" G2 X5 P& X2 t0 u
2.2 攻击者画像 13
4 ?5 C+ {3 Y5 [  L' _+ E* H% K
, h$ T% Y, i" ?7 L9 H2.2.1 业余爱好者 13
, j: v% ?* O$ Q/ a% o3 W% D
- `$ F9 M8 L; x" w3 C: b2.2.2 漏洞研究人员 13% J, x' k2 q4 C0 n, w# Y

; w5 t  ?# y9 |8 {0 c2.2.3 黑客活动家 148 _  T; G; P  d1 P4 b3 L* H: u
! u$ M3 P, [" r0 v) f0 }
2.2.4 犯罪分子 14
  G# g- \6 V1 V% }/ v/ r% S- w1 T# f( @1 B" k/ Y! X
2.2.5 自动化和人工智能 15
" S6 ]; Q' c2 f) j+ G' J
( X) W( j% T. |$ A7 c: C2.2.6 内部人员 15
- l5 t; F5 X8 m. _$ K. y4 Q/ d8 u1 C1 z# c, o
2.3 攻击者方法论 19
: X7 A) A4 A& x' a* Q7 O) D( O0 a7 D) E1 \' h" ?
2.3.1 威胁情报 19
; L$ X# s1 q9 E% e6 C1 D! J* _$ S1 [' O4 h% r; T; p" S
2.3.2 网络杀伤链 20
1 b) A. y1 l; {4 v6 l* [* R4 q% t  a* M
2.3.3 TTP 20
4 N: z# _/ P9 C3 r+ O, i  L( {& Q/ v
/ {2 q$ |$ k3 q2.4 风险评估注意事项 21+ E! u2 e3 E- z( ~, S1 r
8 l7 R) B/ k% Q% Q
2.5 小结 21
( E- V0 \& r( d! k! a4 O; k* e4 o- Z. P5 ]
第二部分 设计系统8 e& S% ^& m: e& C) D  s

2 C$ i4 A3 I& n" C第3章 示例分析:安全代理 25
$ e" E9 \1 k! Q' g: G
6 f: ~9 }1 d( E- W3.1 生产环境中的安全代理 25# T* w# y; `, ~% k& a5 r

' Q8 h: _9 u& g3.2 Google工具代理 275 L  ?0 M# l3 V' g" d5 L# W

6 \: `' f) _8 }+ {6 T) t' d0 t3.3 小结29
- `  M: O+ S* y1 A3 [! j8 u, Z$ ^" [' W$ k9 F- a) r: z1 V# Z
第4章 设计中的权衡 30+ L$ _$ B; a* H- a* T

$ g, @/ W8 v3 k- F* K3 s4 [4.1 设计目标和要求 31( Y9 H# A; g$ R" J5 p9 G- k

9 \$ I; y# `! F6 A& X, G3 U- W4.1.1 特性需求 31
' }% [( y4 K- a, v6 D  u: ~
: [& ]8 D6 H# s' k" k- C4.1.2 非功能性需求 31, w' r7 G3 B! F& j* i3 ^

6 d: F  c9 U$ \# O4.1.3 功能与涌现特性 32
& w  D3 U, e1 i6 ~+ |& V
0 Z, ?" P. H5 N7 ]* F4.1.4 案例:Google的设计文档 33
$ u& {4 G# j) d
( ?$ c6 [  s# T0 d  ~4.2 需求平衡 34
2 V' Y% y5 |6 k5 ^! [& H( V5 d+ b( Y
4.3 处理紧张局势和统一目标 372 O, t6 V0 g9 h" X0 T( O

* X( i& a2 ]) a- x. }$ R) n1 S- h4.3.1 案例:微服务和Google Web应用程序框架 37
8 [4 V- ^2 u2 _- p
2 v$ p$ i% ?5 G+ A1 r* R4.3.2 统一涌现特性的需求 397 l) e) G& g. S( j
7 k1 o4 @+ v! {2 {7 b& {  E
4.4 初始速度和持续速度 39( |% W  M8 v3 t0 B6 y2 [
3 h5 I2 T3 N5 P2 c, @! t6 x2 M
4.5 小结 41- ^9 {  y2 H( u4 y- {

6 ?# z% P* g: E0 @! F0 W# t  |第5章 小特权设计 42
: a# X7 l: X# i& W2 g  |' S% i3 A( ^) W. _. \
5.1 概念和术语 43
5 e8 i# g# P* @. K3 }0 y6 b( E6 p: {: S1 c- T5 `
5.1.1 小特权 43; ~" u6 u3 i1 d
0 w2 U. F) Q4 h, y. u% k# P% p
5.1.2 零信任网络 43( E! Q7 [3 {% N5 J$ E) O' x9 E

+ I% v* O# M, o; s5.1.3 零接触 43
, ]) q5 i( n% r) O1 c
; N( U# s1 `0 |; z5 L, [; I5.2 基于风险的访问分类 43) i& w1 y! D1 U  w/ c

/ R- E# U' [& q# {* B. R" N3 n5.3 实践 44$ W3 k) {5 v* L6 n9 T

* F* V' G, t% D! d4 o( P5.3.1 API功能小化 45
/ r# Z9 b% z# s  f7 |
% p: f/ P8 S4 d5.3.2 Breakglass机制 47
& q$ F0 Y# B6 L% D( G2 y5 h# }; E+ e7 h; ~: R2 `6 x
5.3.3 审计 47( K5 B2 R8 ]* q# U) Y4 J

2 F6 G% j. S1 R4 E2 ~5.3.4 测试和小特权 49
' n7 T7 f# a7 T7 k! I) X1 g7 ]( X3 c& P, J4 [. Z8 o9 N+ w
5.3.5 诊断被拒绝的访问 50
2 \: T5 g) [  T1 k, G  ]( ~2 a$ j" B5 Q4 N% E$ E3 W* z1 G
5.3.6 优雅失败和Breakglass机制 513 Z4 x" K! F) q; h- t

2 K: a, }' k/ f1 |5.4 工作案例:配置分发 51
4 [9 K  c  X* g( G8 [) ?9 t  G# e& Y% {! F+ e. i6 V
5.4.1 基于OpenSSH实现的POSIX API 52
4 [2 P$ m2 [. {2 E' j  k5 x
6 q3 u8 Y$ y" H' Z3 |7 Z5.4.2 软件更新API 52" m5 X. D1 ?& g+ f* F

4 `1 d: Q; u: [% x% e) ~" u5.4.3 自定义OpenSSH ForceCommand 53" ~1 V3 @, P0 u2 s7 b# ?5 v. w* `
  g% }7 f+ J1 [  R8 S
5.4.4 自定义HTTP接收器(边车) 53
) D6 a/ _4 Z- Y2 B8 K' w
' [* q6 G4 I, t5.4.5 自定义HTTP接收器(内置) 53, g  f9 e$ O, i. a  f
2 `3 W5 X7 Q& M8 G  H
5.4.6 权衡取舍 53
7 p4 {! O; D; O- [1 G6 u+ J* e" I9 L1 W& F) `4 W
5.5 一种用于认证和授权决策的策略框架 54
$ }! h( |/ d, F/ v; d! c1 _
( m2 F2 W) \/ R8 l; m' {& h! D5.5.1 使用高级授权控件 55
9 x( G1 Y5 H% H) M  s
( g/ |8 v: r4 l7 ]  x3 R; G9 ?5.5.2 投入广泛使用的授权框架 55
9 U; V- A: m5 A/ `
* Y- n  r9 a. D5.5.3 避免潜在的陷阱 56
$ Q& @8 j0 |( n1 @+ C
" [4 Z* ]0 w3 I# w. I) B5.6 高级控制 56
$ s* g4 Y( P) Y4 r; I% n! L3 ^  \' _3 x" n$ o7 q& E" x) z/ q
5.6.1 MPA 56
) y/ o+ c: l6 R1 P
$ Y- z7 e) V+ k: W* C/ p; g0 ~5.6.2 3FA 57/ i( d) o' ?4 r( {
4 }+ J3 C- J* u3 s/ ]$ Q1 V
5.6.3 业务依据 58
, B: r+ F) L. [6 O6 D
/ c" m  f1 l3 |4 K1 P5.6.4 临时访问 59) B, m) T9 ]. M# z5 V# E" m" U3 [

4 z5 k2 }- T+ I8 C3 f9 V5.6.5 代理 596 n6 s7 L) V% @+ {7 j# w: q1 B1 R* Y, U% p
6 h! U- S2 ^( i" M
5.7 权衡和冲突 59! d4 _3 |8 x4 A& s1 W8 f

7 x( I7 A2 T2 T5.7.1 增加了安全复杂性 60
0 P/ X. Y" n, `( e$ a5 d
9 T" D) [2 E) h5 V. {1 n5.7.2 对合作商及公司文化的影响 60
# y+ y8 d0 B. o8 ^% c
% E8 K; g1 S2 e4 H( G) T0 M5.7.3 影响安全性的质量数据和系统 606 m/ ^# E$ j4 }% q
2 L1 {; K# ]+ _( i! {$ B$ a
5.7.4 对用户工作效率的影响 60
0 h4 S, k% W4 O( G/ e
+ i! U( V/ R( T! `. a5.7.5 对开发复杂性的影响 60
$ [( Q/ G, W8 B/ d
& G3 z1 `/ x/ \5 V5.8 小结 61
( V2 z2 H6 o" q) J; y: y" q$ @3 }
9 \0 A" c1 @: Z5 a第6章 面向易理解性的设计 622 W! D% u( f- l& z$ t
/ F  I# c' {6 ^. t
6.1 为什么易理解性很重要 62
8 d, [( H. w5 u9 l6 |; R6 h( H* o( k% ]8 p; Q, z2 T8 i
6.1.1 系统不变量 63! l, c5 N' G' S' s1 H

( @- c% C+ k  W  ~6.1.2 分析不变量 64
( D4 G5 L3 c6 R- A' G8 K( u
1 D' q& `0 C4 _  D5 g+ x6.1.3 心智模型 65
, A6 m. y$ i! N. Y6 N( V" m6 a
8 V8 x% |# B4 q0 T6.2 设计易理解的系统 659 e- G2 {: n0 m  A

! J% Z9 p7 C6 U, f7 I; Y0 v$ G6.2.1 复杂性与易理解性 656 A0 h6 z/ _: @. n& x3 h9 O
% }* M% z( a: Q- u) ^
6.2.2 分解复杂性 664 Q, \- B' M3 \/ _

: |/ E/ k: U! j7 K' U6 F- |3 A6 z6.2.3 集中负责安全性和可靠性需求 67+ A, u) E' g4 t
, b$ w/ U# L% @$ |( N1 r, i
6.3 系统架构 67) H; D8 X8 O# E! c: X3 K& X
0 I: R0 t$ O! _% g5 e# `  u* i" D' }- C
6.3.1 易于理解的接口规范 68
# s4 H: J: i7 C
% g4 h: W( M+ {( n; {. l6.3.2 易于理解的身份、认证和访问控制 69/ ^" D* W" t! p7 P9 O3 Y1 i- @: b
4 @+ M2 ]% q9 ^: R# G7 T
6.3.3 安全边界 74
1 T6 N& W3 E* D  d# N- F  _8 d/ {7 o
6.4 软件设计 78% n: \& H: j2 y
9 l# \# n' S0 Y5 c" P  e; t5 z7 ~
6.4.1 使用应用程序框架满足服务需求 78
  \& J0 d) h8 e( |  k, x8 Z# L$ y# I$ J1 R' @
6.4.2 理解复杂的数据流 79
" Q9 P/ i# k) f- @3 A' |/ k& _$ V; P9 t1 Z" c. X
6.4.3 考虑API的可用性 81  p0 Y, N" M, ~" e# m6 a; U
9 o5 `# l8 Y5 W) Q6 M3 y5 {
6.5 小结 83  I& X# L6 r2 K% y' J! L

* Q' `$ D* F' P) D% r第7章 适应变化的设计 84
5 n) \' O& I4 A( \  b6 B) I( O
, b& ]/ H2 V7 q* V1 D7.1 安全变更的类型 85! v) Y8 J7 F& T) C1 O# d, C

' e. \& g' s1 u1 \4 I7 V) R1 A, y7.2 变更中的设计 85' q+ r( {, [# [* M

( p1 r- q- G$ M0 ~7.3 让发布更容易的架构决策 86
. N) y, H8 `. Z& d" W
3 t4 Z8 v" M( |7.3.1 让依赖项保持并频繁重建86
; y- O9 N# m9 d& E: O8 ]+ R. [, A' T( |# p" `/ C3 d( Y+ m
7.3.2 用自动化测试让发布更频繁869 d- P1 t% k# {7 t* H( d0 V8 N' G1 d
; v, m0 ], r. o4 s$ o: N
7.3.3 使用容器 87
& p, H$ g- @1 A- q0 V. _
7 c$ k' i: n9 a9 T' I6 H/ m4 f7.3.4 使用微服务 87/ e) ^, b8 K; _" E; ]/ L4 O" p
) H. ~5 M* e/ m& e! ]
7.4 不同的变更:不同的速度与不同的时间线 89# {: d, c$ \4 m# {

/ |# g5 S! Z- [, O7.4.1 短期变更:零日漏洞 90
& o; p; w" z( G( U/ b1 ^. f1 T8 Q) ^6 \$ _
7.4.2 中期变更:改善安全态势 92
7 y7 l5 P1 T' _; X# z
4 E' T6 c  t: Z( \7.4.3 长期变更:外部需求 94; w3 l( ]; J! e4 P  a) s
8 @! N* v: X/ f3 `* |3 N
7.5 难点:计划调整 96" m3 o9 J% Z; y- t; y. m" N

  u* O! ]7 x, X) h9 P9 t+ S8 b7.6 不断扩大的范围:心脏滴血漏洞 976 t" q/ [+ P2 a3 R
" ^" A: h) a! J
7.7 小结 98/ n2 C) Y+ ~" \

* y2 L- P# B. h9 H3 C, ~第8章 弹性设计 99
; {$ ]- t+ j) {* [4 L$ M
$ L& N7 w" i8 M9 a) o$ F$ O8.1 弹性设计原则 100
$ t1 X4 J; s3 b. n) x
$ f& h7 o% x2 {4 Y* D8 [; i! \1 \8.2 纵深防御 100
* R% @' u/ @! k
; |% e( h: f7 _7 Y! A8.2.1 特洛伊木马 100; [# Z& d9 L* z/ }

; O. \, }. K( M2 o8.2.2 Google App Engine分析 1022 H! F  [- P& u

4 N0 J( j  p3 M) _5 _+ q( q1 ^8.3 控制降级 104! r) X/ n: I0 C6 j2 t& }  j
3 b5 K' C, [: q$ b7 ~8 i9 U5 A  K- }8 s
8.3.1 区分故障成本 1051 `, W+ \# J4 N, L4 {2 c" O* h" h
8 P2 Z" N  n* \; T1 {- w8 h
8.3.2 部署响应机制 107! B7 q: n* M4 c* o7 ?
; u" r9 _3 W6 _! A9 i' }9 R
8.3.3 负责任的自动化 109
  i9 g2 L# S- O5 ]" A3 d
4 G. c8 ~' a3 F) j+ @8 O* f5 A/ J8.4 控制爆炸半径 111: _' V" h) S$ w$ G8 I

/ u$ d  A/ A" }3 q" Q8.4.1 角色分离 112
5 V6 j/ X: |" s5 i- }
8 }1 T" j( u1 c& ~' F$ ^/ C6 c- ?8.4.2 位置分离 113+ f0 P* d5 T1 s* g; ~+ M
& l& |$ v: u( l% ]5 r$ E
8.4.3 时间分离 115+ p: @! |" A' f, c5 h
5 S: H* j# r/ g. [: a6 ?; _; _8 m
8.5 故障域和冗余 115
5 n; K; u* @7 V
2 e  S) Z4 V3 I1 k9 Y  k8.5.1 故障域 116: U  X8 \( w; w& i9 x4 d8 B
. c9 C9 L; c6 U: ]1 V
8.5.2 组件类型 117+ N2 s, h2 K2 M& C; v6 m4 @) q- Z$ A# D
. m! m, w5 U4 D' m
8.5.3 控制冗余 119; o8 ]% a- e$ q5 R2 Q: C3 }+ s

% F! z. V) x, R) @1 V8.6 持续验证 120+ d# u% D; E4 h% N* H+ g

) t9 B3 b& ^2 J1 Q% p5 _$ X' W) S8.6.1 验证关键区域 121
7 R* [* C( ], e2 h/ C- }: N1 H$ g* [0 ]  h
8.6.2 验证实践 1222 s+ z5 m, `1 O, D( p# u
5 _# ^3 I# l' X3 p8 X
8.7 实践建议:着手点 124
: s( y8 V1 E+ n% H& H, w; N: r& P- A' x: i
8.8 小结 125' }( {  c6 M1 F7 @9 T- _

( H& i# y. E" s0 |第9章 面向恢复性的设计 127
; E1 v% E+ _' O% d* M
+ m; E: X' x  u2 R" U4 X& c9.1 要恢复什么 128
  }9 a( {* e& A3 J& w; m; Y8 ~/ V8 S3 |$ G
9.1.1 随机错误 128
8 C  [  q$ U1 ]6 r8 z6 b7 O' _7 I
6 w6 n" g, y1 }$ q8 _6 b9.1.2 意外错误 128
2 n! s( Z0 x% S# e3 s. h4 p
# b0 v1 {" i5 X6 \" T9.1.3 软件错误 128
7 c" f0 J0 _' @+ t- I- N6 A) d1 X+ ~; Y* G9 \. ~
9.1.4 恶意行为 129
8 [& e9 d9 ~$ ]: D1 Q, M; m( Y$ G* c* G6 V
9.2 恢复机制的设计原则 129! K3 T" o: Z/ P: C
# i' L0 |" x/ H3 Z8 u0 C3 y- m0 G
9.2.1 面向快速恢复的设计(受政策监督) 129
2 ^# v6 C* F* J8 x+ }5 Z- N# X# L. N$ t( t
9.2.2 限制对外部时间观念的依赖 1327 H* z' `, L9 {% b$ ~. c: ^
3 `' e$ Q( u  c* Y) d" H7 J5 n. l, ^
9.2.3 回滚所代表的安全性和可靠性间的权衡 133
& p$ h% L$ x# l" r. C: G* _: F
- G3 C% K3 [) t+ _" X9.2.4 使用显式吊销机制 1392 c$ b5 o2 D$ `. s) G% |

7 b' ^8 V3 q$ `9.2.5 了解精确到字节的预期状态 142/ U2 X. e; @0 q, V! y5 [! y
3 X6 I" x  V) ^5 g
9.2.6 面向测试和持续验证的设计 1452 h& r0 O1 o$ E. m7 X
7 V3 m* }+ c7 k% l' ~
9.3 紧急访问 146
3 L1 U# Z8 m0 k3 l
+ o  P0 i8 h2 f& l0 L1 X/ ]9.3.1 访问控制 1471 i" V2 F( X4 z; }4 |7 P+ {8 w

. u3 q1 f. `+ p; f( W+ {9.3.2 通信 1485 ^' B/ ]0 s1 i) X) K4 c

5 U. e0 H* m4 L8 g& V9.3.3 响应人员的习惯 148
( B8 Q+ D! x& O( F# E( l
7 o7 S) [5 t4 ~9 V, S6 ^9.4 预期外的收益 149
; v6 L. v: U! M7 l8 Y% Z5 M- J9 ]. F1 p
2 x8 J9 ~6 r4 d0 H; d% C9.5 小结 149
2 ]1 R( g$ X# p8 w) B1 `( L% R: h
+ h- y: ]' \9 A( W第 10章 缓解拒绝服务攻击 150  `! W: h3 X" ~+ ~1 r4 u
8 Q" Q7 q; u( g) ~0 v* }8 t
10.1 攻守双方的策略 150
" M! R$ s! s! ?; T# o% ~4 I( E
7 W1 ^7 H! }# B$ T5 [, @' S* Z! s+ S10.1.1 攻方的策略 151
( t- a4 v8 o. }! c" o# g" N9 r( J% c9 }; _1 M# c
10.1.2 守方的策略 1521 |8 V, A4 N+ G# N; V
# \, k4 @0 s0 u9 r& `4 v
10.2 面向防御的设计 152
- ^0 f0 G: O8 V- G
% b2 s8 l) B, m. e) W10.2.1 具有防御能力的架构 152, y' N: L5 J, o

3 J6 e+ I3 C$ W1 c. C10.2.2 使服务具备防护能力 1545 U) ^# C" D. k0 F; Z

' a; s" f/ |5 m* P# _10.3 缓解攻击 154
! U% ?& `  k: M4 q  d( r; U8 }  E1 X/ f7 A
10.3.1 监控与告警 154
8 O# g4 q  B/ a! p
! b: }/ \) ?% y  _( v& _' h10.3.2 优雅降级 155
& c* t2 y1 Z2 V
& u+ F  }+ d$ L% |2 a# P' ~10.3.3 DoS防护系统 155# _# A8 |" F- V1 o1 `
& D7 G( i1 z) s; {2 `8 g1 _
10.3.4 有策略的响应 156( x& \& X0 }: n) z& c4 E: E

+ X% p5 I) r$ G9 ?3 g4 @10.4 应对源于服务本身的“攻击” 157
7 z( W1 E* j  R( J0 o  \; M& [# k6 r1 U% y2 C: }2 R9 a
10.4.1 用户行为 157) A; p2 J# V- v& d2 F+ M

& {+ p; V& A2 Y" p* Y7 d2 o8 b10.4.2 客户端重试行为 158
& [( y& B+ ^( f+ x+ D1 B  `# i" D* C
2 f# f- r, F: s+ N10.5 小结 159
6 B1 Z# N6 C  ^' z
0 x, \$ s' d+ q2 f: F# E, {4 b第三部分 实现系统' U, S: ?4 }) j1 U# ~
  A" \, d2 D; q- V0 R$ ?/ v
第 11章 案例分析:设计、实现和维护一个受信任的公共CA 163% U/ F/ [9 J) l* R5 k
4 c* w! o2 J9 A5 ?' H
11.1 受信任的公共CA的背景 163
( h, n/ R. R+ j( _+ F/ R$ `+ q( Z1 O$ q6 H
11.2 为什么需要受信任的公共CA 164; V6 D; }  Q, \
, ]/ l  D: j0 K8 [6 X
11.3 自建还是购买CA 165
7 s2 X) u, c! q! D+ b# _6 H% N. }# m& @: V: k% A; s. Y! q( V
11.4 设计、开发和维护过程中的考虑 1654 x1 ~5 @) `% m1 @1 a

0 e2 P) |. K+ o' _- @4 Z6 X& c; p11.4.1 选择编程语言 1667 l' I1 w5 |+ v+ Q

+ w% _4 t6 N6 k0 w. K1 v- B11.4.2 复杂与简明 166; k. g* w$ I* ]
) S; d' {, `# E
11.4.3 保护第三方和开源组件 167) Z- b, r9 H8 J7 i

) C' Q- Q- O; o2 d# B# a11.4.4 测试 167
: C& t' ~. G' s  _
# c5 q/ \2 K3 \- K2 m8 E( }: k11.4.5 CA密钥材料的弹性 168
- y/ \4 o/ g  n5 g" \: d8 l& Q' P
& V5 r( |2 ?+ a0 e9 W: e" p) P11.4.6 数据验证 168
, V( y8 c6 d1 q, s( d+ ~
9 G' ~! ~, ]6 K& r0 t7 T11.5 小结 169, n2 X4 |+ a. ~" X% s5 S/ R1 j
4 N8 r3 }( i' `7 x$ V4 G" Z
第 12章 编写代码 170+ t1 W+ h3 N) x: g
: K4 g& k4 [% k8 A) k9 C
12.1 框架级安全性和可靠性保证措施 171
1 b( O. V0 V5 G7 y- Z: a, b7 r0 M: p0 X. r  X, a- W8 W5 ~" `1 M
12.1.1 使用框架的好处.172
' _9 Q* `+ P; z7 ~& q& F" m$ `
- x! v& M- w; [12.1.2 案例:用于创建RPC后端的框架 172
, T. Y& ]) N! i* d8 h4 Y' G) j/ E
9 y$ @) w$ V1 V$ }% o$ [* Y% v12.2 常见安全漏洞 176
8 R; a8 x- Y$ h& N1 [$ Q
; N9 z$ n* z  |6 Y12.2.1 SQL注入漏洞:TrustedSqlString 177  D3 f& {7 D  }

) U# x7 e. J8 C( ~12.2.2 预防XSS漏洞:SafeHtml 178! ~, o) d* s0 C* t  w+ U+ G1 ~% F

$ J8 [3 Y- A  C! c12.3 评估和构建框架的经验 1794 d2 s  \+ c3 \! D7 D( A

$ \1 `6 f) t, J' G" f12.3.1 用于常见任务的简单、安全、可靠的库 180
# Z$ F  {+ b# V  q; J5 [, P' T
# H8 }9 g6 ]8 ]12.3.2 部署策略 181
1 U1 l, O- d# c5 S- ^! i
1 |' }1 X+ c- @% y$ j5 g7 z6 D+ R12.4 简洁性有助于提升代码的安全性和可靠性 182
: U- M4 D# X, Z1 e( V) Y
4 R. l1 r( d7 }12.4.1 避免多层嵌套 182
6 C% x, y; M% y! Q$ f+ }
; l8 Y" @0 L! O5 L# ~" D! k& N12.4.2 消除YAGNI类代码 183) J1 @' n: C# ^1 O" W- ~4 @# z
9 E' y6 c; J- U5 ^- F9 b
12.4.3 偿还技术债务 1847 ]  @9 d. x+ q4 a3 N
6 L0 h  `" I7 p9 R8 a& c
12.4.4 重构 184
; V" i) ~5 D$ G# Z  w. m1 H
$ k) B) ]% p' t7 t12.5 默认安全性和可靠性 185
! Y* [1 Y3 J. X
& A2 V0 ~- k! ~" f12.5.1 选择合适的工具 1855 G: f, E: B; J* p9 Z* a, ^

1 O, S. m; D, M* B12.5.2 使用强类型 1863 k" t5 |- F2 O) ~8 e

) E+ ]. m7 }7 k+ Y6 V# K12.5.3 检查代码.188
2 h( J+ V, Q' t. u0 L' x$ d  ?" _5 E8 y! [
12.6 小结 189% L& G9 e- T; Y  Y
$ h, V9 |( y9 E; |: {; c' o& ~
第 13章 代码测试 190/ B0 y+ W9 X9 A# X* b

; L# `3 z# m& o7 o" G! z13.1 单元测试 190
& J2 W  T3 ^) v! W: L! b7 M- k! M" k( b) ?6 R7 X
13.1.1 编写有效的单元测试 191) m( u# i2 ?8 W9 Q8 d3 Z; T: J; F+ \6 m- Z

1 ], @: I  m' }$ ~% x13.1.2 编写单元测试的时机 191; d% e1 H5 Z) m
) D0 y; M7 m# x4 H+ I+ m4 I, {, b
13.1.3 单元测试对代码的影响 192* q  M- S; n' O1 G0 g$ z' L
8 ?4 V, X$ M$ ?/ v. m
13.2 集成测试 193/ d" ~7 a/ [8 i' K

' b' W* p1 J% l9 W" g8 B13.3 动态程序分析 194
5 b6 ]+ s5 @3 }$ v) X5 X( z6 c" R4 _6 `+ s( |- s% \' C
13.4 模糊测试 1975 }$ A3 a! K7 W# y/ s
: w0 `5 _4 j- L' Q
13.4.1 模糊引擎的工作原理 1971 M( y, b* l* u) y: Z' C
+ a' h3 z; T& e' a0 \4 f% f: s
13.4.2 编写有效的模糊测试驱动程序 200
9 E% K. |. |4 a6 _, {$ F! @
2 p$ t3 A: e5 _  C: x13.4.3 示例fuzzer 201
0 `6 ]; e3 ]$ Q: d
) h5 E' I* g" X& W13.4.4 持续模糊测试 2044 d" e# V. F6 h9 j8 o- N

. |7 K: g; i; E7 b" ~; j13.5 静态程序分析 2051 A% }  h$ C( K8 y% _  d( @1 e
( D  l" e, k. p: G) T
13.5.1 自动代码检查工具 2059 @4 T" c2 x, |) i- S" G5 P
, Z( d! {2 ]9 |1 E  d0 f3 w
13.5.2 如何将静态分析集成至开发工作流中 209; r$ t) j/ g! G4 |

3 i& m, Y3 H+ v/ l2 ^2 K& ]# V13.5.3 抽象解释 211
1 n2 Q" O( Q; f6 U# i% m: [
& b" J" e! `8 N, b: ]5 x. v% V13.5.4 形式化方法 213
9 p# d1 I3 i, K% D9 M; X( N& Q5 }
: t' O' j8 r2 e% _, y2 f13.6 小结 2132 h+ P# r# K1 \! a
2 V) e8 P, p7 ^8 d) M6 W8 a% Z$ P- _
第 14章 部署代码 2147 Z, F- l$ H# `3 M1 _; Q
( P  n4 C8 r' H8 _
14.1 概念和术语 214
* s6 ^3 V( ]+ H% k
* b6 T- `3 ]- M0 Z6 P! X14.2 威胁建模 216
: p4 U5 M7 F/ x- Q- b8 b( Z6 \* J6 S' M
14.3 实践 217
% ?+ _+ A- Z8 V7 w+ W# @; Q# F9 D9 B0 [5 J; g
14.3.1 强制做代码审查 2173 J5 _6 i/ z7 ^+ \: u; V+ U+ r$ d  F

  h* o' L4 I! z& k14.3.2 依赖自动化 218' |. L$ W9 N4 S/ V; }% H' N

  D: q! s8 M" N' D: e14.3.3 验证工件,而不仅仅是人 218
" E! M- w2 Q. }3 s( x! ?/ t- B/ W7 L4 p+ z
14.3.4 将配置视为代码.219
) T: d# `  w# V8 c& K, b  ~+ O6 ~% n5 r, a* V
14.4 基于威胁建模做安全加固 220
. g3 s; K$ C9 w# I" E
  ^2 ?* }" I! }1 x14.5 高级缓解策略 222  B8 g' x: H5 j6 n* U
1 J: U# h+ i' j( f. r) {
14.5.1 二进制文件来源 222
/ L. f& |* B1 L4 [1 m/ Q3 Y+ K7 k, W
14.5.2 基于来源的部署策略 224
6 h9 ?9 d% ~( o( v" ^( |# W( y
0 i$ s  b) z" `5 A& ]14.5.3 可验证的构建 225: W: w$ ]2 [9 ]* ~

$ u# ^+ {% C0 \0 x! Q14.5.4 部署阻塞点 230) P4 i) |$ h* x; b4 Q- L/ x
) W! s, m0 J: e( D9 l
14.5.5 部署后验证 231' A0 z( k# N/ y1 O% r8 e; n7 B' I0 E
" {& I8 n# W/ p  b6 O
14.6 实用建议 232+ s% q9 E; I% ~, g, W

  U: Y1 ]' E4 j- w$ P4 N14.6.1 一步步来 232
( J$ H3 X; o# c8 Q& U& R. C8 f* W2 t& k. {. N; Z
14.6.2 提供可操作的错误消息 233( L3 [) Y' c6 ?+ F

* _. S# u1 q" ]( b; i14.6.3 确保来源信息明确 233' x* T, |; l, j5 K# a- z) \: G
* U" v* [2 J& P' @2 T6 ]
14.6.4 创建明确的策略 2333 G" I: C2 d9 e* t* [5 f
  a  p3 c9 J! M- a
14.6.5 引入Breakglass机制 234. u& E1 @  M7 E  P4 H) z

( `3 s- Z# b! C& f3 K14.7 重温基于威胁建模部署安全措施 234' y+ E; }3 C/ W2 d3 s  H, k5 L9 l; H
- F: ~' ?" I$ @4 k5 E: C
14.8 小结 234
, b! _, Y4 k% U5 ]( q, V1 H* |$ R/ `/ Z( f# g) j
第 15章 调查系统 235
) ?7 z% E$ q$ G  |" d3 E% w$ R0 F* o( c' v# O- B! {. O
15.1 从调试到调查 236  Z, e0 d' y/ E; h1 h& r" _
4 |* ~, `$ }) U8 s
15.1.1 案例:临时文件 236
; a; [% j6 n) V
7 \$ c- y. j; v# k2 ~2 t15.1.2 调试技巧 237" w, J- r# N: b1 y9 t
5 z" \: S; A% B. C
15.1.3 当陷入困境时该怎么办 243
9 D+ `  B5 d7 q5 V9 W3 O8 w7 d
# Z" h4 C* m* g) C/ p15.1.4 协同调试:一种教学方法 2469 o& e) q! q: N8 Y( |  ^8 \

9 E8 |) I! E- C7 x15.1.5 安全调查与系统调试间的差异 246# G  P: n$ j9 m- w, N% Y* R
1 ^6 k% z! l' c/ v
15.2 收集恰当、有用的日志 2473 }  T0 ^, y' [7 m7 v* N
9 `8 c, p8 Q, P
15.2.1 将日志设计为不可变的 248: U6 X. O$ \/ N. h4 P3 {& k
# e1 s$ t- f7 K' h- m
15.2.2 考虑隐私要素 249
& L$ _/ m4 R3 t* ~" I" h8 H: e  g
15.2.3 确定要保留哪些安全相关的日志 249
7 t9 k# p, J$ e& O+ W3 G! P2 y* A) k, B0 o  Q: r/ z
15.2.4 日志记录成本 252# s2 l* _% c) Y' I. V

( z0 m( C# c: W* o15.3 可靠、安全的调试访问 253
' C0 c0 o+ L5 z6 [9 v$ z- I. U( _( S8 @' F( ~, [+ h
15.3.1 可靠性 2531 p( R/ V% b/ q
1 L$ u8 e3 H2 _, n- A+ c+ l& b
15.3.2 安全性 253
! G1 O8 H0 E* \; |, v/ g0 H$ k* Y8 l9 c  m2 w
15.4 小结 2541 D3 {. J$ u6 D" P$ N! U1 s+ G7 _
& q; t, ^) s6 W# {: ?
第四部分 维护系统
# A# h2 u6 ~  R2 s) R3 ?( @; d8 Z9 T- R; T) W" \1 @5 w
第 16章 防灾规划 2578 X# a5 B& x* a# V# A) ~

$ D. b+ D* `1 M# J8 n6 @" d16.1 “灾难”的定义 257* ^: c8 P. D9 {' v$ N# G; f
1 ^! O1 D  `/ Q( J& r3 [! n
16.2 动态灾难响应策略 2586 L( w9 }% m! {5 `$ z* u4 h
' D$ J8 W9 z3 B$ X) v8 ^+ R5 p! g
16.3 灾难风险分析 259
3 G2 ], l9 P( b
9 Z- Y# g, J  m; x0 U7 ]16.4 建立事件响应团队 259) w- z; p: v' G; c1 c
8 e% O  g8 O. ?/ i( b+ w  `# ?
16.4.1 确定团队成员和角色 2606 o! J; y/ U! j+ B2 U8 z

$ D1 V# G7 G" z+ c% s8 U/ [16.4.2 制订团队章程 261. n) Y# E9 Y* H
0 t! v9 U' E. `- g: o2 v, u
16.4.3 建立严重性和优先级模型 262/ A& m( {/ @9 D$ n2 R2 S/ P! e% E4 d
) [3 l& ?; g( l' r0 C0 Z
16.4.4 确定与IR团队合作的运营参数 2623 I1 v/ {/ v7 v' D, R( K9 T
4 A& f0 K* q7 G' i/ A( m2 L" p, [
16.4.5 制订响应计划 263
/ v% G& n8 \. G  n- ~. L) F4 Y' K- {/ |& a5 Q8 e2 P( @) S
16.4.6 创建详细的行动手册 264  d7 ~4 ]0 d/ H

7 ]4 s1 J, ?0 s: p( {3 _16.4.7 确保访问和更新机制就位 2641 F6 K( S4 P4 p- @; F# D' e' o

- M& A+ Z& _4 B0 C, u. N! c! g0 ?16.5 在事件发生前预先安排系统和人员 264
) [. P3 t9 Y7 o0 d  f2 q% P- p% m& C! M3 l; T) M7 R* b
16.5.1 配置系统 265
! E0 u% J- b% L& d* m
2 R1 }0 C. e( M: Z- y! u16.5.2 培训 265
( k, T1 |' c+ J+ P  ~3 J
. i' K7 I+ r6 s7 ]4 [" o+ j16.5.3 流程和程序 266
! I2 I0 m& U4 F6 I2 A/ P  j; x# E! ~1 y
16.6 测试系统和响应计划 266- i; M  |6 [( ]4 A
% P% S& n7 ~: o% e3 I7 B7 ]- P
16.6.1 审计自动化系统 2670 n: a) o# B0 D, E

9 s) ]9 c1 {( p' Y& T$ M' g9 D2 |16.6.2 开展非侵入式桌面演练.267# g5 X- [" V$ d

  g1 S- }( C" ?4 W8 Y6 R# e& o4 O16.6.3 在生产环境中测试响应 268
- g4 y/ a% \8 u0 U/ s( v$ |- d3 r4 [
16.6.4 红队测试 270
; j' l+ D! h2 r
! y+ V0 W# }- p! K- B16.6.5 评估响应 2701 `# n* ~4 p4 O6 L/ Y5 s2 H: ]
1 V( u2 P% C4 {2 J: ~/ ?$ c
16.7 Google的案例 271# @) `4 i# G. k* ^
" t7 _; B- r; c9 y/ g! F
16.7.1 具有全球影响的测试 271
1 _1 N) ]: M+ R# _# o# Q& X  @( @9 r7 m  j9 o* H/ d
16.7.2 DiRT演习测试紧急访问 271
. E  g! p5 X- ~! r
9 }. i7 o9 Z/ r" Z+ u! T# J16.7.3 行业级漏洞 271
2 q0 N4 ^2 P& m/ P; |6 c$ T/ N* E2 }1 P  v
16.8 小结 272- V9 I' z0 l; _& @; A: q% E3 y

0 I, N$ S9 [2 C* \第 17章 危机管理 273
- B* \. T  h6 z6 v$ ?$ \8 s2 L- a* C: M  I3 g, K
17.1 是否存在危机 274
% ]7 v( E- f5 ~2 ^, b+ [. }9 `. W
17.1.1 事件分诊 274
8 H5 Q  _3 W4 ]- ~9 r
4 t* l- o' Y5 E- a( q1 q17.1.2 入侵与缺陷 275  F7 j/ j1 w6 e

: j- l  Y0 j& p7 g6 G+ @% k17.2 指挥事件 276
8 b7 C( `5 Y& ]' v$ V) w! h# \) _7 S% l' J0 k* f# O
17.2.1 第 一步:不要惊慌 276
4 p, F. A* u* e  b2 s. j# r  }( d+ {! q1 G( S1 L# l8 k
17.2.2 开展响应 277: A9 x, q' K1 |/ i

. Q. }% u: t0 A+ K9 y) S. K17.2.3 组建自己的事件团队 277  s# \7 w/ s7 u) q: a1 p- r0 ^1 w
- ~0 U8 w$ O) G  Q; J. q
17.2.4 OpSec 278( `9 Y) b( m: v  n2 C5 E4 o

- q3 q0 s4 d0 i5 O2 P17.2.5 牺牲好的OpSec实践换取更大的利益 2800 h8 J6 U% H' x5 }, h& b% g

/ R8 x" ~& {- Q5 J17.2.6 调查过程 280
- n. {8 j0 q5 X0 k9 @+ x# g% H, j
+ q4 n* j: a' [: Q17.3 控制事件 2835 Z: N  E! ^" x; a5 t. E

% l( u* t0 y/ W+ ^  @17.3.1 并行处理事件 283" [% S& d5 u( F
8 X7 I1 m; c6 [; S( p
17.3.2 移交 284
4 c2 t9 q+ E1 k0 {* P( J4 N% L: q' Q7 G# V
17.3.3 士气 286
8 ~9 [* c* D+ z9 v* r  M
7 n% X" X8 q* ~" R$ i0 Z17.4 沟通 287
# @" Z, H5 \6 X( d$ i3 R9 t1 q  F; ]& W
17.4.1 误解 287
2 P/ K$ _- g, Y4 b7 e& d- [( F- y8 S' K! f) p
17.4.2 拐弯抹角 2876 l: i8 h5 B- P4 Z  e  D

9 b, q2 b; C! P/ ?9 Y9 o, C+ \17.4.3 会议 2885 @0 `# {! W( u* |
9 |& w8 }; S6 A8 n8 z( O. }
17.4.4 让合适的人了解合适的细节 2898 z$ ]' B! H9 R* G! f
0 y' e$ |+ l, |7 Z
17.5 整合回顾 290% x8 v! e% M+ D/ t$ D0 N1 z( M, u

, z- r. ?7 h; M7 V% b/ M# S17.5.1 分诊 290
. v6 }. n+ O! s2 T) {- W% x3 u6 C3 k( A9 {5 J
17.5.2 宣布事件 290+ [! W* t) b- S
7 T; p, Z: _5 p# ?& c- U
17.5.3 沟通和OpSec 290- e/ |/ k" i- |

5 C6 H. S# y& e8 }% M8 m2 x17.5.4 开始处理事件 291, N5 S- x6 R' v3 N

; V, i( N* C. Z' t) u7 G17.5.5 移交 2912 ^! c+ h5 K" u: k3 M( T
" f( u2 b6 Y8 F2 {
17.5.6 交还事件调查工作 291: W' |6 `% |. Q4 R% Z

4 ~" r5 a- \4 T: e17.5.7 准备沟通和补救 292
! @0 P, e, W$ P
( g0 {1 z+ k1 Q17.5.8 结束 2920 g! L: b! i7 Z! o: c' H" P1 P. h

6 x* q% \' ]* \: b% P17.6 小结 293
4 c# ]$ ?/ p$ H: e  P( V
" }/ |3 N3 C8 g6 A# J第 18章 恢复和善后 294
8 C+ [* s  j* [1 C! O! X" q5 t
# _& E: i: G% U18.1 恢复调度 295( f6 l1 b( s1 F0 A+ ^

: J  `9 J7 ?$ p7 T18.2 恢复时间线 2967 a2 L# E5 T$ d; X$ U" o) ?* c

1 ~, o$ w+ q6 U/ r  D% d18.3 恢复计划 2976 @6 J+ J/ k4 w/ |+ p! X
) y' E0 W: I9 g. s/ g5 T& E. a! N
18.3.1 确定恢复范围 297: e  e/ |2 ?. l% y5 y
5 S. P4 o5 q$ Q1 G% z! `4 f: N- p* I
18.3.2 恢复过程的考虑因素 298
$ _  |. s  O4 z' w0 n% d) W$ U; ?& H4 [% m
18.3.3 恢复检查清单 301$ \+ C$ B1 R( B) I

( ?. n( \- |# q/ E( i3 T  |18.4 启动恢复 302
( f* L5 V) F- e4 A0 q: x$ b4 u+ O0 a$ c5 A7 L  _4 r: b
18.4.1 隔离资产 302! O4 S+ a. Z2 Q& ?
" `2 e3 @4 O! [6 ]# O; B+ n. c
18.4.2 系统恢复和软件升级 303+ r: f( P5 m+ r
8 D! v8 V& j- R  x" `
18.4.3 数据过滤 304& J8 U- a& ^5 t( A7 m' S' {
; V: y* d" D$ T6 Q8 G
18.4.4 恢复数据 304
6 G, X8 B/ f- V4 V- ~" D2 j3 H" u- j0 K, L% ~! L8 H2 q0 q# z- y/ S( a
18.4.5 更换凭据和密钥 305
0 ~; }8 B$ u% ~0 `! ?, Q1 L  y* E* ^
18.6 恢复之后 3063 d( {& x% G/ w9 S" G9 _8 o

; b/ {9 n7 u; k18.7 示例 308
9 e1 p2 _' U6 P. m% e3 K4 p2 F$ p: y0 i
18.7.1 被入侵的云实例 308
, N" F9 m$ I8 d/ v, B2 q7 v# q! v2 Q6 g* d0 M
18.7.2 大规模钓鱼攻击 309
0 A% v+ c1 E0 O% ?1 o6 f& K2 \% I- y! q  f' V6 n% q6 |# U
18.7.3 需要复杂恢复工作的、有针对性的攻击 310
& d, c# L/ u& X4 m4 `9 n+ K, ?3 x
18.8 小结 311; K. H# {$ B' ^' x% a3 ?+ M/ @
* N) C2 @8 L' w: ]
第五部分 组织与文化
/ N: |, [, {/ A1 m- V1 r( z) t/ H% \8 X" u' j+ \/ v; U- @
第 19章 案例研究:Chrome安全团队 315
" K& x& t. a) @) A3 g1 K2 K9 A2 S& Z2 O& l7 [
19.1 背景和团队发展史 315  m& L- @& t# r8 X- [: p

$ U; q" T& w6 F19.2 安全是团队的职责 3176 X1 R' Y; O+ q8 l& A2 s, P7 w

+ \' n9 b( m5 m19.3 帮助用户安全地浏览Web页面 318
4 F  C' b' }0 |8 U4 n% w
% Q) S% X* W, x2 f1 P19.4 速度很重要 319' x6 |( ?* _6 N; q

: S' K& d& ~4 W% I19.5 设计纵深防御机制 319
; e2 v; W+ W4 a" g* j( K" L5 x6 G( h& a" G$ j' C
19.6 保持透明,让社区参与进来 3206 a" |0 a; c" {9 d- y
! J) e& w$ a/ |- T9 R4 E
19.7 小结 320
2 L% U) W0 A3 w. I% S
) o' M1 W6 Z3 W6 r, K6 C第 20章 理解角色和责任 321
  v5 {# H2 Q9 @( `" E6 x: j4 [4 ], z8 s9 U1 x
20.1 谁为安全性和可靠性负责 322" Q" j4 ?. X- f

' o% a1 L* M5 j% o. w20.1.1 专家的作用 322
- }' E% Q4 ~. Z+ F9 _! j
7 \% a' F$ O6 j' \9 `8 o& f& z0 Q20.1.2 了解安全专业知识 324
; L8 ?, z: ~6 d% T0 s9 z1 o- w+ b6 H) B" x1 w! ]" \
20.1.3 资格认证和学术教育 325
0 ~2 B, W( `& @1 L0 i' _& ], E8 _" R4 V/ F- u+ _
20.2 将安全性整合到组织中 325
/ t# ~" A- K- I% U0 `
$ n( o  x; ~9 G$ O) n6 T1 W! l20.2.1 嵌入安全人员和安全团队 327
6 d- m* [6 x+ J3 b9 V6 u
( D. O5 b! j) G; a6 F- f6 U0 D! u20.2.2 案例:Google的嵌入式安全 327" p" \$ v+ s1 X% ~
9 r  Z8 t: a) c* Y; P* q- K) U
20.2.3 特殊的团队:蓝队和红队 329
# O: k) F+ l' L
4 t# Q0 M# r: d+ W20.2.4 外部研究者 330
5 \4 T- ^7 ~2 s* ]# q( i; D+ X* x# j: ]: w: k
20.3 小结 332
( @( L4 G2 }9 o* b7 R: I$ {8 `! t
第 21章 建立安全可靠的文化 333" I& j7 I) }2 w' ~
( X* c' d. {4 h# G' H
21.1 定义健康的安全性和可靠性文化 3345 j# b- q( ~: d" v8 R& D- [

; F2 _8 o* @( Y/ o21.1.1 默认的安全性和可靠性文化 334% @' Y0 w$ t" e# }
# v/ V& b6 s& ?* q( q. v9 _5 k
21.1.2 评审文化 335, x7 O1 G+ _+ \& M

  ?- @$ P8 P/ z5 I/ p21.1.3 意识文化 336
$ o3 O  g) m/ A! f. ]; q) ^# _* ?/ v4 i. o& B& J- Q# w' i; b
21.1.4 说“是”的文化 339
) c8 B# F3 s9 [
" Y  p! N8 }! X0 }7 I+ Q8 _7 c5 R21.1.5 接受必然性的文化 340: B: w, C  F* r3 o& z3 E
7 O# u; F. {7 z8 a) r  U
21.1.6 可持续发展文化 340
! b$ m6 n, r/ p$ g7 \0 y0 g  w0 V( j3 W% R( O" N1 Z
21.2 通过实践改变文化 342
) }. S' B8 c1 Q7 S1 q6 g; \& f5 V8 S& }9 P+ ~+ ?# M
21.2.1 对齐项目目标和激励参与者 3420 m, r- M" r9 b8 l4 O3 m/ ^
+ |( d5 Z. z+ j1 w
21.2.2 通过风险规避机制减少恐惧 3432 H+ {9 k. P  o4 q! M$ X2 t$ ]2 K, r

1 y& c& K1 ]+ }3 R5 w4 M21.2.3 使安全兜底措施成为常态 344! j' z$ V% }3 U& ^
9 s: e0 x7 n$ e9 A& J5 A& h
21.2.4 提高生产力和可用性 344) H- V& n6 B9 q
0 y, P* k# }0 U/ m" a0 z6 B2 f
21.2.5 多沟通,保持透明 345
, ]3 y% R( _' J5 f$ N( d; b, w& r+ v/ {4 `/ l9 [6 o6 {5 R
21.2.6 怀抱同理心 346
! b& f% f" j9 x/ X! J8 ?) V6 [3 u6 G* D) Y# A
21.3 说服领导层 347
, M5 M/ w. _5 f
/ D, R2 A( z9 m9 u21.3.1 了解决策过程 347
% z0 ?# U6 Q; T4 f3 {0 q- |; d3 e! Q- E2 R; W. d+ A% Z
21.3.2 为变革立案 348# c) |' r( }; _$ A
2 v- M7 h  Y4 D9 m, c6 o! A
21.3.3 选择自己的战场 349
3 d& ?9 J0 c7 A' _5 ^
" d: R, E* f) \( |  y" q21.3.4 升级和问题解决 3499 O! A: `: \5 u3 |# I! U
java8.com
4 |3 U$ u% R4 u! v- I* P; h2 l) ^21.4 小结 350
. T9 K) c3 \0 c3 ?" V. k; A& ~" h9 t
总结 351
4 ?+ y. ~8 M1 T3 `9 U; h2 _; R9 F' G! J
附录 灾难风险评估矩阵 353
( F4 v$ ]) S, W+ y+ j; }0 T0 w8 f, E+ d% s0 Z
作者介绍 355
# z1 L2 [6 ?8 k' E8 G( _
4 X1 D$ j8 q6 D, o' W) y2 Y封面介绍 355& T9 T- i0 Q. Z" F2 `- Q- M
百度云盘下载地址(完全免费-绝无套路):
游客,如果您要查看本帖隐藏内容请回复
$ P8 d# t  _( h. B0 B1 t; P
2 b0 c" p, y+ Q* G5 H: u+ l

0 k/ m- G1 G& b) p+ D/ U  U2 ]6 E1 ?  V9 X$ I
6 \) |1 S$ ^6 R+ s1 W! ?- k2 a$ a
5 [# ^1 W  z% \! |; _2 \

本帖子中包含更多资源

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

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

回答|共 25 个

梦丶一世相守

发表于 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吧了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则