Chapter 15 Outline

advertisement
Chapter 15 Outline
I.
Attacking Computer Systems and Networks
A. Attacks are attempts by unauthorized individuals to access or modify
information, to deceive the system so that an unauthorized individual can take
over an authorized session, or to disrupt service to authorized users.
B. Attacks on computer systems and networks can be grouped into two broad
categories - attacks on specific software (such as an application or the operating
system itself) and attacks on a specific protocol or service.
1.
Attacks on a specific application or operating system are generally possible
because of either an oversight in the code (and possibly in the testing of that
code) or because of a flaw or bug in the code (again indicating a lack of
thorough testing).
2.
Attacks on specific protocols or services are attempts to either take
advantage of a specific feature of the protocol or service or to use the
protocol or service in a manner for which it was not intended.
C. The target of an attacker can be of two types:
1.
Targets of opportunity where the attacker is attempting to find any machine
that is susceptible to a specific vulnerability.
2.
Defined targets where the attacker wants to gain access to a very specific
target and must attempt to find a vulnerability that exists in that target.
D. Denial-of-Service attacks.
1.
Denial-of-Service (DOS) attacks can exploit a known vulnerability in a
specific application or operating system, or they may attack features (or
weaknesses) in specific protocols or services. In this form of attack, the
attacker is attempting to deny authorized users access either to specific
information or to the computer system or network itself.
2.
The purpose of such an attack can be to simply prevent access to the target
system, or the attack can be used in conjunction with other actions to gain
unauthorized access to a computer or network.
3.
A SYN flooding attack may be used to prevent service to a system
temporarily to take advantage of a trusted relationship that exists between
that system and another. SYN flooding is an example of a DOS attack that
takes advantage of the way TCP/IP networks were designed to function. It
can be used to illustrate the basic principles of any DOS attack.
a)
SYN flooding utilizes the TCP three-way handshake that is used to
establish a connection between two systems.
b) In a SYN flooding attack, the attacker sends fake communication
requests to the targeted system.
c)
Each of these requests will be answered by the target system, which
then waits for the third part of the handshake.
d) Since the requests are fake (a nonexistent IP address is used in the
requests, so the target system is responding to a system that does not
exist), the target will wait for responses that will never come.
e)
The target system will drop these connections after a specific time-out
period, but if the attacker sends requests faster than the time-out period
eliminates them, the system will quickly be filled with requests.
f)
The number of connections a system can support is finite, so when
more requests come in than can be processed, the system will soon be
reserving all its connections for fake requests.
g) At this point, any further requests are simply dropped (ignored), and
legitimate users who want to connect to the target system are denied
access.
4.
Another simple DOS attack is the famous ping-of-death (POD) attack. It
illustrates attack targeted at a specific application or operating system, as
opposed to SYN flooding, which targets a protocol.
a)
In the POD attack, the attacker sends an Internet Control Message
Protocol (ICMP) “ping” packet equal to, or exceeding 64KB (which is
to say, greater than 64 * 1024 = 65,536 bytes).
b) This type of packet should not occur naturally (a ping packet should not
be larger than 64KB).
c)
Certain systems were not able to handle this size of packet, and the
system would hang or crash.
5.
A Denial-of-Service attack employing multiple attacking systems is known
as a distributed Denial-of-Service (DDOS) attack.
a)
The goal of a DDOS attack is to deny the use of or access to a specific
service or system.
b) In a DDOS attack, the method used to deny service is simply to
overwhelm the target with traffic from many different systems.
c)
A network of attack agents (sometimes called zombies) is created by
the attacker. Upon receiving the attack command from the attacker, the
attack agents start sending a specific type of traffic against the target.
d) The attack agents are not willing agents—they are systems that have
been compromised and on which the DDOS attack software has been
installed. To compromise these agents, the attacker needs to gain
unauthorized access to the system or trick authorized users to run a
program that installs the attack software.
e)
The creation of the attack network may in fact be a multistep process in
which the attacker first compromises a few systems that are then used
as handlers or masters, and which in turn compromise other systems.
f)
Once the network has been created, the agents wait for an attack
message that will include data on the specific target before launching
the attack.
6.
One important precaution to take to stop or mitigate the effects of a DOS or
DDOS attack is to ensure that the latest patches and upgrades have been
executed on systems and the applications running on them.
7.
Another approach involves changing the time-out option for TCP
connections so that attacks, such as the SYN flooding attack, are difficult to
perform because unused connections are dropped more quickly.
8.
For DDOS attacks, the workload can be distributed across several systems
so that any attack against the system would have to target several hosts to
be completely successful. This is an attempt to mitigate the effect of the
attack, as opposed to preventing or stopping an attack.
9.
To prevent a DDOS attack, it is important to either intercept or block the
attack messages or keep the DDOS network from being established in the
first place. The problem with this type of prevention approach, however, is
that it is not something that can be done to prevent an attack on the network.
It is something that can keep the network from being used to attack other
networks or systems.
10. An efficient way to counter several forms of DOS and DDOS attacks is to
block ICMP packets at the organization’s server end since many attacks rely
on ICMP.
E. Backdoors and trapdoors.
1.
Backdoors were originally methods used by software developers to ensure
that they could gain access to an application even if something were to
happen in the future to prevent normal access methods.
2.
A hard-coded password that could be used to gain access to the program in
the event that administrators forgot their own system password is
sometimes referred to as a trapdoor.
3.
The term backdoor is also used to refer to programs that attackers install
after gaining unauthorized access to a system to ensure that they can
continue to have unrestricted access, even if their initial access method is
discovered and blocked. Backdoors can also be installed by authorized
individuals inadvertently, should they run software that contains a Trojan
horse.
4.
A variation on the backdoor, are the rootkits. They are established not to
gain root access but rather to ensure continued root access. Rootkits are
generally installed at a lower level, closer to the actual kernel level of the
operating system.
F. Sniffing.
1.
A network sniffer is a software or hardware device used to observe traffic
as it passes through a network on shared broadcast media. The device can
be used to view all traffic, or it can target a specific protocol, service, or
even a string of characters.
a)
The network device that connects a computer to a network is designed
to ignore all traffic that is not destined for that computer.
b) Network sniffers ignore this friendly agreement and observe all traffic
on the network, whether destined for that computer or others.
c)
A network card that is listening to all network traffic and not just its
own is said to be in “promiscuous mode.”
d) Some network sniffers are designed not just to observe all traffic but to
modify traffic as well.
2.
For network sniffers to be most effective, they need to be on the internal
network. This means that the chances for outsiders to use them against the
organization are extremely limited.
G. Spoofing.
1.
Spoofing is nothing more than making data look like it has come from a
different source.
2.
Spoofing e-mail.
a)
E-mail spoofing means sending a message with an address that is
different from the one from which it was sent.
b) This can be easily accomplished, and there are several different ways to
do it.
(1) A very simple method often used to demonstrate how simple it is
to spoof an e-mail address is to telnet to port 25 (the port
associated with e-mail) on a system.
(c) A variation on e-mail spoofing, though it is not technically spoofing, is
for the attacker to acquire a URL close to the one they want to spoof so
that e-mail sent from their system appears to have come from the
official site unless the address is read carefully.
3.
IP address spoofing.
a)
The way the IP protocol is designed to work is to have the originators
of any IP packet include their own IP address in the “From” portion of
the packet.
b) While this is the intent, there is nothing that prevents a system from
inserting a different address in the “From” portion of the packet.
4.
Spoofing and trusted relationships.
a)
Spoofing can also take advantage of a trusted relationship between two
systems.
b) If two systems are configured to accept the authentication
accomplished by each other, an individual logged on to one system
might not be forced to go through an authentication process again to
access the other system.
(1) An attacker can take advantage of this arrangement by sending a
packet to one system that appears to have come from a trusted
system.
(2) Since the trusted relationship is in place, the targeted system may
perform the requested task without authentication.
c)
Often a reply is sent once a packet is received. However, the system
that is being impersonated could interfere with the attack, as it would
receive an acknowledgement for a request it never made.
(1) The attacker will often initially launch a DOS attack (such as a
SYN flooding attack) to disable the spoofed system temporarily
for the period of time that the attacker is exploiting the trusted
relationship.
(2) Once the attack is completed, the DOS attack on the spoofed
system would be terminated and possibly, apart from having a
temporarily non-responsive system, the administrators for the
systems may never notice that the attack occurred.
d) Administrators are encouraged to limit any trusted relationships
between hosts. Firewalls should also be configured to discard any
packets from outside of the firewall that have From addresses
indicating they originated from inside the network.
5.
Spoofing and sequence numbers.
a)
Spoofing attacks from inside a network are much easier to perform than
attacks from outside. This is because insiders can observe the traffic to
and from the target and can also formulate the necessary packets.
b) Formulating the packets is more complicated for external attackers
because there is a sequence number associated with TCP packets.
(1) A sequence number is a 32-bit number established by the host
that is incremented for each packet sent.
(2) Packets are not guaranteed to be received in order, and the
sequence number can be used to help reorder packets as they are
received and to refer to packets that may have been lost in
transmission.
c)
In the TCP three-way handshake, two sets of sequence numbers are
created.
(1) The first system chooses a sequence number to send with the
original SYN packet that it sends.
(2) The system receiving this SYN packet acknowledges with a
SYN/ACK.
(3) It sends back the first sequence number plus one (that is, it
increments the sequence number sent to it by one).
(4) It then creates its own sequence number and sends that along
with it.
(5) The original system receives the SYN/ACK with the new
sequence number.
(6) It increments the sequence number by one and uses it in an ACK
package that it responds to.
d) The difference in the difficulty of attempting a spoofing attack from
inside a network and from outside involves determining the sequence
number.
(1) An insider can observe the traffic the target host responds with
and the sequence number the system creates, and therefore, can
respond with the correct sequence number.
(2) If the attacker is external to the network, the sequence number the
target system generates will not be observed, making it difficult
for the attacker to provide the final ACK with the correct
sequence number.
e)
Predicting sequence numbers is possible.
(1) Sequence number for each session is not started from the same
number, so that different packets from different concurrent
connections will not have the same sequence numbers.
(2) Instead, the sequence number for each new connection is
incremented by some large number to keep them from being the
same.
(3) The sequence number may also be incremented by some large
number every second (or some other time period).
H. Man-in-the-middle attacks
1.
A man-in-the-middle attack generally occurs when attackers are able to
place themselves in the middle of two other hosts that are communicating in
order to view and/or modify the traffic.
a)
Ideally, this is done by ensuring that all communication going to or
from the target host is routed through the attacker's host (which may be
accomplished if the attacker can compromise the router for the target
host).
b) The attacker can then observe all traffic before relaying it and can
actually modify or block traffic.
2.
The amount of information that can be obtained in a man-in-the-middle
attack will be limited if the communication is encrypted.
3.
Man-in-the-middle attacks on encrypted traffic.
a)
The term “man-in-the-middle attack” is sometimes used to refer to a
more specific type of attack—one in which the encrypted traffic issue is
addressed.
b) To communicate securely with your friend Bob, you might ask him for
his public key so you could encrypt your messages to him and likewise,
you, in turn, would supply Bob with your public key.
(1) An attacker can conduct a man-in-the-middle attack by
intercepting your request for Bob's public key and sending your
public key to him.
(2) The attacker would replace your public key with the attacker's
public key, and would send it to Bob.
(3) The attacker's public key would also be sent to you by the
attacker instead of Bob's public key.
(4) Now, if a message is encrypted by you or Bob, it will be
encrypted using the attacker's public key.
(5) The attacker can now intercept it, decrypt it, and then send it by
re-encrypting it with the appropriate key for either you or Bob.
I. Replay attacks.
1.
A replay attack is where the attacker captures a portion of a communication
between two parties and retransmits later. These attacks are associated with
attempts to circumvent authentication mechanisms, such as capturing and
reusing a certificate.
2.
These attacks can be prevented using encryption, cryptographic
authentication, and time stamps. If a portion of the certificate or ticket
includes a date/time stamp or an expiration date/time, and this portion is
also encrypted as part of the ticket or certificate, replaying it later will prove
useless, since it will be rejected as having expired.
J. TCP/IP hijacking.
1.
The terms TCP/IP hijacking and session hijacking are used to refer to the
process of taking control of an already existing session between a client and
a server.
a)
An attacker attempting session hijacking does not have to circumvent
any authentication mechanisms, as the user has already authenticated
and established the session.
b) Once the user has completed the authentication sequence, the attacker
can then usurp the session and carry on as if the attacker, and not the
user, had authenticated with the system.
c)
To prevent the user from noticing anything unusual, the attacker may
decide to attack the user's system and perform a DOS attack on it. As a
result, the user is unlikely to notice the extra traffic that is taking place
on the system.
2.
Hijack attacks generally are used against Web and telnet sessions. Sequence
numbers are also applied to session hijacking, since the hijacker will need to
provide the correct sequence number to continue the appropriate sessions.
K. Attacks on encryption.
1.
Cryptography is the art of “secret writing,” and encryption is the process of
transforming plaintext into an unreadable format known as ciphertext using
a specific technique or algorithm.
2.
Cryptanalysis is the process of attempting to break a cryptographic system.
It is an attack on the specific method used to encrypt the plaintext.
3.
Weak keys.
a)
Certain encryption algorithms may have specific keys that yield poor,
or easily decrypted ciphertext.
b) Any key with long strings of 0's would yield portions of the ciphertext
that were the same as the plaintext.
4.
Exhaustive search of key space.
a)
Even if the specific algorithm used to encrypt a message is complicated
and has not been shown to have weak keys, the key length will still
play a significant role in how easy it is to attack the method of
encryption.
b) The longer a key is, the harder it will be to attack.
5.
Indirect attacks.
a)
One of the most common ways of attacking an encryption system is to
find weaknesses in mechanisms surrounding cryptography.
b) In attacks that target these types of weaknesses, it is not the
cryptographic algorithm itself that is being attacked, but rather the
implementation of that algorithm in the real world.
L. Password guessing.
1.
The most common form of authentication is the userID and password
combination.
2.
Poor password choices
a)
The least technical of the various password-attack techniques includes
an attacker attempting to guess the password of an authorized user of
the system or network.
b) Guessing passwords works because people generally pick poor
passwords. The problem users face is that they need to select a
password they can remember.
c)
An attacker can guess a user’s password if they can obtain a valid
userID and a little bit of information about the user.
(1) Obtaining valid userIDs is often a simple matter, because
organizations tend to use an individual's name in some
combination.
(2) Organizations sometimes make it even easier for attackers to
obtain this sort of information by posting the names of their
“management team” and other individuals, sometimes with short
biographies, on their Web sites.
d) Even if the person does not use some personal detail as their password,
the attacker may still get lucky, since many people pick a common
word for their password.
4.
Dictionary attack
a)
Another method of determining passwords is to use a passwordcracking program.
b) These programs often use a dictionary of words—the words can be
used by themselves, or two or more smaller ones may be combined to
form a single possible password.
c)
The programs often permit the attacker to create various rules that tell
the program how to combine words to form new possible passwords.
(1) Users commonly substitute certain numbers for specific letters. If
a rule were created that tried all words in the dictionary and then
tried the same words substituting the numbers for specific letters,
the password would be cracked.
(2) Rules can also be defined so that the cracking program will
substitute special characters for other characters, or combine
words together.
5.
Brute-force attack
a)
A brute-force attack entails the password-cracking program attempting
all possible password combinations.
b) The length of the password and the size of the set of possible characters
in the password will greatly affect the time a brute-force attack will
take.
c)
With the increase in computer speed, the time it takes to generate
password combinations makes it much more feasible to launch bruteforce attacks against certain computer systems and networks.
d) A brute-force attack on a password can take place at two levels.
(1) It can be an attack on a system where the attacker is attempting to
guess the password at the login prompt. The attack can be made
more difficult by locking the account after a few failed login
attempts.
(2) It can be an attack against the list of passwords contained in a
password file. The attack can be thwarted by securely
maintaining the password file so that others may not obtain a
copy of it.
6.
Birthday attack
a)
The birthday attack is a special type of brute-force attack.
b) It gets its name from something known as the birthday paradox, which
states that in a group of at least 23 people, the chance that there will be
two individuals with the same birthday is greater than 50 percent.
M. Software exploitation
1.
An attack that takes advantage of bugs or weaknesses in software is referred
to as software exploitation.
2.
These weaknesses can be the result of poor design, poor testing, or poor
coding practices.
3.
One common weakness that has been exploited on a number of occasions is
buffer overflows. A buffer overflow occurs when a program is provided
more data for input than it was designed to handle.
N. Wardialing and WarDriving
1.
Wardialing is the term used to describe an attacker's attempt to discover
unprotected modem connections to computer systems and networks.
2.
Wardialing is successful, mostly because of rogue modems which are
unauthorized modems attached to computers on a network by authorized
users.
3.
New technology has been developed to address this common backdoor into
corporate networks. Telephone firewalls have been created, which block
any unauthorized modem connections into an organization.
4.
Another avenue of attack on computer systems and networks has seen a
tremendous increase over the last few years because of the increase in the
use of wireless networks.
a)
Wireless networks allow access to a network and resources from
anywhere.
b) To ensure access throughout a facility, stations are often placed at
numerous locations, some of which may actually provide access to
areas outside of the organization in order to ensure that the farthest
offices in the organization can be reached.
(1) Frequently, access extends into adjacent offices or into the
parking lot or street.
(2) Attackers can locate these access areas that fall outside of the
organization and attempt to gain unauthorized access.
c)
The term WarDriving refers to the activity where attackers wander
throughout an area (often in a car) with a computer with wireless
capability, searching for wireless networks they can access.
O. Social engineering
1.
Social engineering relies on lies and misrepresentation, which an attacker
uses to trick an authorized user into providing information or access the
attacker would not normally be entitled.
2.
Social engineering also applies to physical access.
a)
Due to poor security practices, attackers can gain physical access to an
office. Given a little unsupervised time, a userID and password pair
might be found on a notepad or sticky note.
b) Unsupervised access may not even be required, depending on how poor
the security practices of the organization are.
II. Malware
A. The term Malware (which is also known as malicious code) refers to software
that has been designed for some nefarious purpose. Such software may be
designed to cause damage to a system by deleting all files, for example, or it may
be designed to create a backdoor in the system in order to grant access to
unauthorized individuals.
B. Generally, the installation of malicious code is done so that it is not obvious to the
authorized users.
C. Viruses
1.
A virus is a piece of malicious code that replicates by attaching itself to
another piece of executable code.
a)
When the other executable code is run, the virus also executes and has
the opportunity to infect other files and perform any other nefarious
actions it was designed to do.
b) The specific way that a virus infects other files, and the types of files it
infects, depends on the type of virus.
2.
Boot sector virus.
a)
A boot sector virus infects the boot sector portion of either a floppy
disk or a hard drive.
(1) When a computer is first turned on, a small portion of the
operating system is initially loaded from hardware.
(2) This small operating system then attempts to load the rest of the
operating system from a specific location (sector) on either the
floppy or the hard drive. A boot sector infects this portion of the
drive.
3.
Program virus.
a)
Another type of virus is the program virus, which attaches itself to
executable files—typically files ending in .exe or .com on Windowsbased systems.
b) The virus is attached in such a way that it is executed before the
program. Most program viruses also hide a nefarious purpose, such as
deleting the hard drive. It is triggered by a specific event, such as a date
or after a certain number of files is infected.
c)
Like other types of viruses, program viruses are often not detected until
after they execute their malicious payload.
4.
Macro virus.
a)
The proliferation of software that include macro-programming
languages has resulted in a new breed of virus— the macro virus.
b) This type of virus is so common today that it is considered a security
best practice not to open a document attached to an e-mail if it seems at
all suspicious.
5.
Avoiding virus infection.
a)
It is a good security practice to be always cautious about executing
programs or opening documents.
b) Another security best practice for protecting against virus infection is to
install and run an antivirus program.
c)
The introduction of stealth virus techniques and polymorphic viruses
has made it more difficult for antivirus software to detect viruses.
(1) A stealthy virus employs techniques to help evade being detected
by antivirus software that uses checksums or other techniques.
(2) Polymorphic viruses also attempt to evade detection, but they do
so by changing the virus itself (the virus “evolves”). Because the
virus changes, signatures for that virus may no longer be valid,
and the virus may escape detection by antivirus software.
6.
Virus hoaxes.
a)
In a virus hoax, users are informed about a new virus and the extreme
danger it poses.
c)
Hoaxes can actually be even more destructive than just wasting time
and bandwidth.
(1) Some hoaxes warning of a dangerous virus have included
instructions to delete certain files if found on the user's system
that may actually be part of the operating system. Deleting such
files could keep the system from booting properly.
(2) A good security practice is to ensure the authenticity and
accuracy of any virus report before following somebody's advice.
D. Trojan horses.
1.
A Trojan horse, or simply Trojan, is a piece of software that appears to do
one thing (and may, in fact, actually do that thing) but that hides some other
functionality.
2.
Unlike a virus, which reproduces by attaching itself to other files or
programs, a Trojan is a stand-alone program that must be copied and
installed by the user.
3.
An attacker entices the user to copy and run the program, which means that
the program must be disguised as something that the user would want to
run. Once it has been copied and is “inside” the system, the Trojan will
perform its hidden purpose with the user often still unaware of its true
nature.
4.
The best method to prevent the introduction of a Trojan to a system is not to
software if unsure of its origin, security, and integrity. A virus-checking
program may also be useful in detecting and preventing the installation of
known Trojans.
E. Logic bombs.
1.
Logic bombs are a type of malicious software that is deliberately installed,
generally by an authorized user.
2.
A logic bomb is a piece of code that sits dormant for a period of time until
some event invokes its often malicious payload.
a)
If the trigger is some event, such as not finding a specific name in the
personnel file, the code is referred to as a logic bomb.
b) If the event is a specific date or time, the program will often be referred
to as a time bomb.
3.
Logic bombs are difficult to detect because they are often installed by
authorized users and, in particular, have been installed by administrators
who are also often responsible for security.
a)
This demonstrates the need for a separation of duties and a periodic
review of all programs and services that are running.
b) It also illustrates the need to maintain an active backup program so that
if the organization loses critical files to malicious code, only those
transactions are lost since the most recent backup and not the entire
data.
F. Worms.
1.
Worms are pieces of code that attempt to penetrate networks and computer
systems.
a)
Once a penetration occurs, the worm creates a new copy of itself on the
penetrated system.
b) Reproduction of a worm thus does not rely on the attachment of the
virus to another piece of code or to a file, which is the definition of a
virus.
3.
The Morris worm.
a)
Also sometimes referred to as the Internet worm, because of its effect
on the early Internet, the worm was able to insert itself into many
systems connected to the Internet.
c)
The Morris worm was created by a graduate student named Robert
Morris.
(1) It utilized several known vulnerabilities to gain access to a new
system, and it also relied on password guessing to obtain access
to accounts.
(2) Once a system had been penetrated, a small bootstrap program
was inserted into the new system and executed.
(3) This program then downloaded the rest of the worm to the new
system.
(4) The worm had some stealth characteristics to make it difficult to
determine what it was doing.
(5) The worm would not be loaded if a copy of it was already found
on the new system, but it was designed to ignore this check
periodically, reportedly, to ensure that the worm could not be
easily eliminated.
(6) The problem with this plan was that interconnected systems were
constantly being reinfected and eventually the systems were
running so many copies of the worm that the system response
time ground to a stop.
d) While the Morris worm carried no malicious payload, it is entirely
possible for worms to do so.
4.
Code-Red.
a)
On July 19, 2001, over 350,000 computers connected to the Internet
were infected by the Code-Red worm in only 14 hours.
b) The cost estimate for how much damage the worm caused (included
variations of the worm released on later dates) exceeds $2.5 billion.
(1) The vulnerability exploited by the Code-Red worm was not
revealed as a result of the attack since the vulnerability it
exploited had been known for a month.
(2) The worm itself is memory resident so simply turning off the
machine eliminates the worm but unless the system is patched
there is a chance that the system will be re-infected soon after
rebooting and reconnecting to the Internet.
(3) The worm itself did not carry a malicious payload designed to
destroy data on the infected system. If the date was between the
1st and 19th of the month, the worm upon infecting a system
would generate a random list of IP addresses and attempt to
infect them.
(4) The first version of the worm used the same seed for the random
number generator so each system actually generated the same list
of random IP addresses. If the date was between the 20th and 28th
of the month, the worm attempted to launch a Denial-of-Service
attack against a Web Site owned by the White House. After the
28th, the worm remained dormant until the 1st of the next month.
(5) All of this changed when the second version of the worm was
released on July 19th. The second version of the worm did not use
the same seed for each infection, rather, new seeds were utilized
thus causing a different list of random IP addresses to be created.
This resulted in the more than 350,000 machines becoming
infected in 14 hours on July 19th.
(6) Additional problems were seen with this second version as
numerous routers, switches, and other networked devices not
susceptible to infection were sometimes still unable to handle the
data being sent to them causing many of them to crash or reboot.
5.
Slammer
a)
On Saturday, January 25, 2003, the Slammer virus was released which
exploited a buffer overflow vulnerability in computers running
Microsoft's SQL Server or Microsoft SQL Server Desktop Engine.
b) By the next day, the worm had infected at least 120,000 hosts and
caused network outages and disruption of airline flights, elections, and
ATM. At its peak, Slammer- infected hosts were generating a reported
1 terabit of worm-related traffic every second.
c)
The worm doubled in the number of infected hosts every 8 seconds. It
is estimated that it took less than ten minutes to reach global
proportions and infect 90 percent of the possible hosts it could infect.
d) Once a machine was infected (and it took a single packet to infect a
machine), the host would start randomly selecting targets and sending
packets to them to attempt infection at a rate of 25,000 per second.
e)
Like Code-Red, Slammer did not contain a malicious payload. The
problems it caused were a result of the massively overloaded networks,
which could not sustain the traffic being generated by the thousands of
infected hosts.
f)
The worm sent its single packet to a specific UDP port, 1434, which
provided an immediate fix for networks.
6.
Protection against worms
a)
The method of protecting a system depends on the type of worm.
(1) Those attached and propagated through e-mail can be avoided by
following the same guidelines about not opening files and not
running attachments unless users are sure of the origin and
integrity of the message.
(2) Protecting against the Morris type of Internet worm involves
securing systems and networks against penetration as against
human attackers.
b) Installing patches, eliminating unused and unnecessary services,
enforcing good password security, and utilizing firewalls and intrusion
detection systems.
G. Mobile Code
1.
Mobile Code is segments of code sent from another host that is executed on
the system.
2.
The threats to a system from hostile mobile code include disclosure of
information and modification or damage to information.
3.
Safe execution of mobile code requires controlled access to resources.
III. Auditing
A. Auditing is a process of assessing the security state of an organization compared
against an established standard.
B. Ensuring that employees are following established procedures and guidelines is
one of the methods to address the numerous possible attacks that have been
discussed in this chapter.
C. The important element in auditing is the standard that is used to evaluate
personnel and procedures.
1.
Organizations from different communities may have widely different
standards, and any audit will need to consider the appropriate elements for
the specific community.
2.
Audits differ from security or vulnerability assessments in that assessments
measure the security posture of the organization but may do so without any
mandated standards to compare them against.
a)
Penetration tests may also be encountered—these are tests conducted
against an organization to see if holes in the organization's security can
be found.
(1) The goal of the penetration test is to penetrate the security rather
than measuring it against some standard.
(2) Penetration tests are often viewed as white-hat hacking in that the
methods used often mirror those that an attacker might use.
D. It is important to conduct some form of security audit or assessment on a regular
basis.
1.
There are many things that may be evaluated during an assessment, but at a
minimum, the security perimeter (with all of its components, including
host-based security) should be examined, as well as the organization's
policies, procedures, and guidelines governing security.
2.
Employee training is another aspect that should be examined, since
employees are the targets of social engineering and password-guessing
attacks.
Download