Skip to content

Commit 96286a5

Browse files
committed
typos
1 parent 2a80beb commit 96286a5

File tree

4 files changed

+18
-14
lines changed

4 files changed

+18
-14
lines changed

infra.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1078,7 +1078,7 @@ anomalous behavior, but individual servers can also limit the impact
10781078
by encoding connection state in the sequence number included in the
10791079
SYN+ACK they send back to the client—a "SYN cookie" of sorts—and then
10801080
allocate connection state locally only after the client goes to the
1081-
trouble of correctly ACK'ing that packet. This is a variant of the
1081+
trouble of correctly ACKing that packet. This is a variant of the
10821082
first countermeasure in that it forces the attacker to use additional
10831083
resources.
10841084

intro.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ pioneers are interviewed.
203203

204204
A discussion of security often begins with an analysis of the *threat
205205
landscape*. That is, what are the threats that our system is likely to
206-
be exposed to and which we hope to mitigate. This is one of the great
206+
be exposed to and which we hope to mitigate? This is one of the great
207207
challenges in developing a security strategy: how do we know when we
208208
have identified all the likely threats? Some may be obvious, such as
209209
eavesdropping on unencrypted traffic sent over a shared medium, but
@@ -281,8 +281,8 @@ virtual machines in a cloud only complicates this decision. Even when
281281
you trust the hardware, you might or might not trust the firmware or
282282
the OS (or you might trust it only when certain security enhancements
283283
are enabled). This illustrates a common design question that every
284-
system must face: What do you accept to be the *Trusted Computing Base
285-
(TCB)*; that is, what hardware and software components do you trust?
284+
system must face: what do you accept to be the *Trusted Computing Base
285+
(TCB)*? That is, what hardware and software components do you trust?
286286

287287
We revisit this topic in the next chapter, but given that this book
288288
focuses on network security, a reasonable starting point is to trust

preface.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ opportunity to write about security in a way that would make sense to
4141
a networking person. Also, we wanted to take more of a systems
4242
approach to the topic. While we always try to take a system-level view
4343
in everything we write, it's easy with security to get bogged down in
44-
the details of individual components such as cryptographic algorithms
44+
the details of individual components, such as cryptographic algorithms,
4545
without really tackling the systems issues. Cryptography is cool and
4646
interesting (in our view at least) but it isn't really the main thing
4747
to focus on if you are building secure systems. So while we do explain

principles.rst

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ or we'd simply secure a system by denying access to all users.
157157

158158
For our purposes, the main takeaway is that security is unique in that
159159
it is not just a requirement *for* a system, but it is often best
160-
viewed as a system in an of itself, one that must be usable,
160+
viewed as a system in and of itself, one that must be usable,
161161
scalable, manageable, evolvable, observable, available, reliable, and
162162
so on.
163163

@@ -174,19 +174,20 @@ those principles are applied in practice.
174174

175175
2.3.1 Defense in Depth
176176
~~~~~~~~~~~~~~~~~~~~~~
177+
177178
As we have noted, one of the central challenges in security is that we
178179
never know if we have done enough. Much as we try to defend against
179180
all possible attacks, there is no way to be sure that we've thought of
180181
everything. This is what we mean by saying that security is a negative
181182
goal: we aim to be sure that a set of things cannot happen, but we can
182183
never quite be sure that all vulnerabilities have been found and
183184
mitigated. This leads to the idea of *defense in depth*: layer upon
184-
layer of defense, so that even if one layer is penetrated, the next
185-
layer is unlikely to be. Only by getting through all the layers of
186-
defense will an attacker be able to achieve their goal (of stealing
187-
our data, for example). The hope is that with enough layers of
188-
defense, the odds of an attacker penetrating all of them becomes
189-
vanishingly small.
185+
layer of defense, so that even if one layer is penetrated, there are
186+
multiple layers of defense still in place. Only by getting through
187+
*all* the layers of defense will an attacker be able to achieve their
188+
goal (of stealing our data, for example). The hope is that with enough
189+
layers of defense, the odds of an attacker penetrating all of them
190+
becomes vanishingly small.
190191

191192
As a simple example, a corporation might make use of a VPN (virtual
192193
private network) to ensure that only authorized users can access
@@ -227,7 +228,10 @@ anything as root on Unix-like systems unless absolutely necessary.
227228

228229
In the context of networking, this principle implies that applications
229230
which access the network should only have access to the set of
230-
resources needed to do their jobs.
231+
resources needed to do their jobs. The concept of zero trust, which
232+
has started to gain popularity as an approach to network security in recent years,
233+
follows closely the idea of least privilege. We return to this topic
234+
in a later chapter.
231235

232236
.. feel like there is more detail to provide here.
233237
@@ -298,7 +302,7 @@ the system, the Internet's default behavior does not provide fail-safe
298302
defaults. Efforts to revert to a more secure default behavior include
299303
such old ideas as network firewalls and virtual private networks,
300304
along with more modern approaches such as microsegmentation and
301-
zero-trust architectures. We will discuss these developments in a later chapter.
305+
zero trust architectures. We will discuss these developments in a later chapter.
302306

303307
2.3.5 Least Common Mechanism
304308
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

0 commit comments

Comments
 (0)