Skip to content

Commit ddc5202

Browse files
committed
update threats
1 parent 3873483 commit ddc5202

File tree

1 file changed

+88
-50
lines changed

1 file changed

+88
-50
lines changed

intro.rst

Lines changed: 88 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ operation in the report from Donn Seeley written soon afterwards.
8282
.. admonition:: Further Reading
8383

8484
Donn Seeley. `A Tour of the
85-
Worm. <http://www.cs.unc.edu/~jeffay/courses/nidsS05/attacks/seely-RTMworm-89.html>`__.
85+
Worm <http://www.cs.unc.edu/~jeffay/courses/nidsS05/attacks/seely-RTMworm-89.html>`__.
8686

8787
What we present in this book is a systems perspective on the
8888
security of computer networks. Our focus is on how to create networks
@@ -136,14 +136,14 @@ perceived shortcomings of the Internet. High on the list of such
136136
shortcomings to be addressed was security.
137137

138138
The security features that were proposed for IPv6 included headers to
139-
support encryption, message integrity and authentication. However it
139+
support encryption, message integrity and authentication. However, it
140140
became clear that such features did not require a new version of IP,
141141
only a way to add optional information to the packet
142142
header, and so these capabilities also made their way into IPv4. These
143143
extensions became known collectively as IPSEC (IP security) and are
144-
described in several dozen RFCs.
144+
described in several dozen RFCs. We will discuss them in a later chapter.
145145

146-
It is worth noting that even if IPSEC had
146+
It is worth noting that, even if IPSEC had
147147
existed in 1988, it would probably have had minimal impact on the
148148
spread of the Morris Worm, because the worm spread among
149149
hosts that were *supposed* to connect to each other (e.g., to exchange
@@ -174,9 +174,9 @@ The Internet's routing system is at least as important as DNS, and
174174
similarly lacked any security provisions in its original design. Not
175175
only do we need to be concerned about modification of routing messages
176176
in transit, but it has historically been all too easy to simply send
177-
incorrect routing updates in BGP, e.g., advertising a good route to
178-
some prefix from an autonomous system that has no such route. Thus,
179-
securing BGP has likewise proven to be a multi-decade, incremental task.
177+
incorrect routing updates in BGP. For example, a router might advertise a good route to
178+
some prefix from an autonomous system that has no such route.
179+
Securing BGP has likewise proven to be a multi-decade, incremental task.
180180

181181
This is by no means a complete history of Internet security but it
182182
gives some sense of the scope of the problems faced. Some further
@@ -219,7 +219,7 @@ practical or required special hardware; today it is routine that every
219219
packet sent between a web browser and server is encrypted. Thus, the
220220
trade-offs around encryption are different than they were when the
221221
Internet was originally designed. And just as we consider the costs
222-
that security techniques impose on our system, we can also consider
222+
that security techniques impose on our system, we must also consider
223223
the costs they impose on adversaries. Much of security consists of
224224
finding ways to make those costs highly asymmetric, so that they are
225225
much higher for the adversary than for those seeking to protect their
@@ -236,7 +236,7 @@ security strategy:
236236
* Step 5: What costs and trade-offs does the security solution impose?
237237

238238
Schneier's book is targeted at a general audience, addressing
239-
security in a broad context (e.g., airports), not just systems and
239+
security in a broad context (e.g., airports), not just computing systems and
240240
networks. Nevertheless it provides some useful guidelines that are
241241
applicable to system security.
242242

@@ -247,67 +247,105 @@ applicable to system security.
247247
Uncertain World. Copernicus Books, 2003.
248248

249249

250+
Threats to Network Security
251+
----------------------------
250252

251-
.. from the original book - need some cleanup to splice with the above text
252253

253-
Computer networks are typically a shared resource used by many
254-
applications representing different interests. The Internet is
255-
particularly widely shared, being used by competing businesses, mutually
256-
antagonistic governments, and opportunistic criminals. Unless security
257-
measures are taken, a network conversation or a distributed application
258-
may be compromised by an adversary.
259254

260-
Consider, for example, some threats to secure use of the web. Suppose
255+
.. from the original book chapter - somewhat edited to follow the above text
256+
257+
Computer networks are, like multi-user computers, invariably a shared
258+
resource. They are used by many applications representing different
259+
interests. The Internet is particularly widely shared, being used by
260+
competing businesses, mutually antagonistic governments, and
261+
opportunistic criminals. Most of the world's information is stored on
262+
systems connected to the Internet. Unless effective security measures
263+
are in place, a network conversation, a distributed application, or an
264+
end-system storing sensitive data may be compromised by an
265+
adversary. Critical systems ranging from healthcare delivery to the
266+
power grid are at risk of disruption from various forms of attack.
267+
268+
269+
A simple and familiar example of threats and mitigations is the secure use of the web. Suppose
261270
you are a customer using a credit card to order an item from a website.
262-
An obvious threat is that an adversary would eavesdrop on your network
271+
An obvious threat is that an adversary could eavesdrop on your network
263272
communication, reading your messages to obtain your credit card
264273
information. How might that eavesdropping be accomplished? It is trivial
265274
on a broadcast network such as an Ethernet or Wi-Fi, where any node can
266275
be configured to receive all the message traffic on that network. More
267-
elaborate approaches include wiretapping and planting spy software on
268-
any of the chain of nodes involved. Only in the most extreme cases
269-
(e.g.,national security) are serious measures taken to prevent such
270-
monitoring, and the Internet is not one of those cases. It is possible
271-
and practical, however, to encrypt messages so as to prevent an
272-
adversary from understanding the message contents. A protocol that does
276+
elaborate approaches include wiretapping or planting spy software on
277+
any of the chain of nodes involved. The insertion of monitoring
278+
software might be performed by an operator with physical or
279+
remote access to a router (e.g., an employee of an Internet service
280+
provider). A vulnerability in the router's software might be exploited
281+
by an attacker
282+
to gain remote access. And in recent years there have been examples of
283+
"supply chain attacks" in which malicious software is inserted in some
284+
code, either open source or proprietary, that is subsequently used in
285+
another vendor's products. In other words, there are a *lot* of ways
286+
that the data in flight from your browser to the website might end up
287+
in the hands of an attacker.
288+
289+
While various steps can be taken to secure the devices along the path
290+
traveled by your data, it is relatively straightforward today to
291+
encrypt all messages such that even if an adversary has access to the
292+
data, they are unable to *understand* the message contents. A protocol that does
273293
so is said to provide *confidentiality*. Taking the concept a step
274-
farther, concealing the quantity or destination of communication is
275-
called *traffic confidentiality*because merely knowing how much
276-
communication is going where can be useful to an adversary in some
294+
farther, concealing the quantity and destination of communication is
295+
called *traffic confidentiality*because merely knowing how much
296+
traffic is going where can be useful to an adversary in some
277297
situations.
278298

279-
Even with confidentiality there still remains threats for the website
280-
customer. An adversary who can’t read the contents of your encrypted
281-
message might still be able to change a few bits in it, resulting in a
282-
valid order for, say, a completely different item or perhaps 1000 units
283-
of the item. There are techniques to detect, if not prevent, such
284-
tampering. A protocol that detects such message tampering is said to
285-
provide *integrity*.
286-
287-
Another threat to the customer is unknowingly being directed to a false
288-
website. This can result from a Domain Name System (DNS) attack, in
289-
which false information is entered in a DNS server or the name service
290-
cache of the customer’s computer. This leads to translating a correct
291-
URL into an incorrect IP address—the address of a false website. A
292-
protocol that ensures that you really are talking to whom you think
293-
you’re talking is said to provide *authentication*. Authentication
294-
entails integrity, since it is meaningless to say that a message came
295-
from a certain participant if it is no longer the same message.
299+
Confidentiality alone is not sufficient. An adversary who can’t read
300+
the contents of your encrypted message might nevertheless be able to
301+
modify it. By changing a few bits, it might be possible to order a
302+
completely different item or perhaps 1000 units of the item. There are
303+
techniques to detect, if not prevent, such tampering. A protocol that
304+
detects such message tampering is said to provide
305+
*integrity*. Similarly, an attacker might capture a message and
306+
send it again at another time, which might cause a duplicate purchase,
307+
for example. This is called a *replay attack* and prevention of such
308+
attacks is a common feature of security protocols.
309+
310+
Another threat to the customer is unknowingly being directed to a
311+
false website. This can result from a Domain Name System (DNS) attack,
312+
in which false information is entered in a DNS server or the name
313+
service cache of the customer’s computer. This leads to translating a
314+
correct URL into an incorrect IP address—the address of a false
315+
website. It is also common to create websites with domain names that
316+
look like they might be legitimate. A protocol that ensures that you
317+
really are talking to whom you think you are is said to provide
318+
*authentication*. Authentication is separate from but also requires integrity, since it is
319+
meaningless to say that a message came from a certain participant if
320+
it is no longer the same message.
296321

297322
The owner of the website can be attacked as well. Some websites have
298323
been defaced; the files that make up the website content have been
299324
remotely accessed and modified without authorization. That is an issue
300325
of *access control*: enforcing the rules regarding who is allowed to do
301-
what. Websites have also been subject to denial of service (DoS)
326+
what. Websites are also subject to denial-of-service (DoS)
302327
attacks, during which would-be customers are unable to access the
303328
website because it is being overwhelmed by bogus requests. Ensuring a
304329
degree of access is called *availability*.
305330

306331
In addition to these issues, the Internet has notably been used as a
307332
means for deploying malicious code, generally called *malware*, that
308-
exploits vulnerabilities in end systems. *Worms*, pieces of
309-
self-replicating code that spread over networks, have been known for
310-
several decades and continue to cause problems, as do their relatives,
311-
*viruses*, which are spread by the transmission of infected files.
312-
Infected machines can then be arranged into *botnets*, which can be used
333+
exploits vulnerabilities in end systems. *Worms*, of which the Morris
334+
worm is a famous example, are pieces of
335+
self-replicating code that spread over networks.
336+
*Viruses* differ slightly from worms, in that they are spread by the transmission of infected files.
337+
Once infected, machines can then be arranged into *botnets*, in which
338+
a set of compromised machines are harnessed together
313339
to inflict further harm, such as launching DoS attacks.
340+
341+
We will look further into these various classes of threats and the
342+
measures developed to mitigate them in the following chapters. For a
343+
solid introduction to system security we recommend the chapter below
344+
from Saltzer and Kaashoek.
345+
346+
347+
.. admonition:: Further Reading
348+
349+
J. Saltzer and F. Kaashoek. `Principles of Computer System Design: An
350+
Introduction. Chapter 11 <https://ocw.mit.edu/courses/res-6-004-principles-of-computer-system-design-an-introduction-spring-2009/pages/online-textbook/>`__.
351+

0 commit comments

Comments
 (0)