Methods of Attacks
Methods of Attacks
Methods of attack
Viruses
A virus is a program that runs and spreads by modifying other programs or files.
A virus cannot start by itself; it needs to be activated. Once activated, a virus
may do nothing more than replicate itself and spread. Though simple, even this
type of virus is dangerous as it can quickly use all available memory and bring
a system to a halt. A more serious virus may be programmed to delete or corrupt
specific files before spreading. Viruses can be transmitted via email attachments,
downloaded files, instant messages or via diskette, CD or USB devices.
Worms
A worm is similar to a virus, but unlike a virus does not need to attach itself to
an existing program. A worm uses the network to send copies of itself to any
connected hosts. Worms can run independently and spread quickly. They do not
necessarily require activation or human intervention. Self-spreading network
worms can have a much greater impact than a single virus and can infect large
parts of the Internet quickly.
Trojan Horses
1|Page
A Trojan horse is a non-self-replicating program that is written to appear like a
legitimate program, when in fact it is an attack tool. A Trojan horse relies upon
its legitimate appearance to deceive the victim into initiating the program. It may
be relatively harmless or can contain code that can damage the contents of the
computer's hard drive. Trojans can also create a back door into a system allowing
hackers to gain access.
Back doors and Trojan Horses allow hackers to remotely gain access to servers on a
network. The software typically works by sending a message to let the hacker know of a
successful infection. It then provides a service that the hacker can use to gain access to
the system. Host-based firewalls can prevent a Trojan from sending a message by
limiting outbound network access. It can also prevent the attacker from connecting to
any services.
Occasionally infections and attacks still occur and can be very destructive. It is
important to have an incident management process to track all incidences and the
corresponding resolutions to help prevent the infection from reoccurring. Incident
management is required by ISPs that manage and maintain customer data, because the
ISP has committed to the protection and the integrity of the data they host for their
customers. For example, if the ISP network was the target of a hacker and, as a result,
thousands of credit card numbers that were stored in a database that the ISP manages
were stolen, the customer would need to be notified so that they could notify the card
holders.
2|Page
Denial of Service and Brute Force attacks
Ping of death: a packet that is greater in size than the maximum allowed by IP
(65,535 bytes) is sent to a device. This can cause the receiving system to crash.
Brute Force
Not all attacks that cause network outages are specifically DoS attacks. A Brute
force attack is another type of attack that may result in denial of services. With
brute force attacks, a fast computer is used to try to guess passwords or to
decipher an encryption code. The attacker tries a large number of possibilities in
rapid succession to gain access or crack the code. Brute force attacks can cause
a denial of service due to excessive traffic to a specific resource or by locking out
user accounts.
Not all attacks do damage or prevent legitimate users from having access to
resources. Many threats are designed to collect information about users which
can be used for advertising, marketing and research purposes. These include
Spyware, Tracking Cookies, Adware and Pop-ups. While these may not damage
a computer, they invade privacy and can be annoying.
3|Page
Spyware
Spyware is any program that gathers personal information from your computer
without your permission or knowledge. This information is sent to advertisers or
others on the Internet and can include passwords and account numbers.
Spyware is usually installed unknowingly when downloading a file, installing
another program or clicking a popup. It can slow down a computer and make
changes to internal settings creating more vulnerabilities for other threats. In
addition, spyware can be very difficult to remove.
Tracking Cookies
Cookies are a form of spyware but are not always bad. They are used to record
information about an Internet user when they visit websites. Cookies may be
useful or desirable by allowing personalization and other time saving techniques.
Many web sites require that cookies be enabled in order to allow the user to
connect.
Adware
Pop-ups and pop-unders are additional advertising windows that display when
visiting a web site. Unlike Adware, pop-ups and pop-unders are not intended to
collect information about the user and are typically associated only with the web-
site being visited.
They can be annoying and usually advertise products or services that are
undesirable.
Spam
4|Page
Another annoying by-product of our increasing reliance on electronic
communications is unwanted bulk email. Sometimes merchants do not want to
bother with targeted marketing. They want to send their email advertising to as
many end users as possible hoping that someone is interested in their product
or service. This widely distributed approach to marketing on the Internet is called
spam. Spam is a serious network threat that can overload ISPs, email servers
and individual end-user systems. A person or organization responsible for
sending spam is called a spammer. Spammers often make use of unsecured
email servers to forward email. Spammers can use hacking techniques, such as
viruses, worms and Trojan horses to take control of home computers. These
computers are then used to send spam without the owner's knowledge. Spam
can be sent via email or more recently via Instant messaging software. It is
estimated that every user on the Internet receives over 3,000 spam emails in a
year. Spam consumes large amounts of Internet bandwidth and is a serious
problem that many countries now have laws governing spam use.
Social Engineering
One of the easiest ways for an intruder to gain access, whether internal or
external is by exploiting human behavior. One of the more common methods of
exploiting human weaknesses is called Social Engineering. Social engineering is
a term that refers to the ability of something or someone to influence the behavior
of a group of people. In the context of computer and network security Social
Engineering refers to a collection of techniques used to deceive internal users
into performing specific actions or revealing confidential information. With these
techniques, the attacker takes advantage of unsuspecting legitimate users to
gain access to internal resources and private information, such as bank account
numbers or passwords. Social engineering attacks exploit the fact that users are
generally considered one of the weakest links in security. Social engineers can
be internal or external to the organization, but most often do not come face-to-
face with their victims. Three of the most commonly used techniques in social
engineering are: pretexting, phishing, and vishing.
Pretexting
5|Page
number, they may use that information to gain the trust of their target. The
target is then more likely to release further information.
Phishing
A new form of social engineering that uses Voice over IP (VoIP) is known as
vishing. With vishing, an unsuspecting user is sent a voice mail instructing them
to call a number which appears to be a legitimate telephone-banking service, for
example. The call is then intercepted by a thief. Bank account numbers or
passwords entered over the phone for verification are then stolen.
Interception
6|Page
This category of attacks often involves the use of a "covert channel." A covert
channel is any communication pathway that exists but was not intended by the
designers of the system and thereby violates the system’s security policy. A
covert channel need not be an actual mechanism intended for any form of
communication at all; for example, the technique of varying the load on a CPU
has been used as a covert channel for the binary encoded signaling of sensitive
information to another process in an undetected manner.
Man-in-the-Middle
When a party succeeds in interposing itself between two endpoints and is thereby
able to intercept and possibly modify the communication without either party
being aware, this is referred to as a "man-in-the-middle" (MiM) attack. MiM is
related to interception, but requires that the interception occurs as the result of
the interposition of a listener rather than strictly passive eavesdropping.
Replay
Replay often (but not always) involves the use of an intercepted bearer credential
of some kind, such as a password or session credential. If an attacker intercepts
information that is used to access a resource, such as credentials, the attacker
might be able to impersonate a trusted party and thereby access the resource.
In this scenario, the attacker "replays" the intercepted information, leading the
receiver to believe that the attacker is a trusted party. An example of this kind of
7|Page
replay is intercepting someone’s browser session cookie or authentication header
and using it to masquerade as the user’s session.
Many attacks rely on the ability to modify data in a persistent store or while it is
in transit. A credential store or password file is an obvious target for an attack,
as is a password on its way to an end user. In business computing environments,
it is far more common that persistent data sources are attacked rather than data
in transit because the latter requires network-level penetration, a higher level of
sophistication, and constitutes a MiM attack. Attacks against persistent stores
have been categorized by others as "File Manipulation" attacks.
Interruption
In some systems, security relies on the existence of a service that will detect
intrusion. In that case, all that is needed is to delay the response of the intrusion
detection system long enough to allow an attack to complete or to force the
service request to time out so that the requester uses cached data. This can often
be accomplished by overwhelming the service or intrusion detection system. This
is a type of attack that is commonly referred to as a denial of service, but the
actual technique is a saturation technique; denial of service is the immediate
effect on the service or intrusion detection system, and there is then a security
consequence as a result of the failure of the system to detect intrusion. The
intrusion detection system might not be specifically designed as an intrusion
detection system per se, but might merely be, for example, a normal service that
is designed to shut down if any anomalous behavior is detected; for example, if
packets with the same sequence number are received.
8|Page
Delay is a powerful technique because it takes time to identify an intruder, and
if delay can be achieved, the attacker has time to cover their tracks and leave
and possibly enter through another means or mount an attack from a different
compromised host location. Besides their use as a means of penetrating a
system, saturation and delay can be attack objectives in their own right.
Saturation or delay perpetrated for the purpose of making a system inaccessible
or unusable (i.e., making it "unavailable") is properly known as a denial of service
attack. However, note that denial of service can be achieved in other ways; for
example, by interfering with any process that is critical to an application.
Exploitation of Non-Atomicity
NOTE
9|Page
denial of service attack that slows a system down and thereby "opens a window
of vulnerability."
Coordination Interference
When systems fail, they often leave traces of their internal operation or leave
resources in an inconsistent and potentially unprotected or insecure (for
example, unencrypted) state. Access to protected information can, therefore,
sometimes be achieved by forcing a system to crash and then examining the
artifacts that remain.
Environmental Interference
Spoofing
NOTE
Spoofing of domain names may be made easier by the fact that names expressed
in international character sets might be allowed. It used to be the case that a
domain name had to consist of 7-bit ASCII characters. Unicode is now being
11 | P a g e
considered for domain names. Because many Unicode glyphs have the same
appearance, it is possible to have two domain names that look identical, but are
actually composed of different Unicode characters. For example, the character
glyph "a" represents the Unicode 16-bit hexadecimal value x0061 from the Basic
Latin set, but it also represents the value x0430 from the Cyrillic set. This means
that if you receive an email containing a link to "abc.com," you can no longer be
sure where the link might take you. This horribly regrettable situation will
hopefully be remedied by new browser and email program security features that
call attention to the use of links containing mixed or different character sets. A
Web site can also help by enabling the browser to authenticate it using SSL, but
that requires users to type "https" instead of "http."
Spoofing often exploits an unsophisticated end user. For example, many Web
users do not adequately understand or manage their browser security policies.
Common ways of exploiting weakly secured browsers to spoof users include
creating hidden windows from which attacks on other windows are launched, as
well as manipulating the appearance and contents of the window to make it
appear as if it were another kind of window, and modifying other windows that
show legitimate content.
Hijacking
Circumvention
12 | P a g e
Circumvention is any method by which an attacker bypasses intended controls,
access checks, or system pathways in order to gain access to or control of
protected resources. Circumvention can involve a covert channel or it can involve
incompletely protected resources. Many of the attacks discussed here represent
variations of circumvention.
Trap Door
A trap door is a mechanism embedded within a system that allows the normal
access paths or access checks of a system to be bypassed. This often takes the
form of a special password that is hard-coded into the software. It can also take
the form of a special diagnostic interface.
If the system’s design is such that it fails to record the actions of users, this can
lead to a situation in which either appropriate or inappropriate actions are later
untraceable or unprovable. It is important to emphasize that this is a result of
the system’s design—not a result of an attack directed against its logging
mechanism. (An attack directed against the logging mechanism would most
likely be a trusted resource attack, which is discussed later.)
If a software module does not fully check that its inputs fall within expected
ranges, it might be possible to invoke the module with inputs outside of those
ranges and thereby cause the program to do things that were not intended by
the software designer. This might enable an attacker to circumvent normal
system pathways or checks.
13 | P a g e
The infamous "buffer overflow" attack is a variation of incomplete validation,
although in a buffer overflow the validation failure can be considered to be within
the application framework (for example, language itself) rather than in the
application design because a secure application framework should prevent buffer
overflow as well as any other kind of type failure or range failure.
Circumvention can also occur if resources expose their internal state, thereby
allowing a client module to read or modify the resource’s internal state in
unintended ways. Inappropriate reading of a resource’s internal state is a breach
of confidentiality because information that is intended to be private to the
resource is revealed to an unintended party. This is known as a containment
failure. Inappropriate writing of internal state is a breach of integrity. For
example, if a resource’s interface returns references ("aliases") for internal
objects instead of returning separate copies of those objects, any client of the
resource might be able to modify the internal objects because they can obtain
direct references to them. This kind of failure has been categorized by some as
an "integrity failure" resulting from an "aliasing error."
This form of attack is the motivation behind the security model embedded in
many browsers. In this model, often referred to as the "same origin" policy, Web
pages can only affect their own contents. However, there are loopholes in the
policy. For example, scripts can embed executable objects that do not adhere to
the security policy, but rather adhere to a different (possibly looser) security
policy.
Embedded Attack
The term "embedded attack" to refers to all attacks that rely on the placement of
attack software within a trusted software system. The act of setting up an
embedded attack is commonly referred to as planting, because a subversive
component is "planted" on the target system. Planting can be achieved using
other techniques, such as social engineering.
So-called "script injection" attacks are a special case of a trojan horse attack in
which a script (i.e., a program) is input in lieu of data and is then later
inadvertently interpreted (executed) by the application. A trojan horse can also
be used to execute a MiM attack by intercepting internal information "from the
inside" and using it maliciously. An embedded attack is sometimes implemented
as a "bomb." A time bomb is a subversive mechanism secretly embedded within
a trusted system for the purpose of initiating an attack at a later point in time.
A logic bomb is similar to a time bomb except that it is triggered by a sequence
of program events rather than by the passage of time.
Embedded attacks are especially effective when coupled with a forced crash. An
example is the compromise of a repair tool or boot script followed by causing the
system to fail so that it will have to be repaired or rebooted using the
compromised tool or script. This is particularly effective because "build-time"
components, such as tools and scripts, are often less stringently protected than
runtime systems.
Namespace Attack
15 | P a g e
Many attacks exploit weaknesses in the name resolution process used to identify
resources. These include the insertion of rogue components in a name-resolution
path as well as the insertion of components with similar names that are
equivalent. It is often the case that abbreviated names are used to identify
resources, and a failure to canonicalize a resource name can enable an attacker
to substitute other resources with the same abbreviated name but a different
canonical name.
Attackers often reach their goal by following a circuitous path: entering a weak
point and then using that point as a point of trust from which to reach other
points. Human resources Web sites are famous examples of this. Those sites are
often poorly protected, but because they have the same domain as other
organization sites, they can be used as a launching point when compromised.
This is how source code to Cisco Systems routers was stolen in 2004—by
planting a compromised version of the trusted SSH program on Cisco’s network
to act as a trojan horse by sending users’ passwords to the attacker.
16 | P a g e
An effective way to attack a protected resource is to subvert resources used by
those resources—with many levels of transitivity in between. This technique has
easy parallels in the non-computer world. There was a movie in the 1960s called
Kaleidoscope in which a professional card player stealthily entered the factory of
a playing card manufacturer and modified the very dies used to print a popular
brand of playing cards. He alone knew of the tiny modifications and was able to
play poker and win. This is an example of a two-level transitive attack: He
attacked a resource (the factory) used to produce the resources used by the
casinos (the cards). Thus, an effective way to attack a protected resource is to
subvert resources used by those resources. This includes emergency response
resources.
17 | P a g e