Computer Security and Cyber Law
Computer Security and Cyber Law
Computer Security and Cyber Law
Contents
1. Introduction to computer security
2. Cryptography and cryptographic algorithms
3. Introduction to network security
4. Digital Signature and Authentication
5. Design principles and common security related programming problems
6. Malicious logic and defenses
7. Intrusion Detection
8. Web security and E-mail security
9. Unix Systems security
10. Policy and Procedures
Unit-1
Introduction to computer security
computer security refers to the protection afforded(given) to an automated information system
in order to attain the applicable objectives of preserving(keeping) the integrity, availability,
and confidentiality of information system resources (includes hardware, software, firmware,
information/data, and telecommunications).
computer security refers to techniques for ensuring that data stored in a computer cannot be read
or compromised by any individuals without authorization.
This definition introduces three key objectives that are at the heart of computer security.
Computer security rests(balance) on confidentiality, integrity, and availability.
The basic components(key objectives) of computer security are given below:
a) Confidentiality b)
Integrity, and c)
Availability.
These three concepts form what is often referred to as the CIA triad(a set of three similar things) (Figure 1.1).
The three concepts embody(represent in bodily) the fundamental security objectives for both data and for
information and computing services. For example, the NIST(National Institute of
Standards and Technology) Standards for Security Categorization of Federal Information and Information
Systems (FIPS 199) lists confidentiality, integrity, and availability as the three security objectives for
information and for information systems.
Confidentiality
EXAMPLE: Enciphering an income tax return will prevent anyone from reading it. If the owner needs to
see the return, it must be deciphered. Only the possessor of the cryptographic key can enter it into a
deciphering program. However, if someone else can read the key when it is entered into the program,the
confidentiality of the tax return has been compromised.
Integrity
Integrity refers to the trustworthiness of data or resources, and it is usually
phrased in terms of preventing improper or unauthorized change.
Guarding against improper information modification or destruction,including
ensuring information nonrepudiation(non-rejection) and authenticity.
A loss of integrity is the unauthorized modification or destruction of
information.
This term covers two related concepts:
Data integrity: Assures that information and programs are changed only in a
specified and authorized manner.
System integrity: Assures that a system performs its intended function in an
unimpaired(undamaged) manner, free from deliberate or inadvertent unauthorized
manipulation of the system.
EXAMPLE: A newspaper may print information obtained from a leak at the White House but attribute it to
the wrong source. The information is printed as received (preserving data integrity), but its source is incorrect
(corrupting origin integrity).
Availability
Availability refers to the ability to use the information or resource desired. Availability is an important
aspect of reliability as well as of system design because an unavailable system is at least as bad as no
system at all.
Assures that systems work promptly(with no delay) and service is not denied to authorized users.
A loss of availability is the disruption of access to or use of information or an information system.
EXAMPLE: Suppose Anne has compromised a bank's secondary system server, which supplies bank
account balances. When anyone else asks that server for information, Anne can supply any information she
desires. Merchants validate checks by contacting the bank's primary balance server. If a merchant gets no
response, the secondary server will be asked to supply the data. Anne's colleague prevents merchants from
contacting the primary balance server, so all merchant queries go to the secondary server. Anne will never
have a check turned down, regardless of her actual account balance. Notice that if the bank had only one
server (the primary one), this
scheme would not work. The merchant would be unable to validate the check.
Computer security is not restricted to these three broad concepts. Additional ideas that are often
considered part of the taxonomy of computer security include:
Access control -- Ensuring that users access only those resources and services that they are
entitled to access and that qualified users are not denied access to services that they legitimately
expect to receive
Nonrepudiation -- Ensuring that the originators of messages cannot deny that they in fact sent
the messages
Availability -- Ensuring that a system is operational and functional at a given moment, usually
provided through redundancy; loss of availability is often referred to as "denial- of-service"
Privacy -- Ensuring that individuals maintain the right to control what information is collected about
them, how it is used, who has used it, who maintains it, and what purpose it is used for
Asset:-A resource of value such as the data in a database or on the file system, or a system resource
Threat :- A potential occurrence — malicious or otherwise — that may harm an asset
Vulnerability:- A weakness that makes a threat possible
Attack (or exploit):- An action taken to harm an asset
Countermeasure :-A safeguard that addresses a threat and mitigates risk
Threats
A threat is a potential violation of security. The violation need not actually occur for there to be a
threat. The fact that the violation might occur means that those actions that could cause it to occur
must be guarded against (or prepared for). Those actions are called attacks. Those who execute
such actions, or cause them to be executed, are called attackers.Shirey,divides threats into four
broad classes: disclosure, or unauthorized
access to information; deception, or acceptance of false data; disruption, or interruption or
prevention of correct operation; and usurpation, or unauthorized control of some part of a
system. These four broad classes encompass many common threats.
Snooping, the unauthorized interception of information, is a form of disclosure. It is passive,
suggesting simply that some entity is listening to (or reading) communications or browsing
through files or system information.Wiretapping, or passive wiretapping, is a form of snooping in
which a network is monitored. (It is called"wiretapping" because of the "wires" that compose the
network, although the term is used even if no physical
wiring is involved.) Confidentiality services counter this threat.
Modification or alteration, an unauthorized change of information, covers three classes of
threats. The goal may be deception, in which some entity relies on the modified data to determine
which action to take, or in which incorrect information is accepted as correct and is released. If
the modified data controls the operation of the system, the threats of disruption and usurpation
arise. Unlike snooping, modification is active; it results from an entity changing information.
Active wiretapping is a form of modification in which data moving across a network is altered; the
term "active" distinguishes it from snooping ("passive" wiretapping). An example is the man-in-
themiddle attack, in which an intruder reads messages from the sender and sends (possibly
modified) versions to the recipient,
in hopes that the recipient and sender will not realize the presence of the intermediary.
Integrity services counter this threat.
Masquerading or spoofing, an impersonation of one entity by another, is a form of both
deception and usurpation. It lures a victim into believing that the entity with which it is
communicating is a different entity. For example, if a user tries to log into a computer across the
Internet but instead reaches another computer that claims to be the desired one, the user has been
spoofed. Similarly, if a user tries to read a file, but an attacker has arranged for the user to be
given a different file, another spoof has taken place. This may be a passive attack (in which the
user does not attempt to authenticate the recipient, but merely accesses it), but it is usually an
active attack (in which the masquerader issues responses to mislead the user about its identity).
Although primarily deception, it is often used to usurp control of a system by an attacker
impersonating an authorized manager or controller. Integrity services (called "authentication
services" in this context) counter this threat.
Repudiation of origin, a false denial that an entity sent (or created) something, is a form of
deception. For example, suppose a customer sends a letter to a vendor agreeing to pay a large
amount of money for a product. The vendor ships the product and then demands payment. The
customer denies having ordered the product and by law is therefore entitled to keep the
unsolicited shipment without payment. The customer has repudiated the
origin of the letter. If the vendor cannot prove that the letter came from the customer, the attack
succeeds. A variant of this is denial by a user that he created specific information or entities such
as files. Integrity mechanisms cope with this threat.
Denial of receipt, a false denial that an entity received some information or message, is a form of
deception. Suppose a customer orders an expensive product, but the vendor demands payment
before shipment. The customer pays, and the vendor ships the product. The customer then asks the
vendor when he will receive the product. If the customer has already received the product, the
question constitutes a denial of receipt attack. The vendor can defend against this attack only by
proving that the customer did, despite his denials, receive the product. Integrity and availability
mechanisms guard against these attacks.
Delay, a temporary inhibition of a service, is a form of usurpation, although it can play a
supporting role in deception. Typically, delivery of a message or service requires some time t; if an
attacker can force the delivery to take more than time t, the attacker has successfully delayed
delivery. This requires manipulation of system control structures, such as network components or
server components, and hence is a form of usurpation. If an entity is waiting for an authorization
message that is delayed, it may query a secondary server for the authorization. Even though the
attacker may be unable to masquerade as
the primary server, she might be able to masquerade as that secondary server and supply incorrect
information. Availability mechanisms can thwart this threat.
Denial of service, a long-term inhibition of service, is a form of usurpation, although it is
often used with other mechanisms to deceive. The attacker prevents a server from providing a
service. The denial may occur at the source (by preventing the server from obtaining the
resources needed to perform its function), at the destination (by blocking the communications
from the server), or along the intermediate path (by discarding messages from either the client or
the server, or both). Denial of service poses the same threat as an infinite delay. Availability
mechanisms counter this threat.
Goals of Security
Given a security policy's specification of "secure" and "nonsecure" actions, these
security mechanisms can prevent the attack, detect the attack, or recover from the attack.
The strategies may be used together or separately. Prevention means that an attack will
fail.
Detection is most useful when an attack cannot be prevented, but it can also indicate the
effectiveness of preventative measures. Detection mechanisms accept that an attack will
occur; the goal is to determine that an attack is underway, or
has occurred, and report it. The attack may be monitored, however, to provide data about
its nature, severity, and results. Typical detection mechanisms monitor various aspects
of the system, looking for actions or information indicating an attack.
Recovery has two forms. The first is to stop an attack and to assess and repair any
damage caused by that attack.
In a second form of recovery, the system continues to function correctly while an attack
is underway. This type of recovery is quite difficult to implement because of the
complexity of computer systems.