SlideShare a Scribd company logo
IT6701
Information Management
IV Year / VII Semester
UNIT II DATA SECURITY AND
PRIVACY
• Program Security, Malicious code and controls
against threats; OS level protection; Security –
Firewalls, Network Security Intrusion
detection systems. Data Privacy principles.
Data Privacy Laws and compliance.
Introduction
• to devise ways to prevent the weaknesses from being
exploited.
• Aspects:
– Confidentiality - accessed only by authorized parties.
(privacy)
– Integrity - assets can be modified only by authorized parties
or only in authorized ways.
– Availability - accessible to authorized parties at appropriate
times
Introduction
• Security related terms:
– Computer Security : collection of tools designed to
protect data.
– Network Security: to protect data during
transmission
– Internet Security: to protect data during
transmission over a collection of inter-connected
networks.
– Data Security: preventing data from theft.
Program Security
• How do we keep programs free from flaws?
• How do we protect computing resources
against programs that contain flaws?
larger issue in program security - Trust
Program Security
security implies some degree of trust that the
program enforces expected confidentiality,
integrity, and availability.
to assess security - to ask people to name the
characteristics of software that contribute to
its overall security.
Program Security
 Fixing Faults:
 Bug: a mistake in interpreting a requirement, a
syntax error in a piece of code, or the (as-yet-
unknown) cause of a system crash.
 Error: When a human makes a mistake.
the error may lead to a fault, or an incorrect step,
command, process, or data definition in a
computer program.
Program Security
 Fixing Faults:
 Failure: a departure from the system's required
behavior.
a fault is an inside view of the system, as seen by
the eyes of the developers, whereas a failure is an
outside view: a problem that the user sees.
Program Security
 Fixing Faults:
 Penetrate and Patch:
searched for and repaired faults.
 the patch efforts were largely useless, making the
system less secure rather than more secure because
they frequently introduced new faults.
Program Security
 Fixing Faults:
 Reasons:
The pressure to repair a specific problem encouraged a
narrow focus on the fault itself and not on its context.
The fault often had nonobvious side effects in places
other than the immediate area of the fault.
Fixing one problem often caused a failure somewhere
else.
The fault could not be fixed properly because system
functionality or performance would suffer as a
consequence.
Program Security
 Unexpected Behavior:
 programs to see whether they behave as their
designers intended or users expected – Program
security flaws.
A flaw can be either a fault or failure, and a
vulnerability usually describes a class of flaws,
such as a buffer overflow.
Program Security
 Unexpected Behavior:
 Program security flaws can derive from any kind
of software fault.
 a misunderstanding of program requirements to a
one-character error in coding or even typing
Program Security
 Types of flaws:
 Intentional flaws (harmful)
 Malicious flaws
 Non- Malicious flaws (not very serious)
Program Security
 Types of flaws:
 Inadvertent flaws:
validation error (incomplete or inconsistent): permission
checks
domain error: controlled access to data
serialization and aliasing: program flow order
inadequate identification and authentication: basis for
authorization
boundary condition violation: failure on first or last case
other exploitable logic errors
Program Security
 Types of flaws: Non- Malicious flaws (not
very serious)
 Buffer Overflows:
 A buffer (or array or string) is a space in which data can
be held.
 Example: char sample[10];
Program Security
 Buffer Overflows:
First two only effect the
user.
Malicious programmer
focuses
on accessing the second two
.
Program Security
 Types of flaws: Non- Malicious flaws (not
very serious)
 Buffer Overflows: Security Implication
 the attacker may replace code in the system space.
the attacker may make use of the stack pointer or the
return register
Program Security
 Types of flaws: Non- Malicious flaws (not
very serious)
 Incomplete Mediation:
http://www.somesite.com/subpage/userinput.asp?parm1
=(808)555-1212 &parm2=2009Jan17.
 to prevent the use of nonsense data, the program can
restrict choices only to valid ones.
 The sensitive data (namely, the parameter values) are in
an exposed, uncontrolled condition.
Program Security
 Types of flaws: Non- Malicious flaws (not
very serious)
 Incomplete Mediation: Security Implications
 unchecked data values represent a serious potential
vulnerability.
Program Security
 Types of flaws: Non- Malicious flaws
 Incomplete Mediation: Security Implications
 Things, Inc., was a very large, international vendor of
consumer products, called Objects. The company was
ready to sell its Objects through a web site, using what
appeared to be a standard e-commerce application. The
management at Things decided to let some of its in-
house developers produce the web site so that its
customers could order Objects directly from the web.
Program Security
 Types of flaws: Non- Malicious flaws
 Incomplete Mediation: Security Implications
http://www.things.com/order.asp?custID=101&part=55
5A&qy=20&price=10&ship=boat&shipcost=5&total=2
05
Program Security
 Types of flaws: Non- Malicious flaws (not
very serious)
 Time-of-Check to Time-of-Use Errors :
 involves synchronization.
 To improve efficiency, modern processors and
operating systems usually change the order in which
instructions and procedures are executed.
Program Security
 Types of flaws: Non- Malicious flaws (not
very serious)
 Time-of-Check to Time-of-Use Errors :
 Access Control – only those who should access an
object are allowed that access. Ex: Sculpture
between the time the access was checked and the
time the result of the check was used, a change
occurred, invalidating the result of the check.
Program Security
 Types of flaws: Non- Malicious flaws
 Time-of-Check to Time-of-Use Errors :
 Security Implications:
to ensure that critical parameters are not exposed during any
loss of control.
 to ensure serial integrity - to allow no interruption (loss of
control) during the validation.
Program Security
 Types of flaws:
Malicious flaws
 The programs operate on data, taking action only
when data and state changes trigger it.
 behaves in unexpected ways.
 Ex: Installing a new software
 writing a message on a computer screen, stopping
a running program, generating a sound, or erasing
a stored file.
Program Security
 Malicious Code - Types
 undesired effects in programs.
A virus:
 a program that can replicate itself and pass on
malicious code to other nonmalicious programs by
modifying them.
Program Security
 Malicious Code – Types
Virus:
 Transient virus: depends on the life of its host
 Resident virus: locates itself in memory
 Document virus: embedded in a formatted
document.
Boot sector virus: reading a fixed number of bytes
from a fixed location on the disk
Program Security
 Malicious Code – Types
Virus:
 Macro virus: a user to execute a serious of
commands and repeat them with just invoking a
single macro feature.
 Polymorphic virus: virus can keep changing its
form.
Program Security
 Malicious Code – Types
 Trojan Horse:
 has a non obvious malicious effect.
 logic bomb:
 goes off when a specified condition occurs.
 Trapdoor or backdoor:
 a program by which someone can access the
program other than by the obvious, direct call,
perhaps with special privileges.
Program Security
 Malicious Code – Types
 Worm:
 a program that spreads copies of itself through a
network.
 Rabbit:
 self-replicates without bound, with the intention of
exhausting some computing resource
Program Security
 Malicious Code – Types
 Virus Signatures:
 Code must be stored somewhere, and the code
must be in memory to execute.
the virus executes in a particular way, using certain
methods to spread.
 Virus scanner:
Detect and delete the virus
Program Security - Virus
Program Security - Virus
Program Security - Virus
Program Security
 Malicious Code”
 Prevention of virus Infection:
Use only commercial software acquired from
reliable, well-established vendors.
 Test all new software on an isolated computer
 Open attachments only when you know them to
be safe
 Make a recoverable system image and store it
safely.
 Make and retain backup copies of executable
system files.
Use virus detectors (often called virus scanners)
regularly and update them daily.
Program Security
Targeted Malicious Code:
 malicious code is written for a particular system,
for a particular application, and for a particular
purpose.
 Trapdoors:
 an undocumented entry point to a module.
 computing systems are complex structures,
programmers usually develop and test
systems in a methodical, organized, modular manner.
 unit testing, integration testing.
 Poor error checking.
Program Security
Targeted Malicious Code:
 Trapdoors – Causes:
 trapdoors can persist in production programs
because the developers.
forget to remove them
 intentionally leave them in the program for testing
 intentionally leave them in the program for
maintenance of the finished program,
Program Security
Targeted Malicious Code:
 Salami Attack
 merges bits of seemingly inconsequential data to yield
powerful results
 Ex: the small amounts are shaved from each
computation and accumulated elsewhere such as in the
programmer's bank account
Program Security
Targeted Malicious Code:
 Privilege Escalation:
 Programs run in a context: Their access rights and
privileges are controlled by that context.
 malicious code to be launched by a user with lower
privileges but run with higher privileges.
Interface Illusions:
 spoofing attack in which all or part of a web page is
false.
 The object of the attacker is to convince the user to do
something inappropriate.
Program Security
Targeted Malicious Code:
 Man-in-the-Middle Attacks :
 a malicious program interjects itself between two other
programs, typically between a user's input and an
application's result.
Timing Attacks :
 the time it takes a computer to perform a task depends
on the size of the task.
Covert Channels
 extraordinary paths of communication is
covert channels.
 programs that communicate information to
people who should not receive it.
The communication travels unnoticed,
accompanying other, perfectly proper,
communications.
 communications are hidden in an open
channel
Covert Channels
 Creating covert channels:
 producing a specific output report or displaying
desired values.
 Encoding the data values in another report by
varying the format of the output.
 Omitting the printing of certain values
 printing certain specific values
 Changing the number of lines per page.
Covert Channels
 Storage Channels:
 pass information by using the presence or absence
of objects in storage.
 Ex: file lock channel.
 In multiuser systems, files can be "locked" to
prevent two people from writing to the same file at
the same time.
Covert Channels
Timing Channels:
pass information by using the speed at which
things happen. Actually, timing channels are
shared resource channels in which the shared
resource is time.
 analyzing the resources of a system,
 the other works at the source code level.
Covert Channels
Shared Resource Matrix:
finding all shared resources and determining
which processes can write to and read from the
resources.
 a matrix of resources (rows) and processes
that can access them (columns)
 The matrix entries are R for "can read (or
observe) the resource" and M for "can set (or
modify, create, delete) the resource.
Covert Channels
 Information Flow Method:
 analysis can be automated within a compiler so that
information flow potentials can be detected while a
program is under development.
 Explicit flow: the statement B:=A, which assigns the
value of A to the variable B, obviously supports an
information flow from A to B.
 Implicit flow: The conditional statement IF D=1
THEN B:=A has two flows: from A to B because of
the assignment, but also from D to B, because the
value of B can change if and only if the value of D is
1.
Controls Against Program Threats
controls during software development the
specifying, designing, writing, and testing of
the program to find and eliminate the sorts of
exposures.
 Types of controls:
 Developmental Controls
 operating system
 administrative
Controls Against Program Threats
 Developmental Controls:
 The Nature of Software Development:
 specify the system
 design the system
 implement the system
 test the system
 review the system
 document the system
 manage the system
 maintain the system
Controls Against Program Threats
 Developmental Controls:
 Modularity, Encapsulation, and Information
Hiding:
 Modules: to create a design or code in small, self-
contained units
 If a component is isolated from the effects of other
components, then it is easier to trace a problem to the
fault that caused it and to limit the damage the fault
causes.
Controls Against Program Threats
 Developmental Controls:
 Modularity:
the process of dividing a task into subtasks, Each
component performs a separate, independent part of the
task.
 Conditions:
 single-purpose
 small
 simple
 independent
Controls Against Program Threats
 Developmental Controls:
 Modularity:
 Advantage:
 Maintenance
 Understandability
 Reuse
 Correctness
 Testing.
Controls Against Program Threats
 Developmental Controls:
 Modularity:
 High Cohesion and lo coupling
 Coupling: the degree with which a component depends
on other components in the system.
 low or loose coupling is better than high or tight
coupling
Controls Against Program Threats
 Developmental Controls:
 Encapsulation:
 hides a component's implementation details, but it does
not necessarily mean complete isolation
 "technique for packaging the information [inside a
component] in such a way as to hide what should be
hidden and make visible what is intended to be visible."
Controls Against Program Threats
 Developmental Controls:
 Information Hiding:
 a component as a kind of black box, with certain well-
defined inputs and outputs and a well-defined function.
 Other components' designers do not need to know how
the module completes its function.
 desirable because developers cannot easily and
maliciously alter the components of others if they do not
know how the components work.
Controls Against Program Threats
 Developmental Controls:
 Review
 Walk-through
 Inspection
A wise engineer who finds a fault can deal
with it in at least three ways:
1. by learning how, when, and why errors occur
2. by taking action to prevent mistakes
3. by scrutinizing products to find the instances and
effects of errors that were missed
Controls Against Program Threats
 Developmental Controls:
 Testing:
 a process activity that homes in on product quality
 Unit testing
 Integration testing
 System testing
 function test
 performance test
 acceptance test
 regression testing
 Perspective: Black-box testing and white-box testing
Controls Against Program Threats
 Developmental Controls:
 Good Design:
 using a philosophy of fault tolerance
having a consistent policy for handling failures
capturing the design rationale and history
using design patterns
 Designers should try to anticipate faults and
handle them in ways that minimize disruption and
maximize safety and security
Controls Against Program Threats
 Developmental Controls:
 Good Design:
 failures include
failing to provide a service
providing the wrong service or data
corrupting data
 Handling Problem:
 Retrying
 Correcting
 Reporting
 Configuration Management
Controls Against Program Threats
 Developmental Controls:
 Standards of Program Development
 standards of design, including using specified design
tools, languages, or methodologies, using design
diversity, and devising strategies for error handling and
fault tolerance
 standards of documentation, language, and coding
style, including layout of code on the page, choices of
names of variables, and use of recognized program
structures
Controls Against Program Threats
 Developmental Controls:
 Standards of Program Development
 standards of programming, including mandatory peer
reviews, periodic code audits for correctness, and
compliance with standards
 standards of testing, such as using program verification
techniques, archiving test results for future reference,
using independent testers, evaluating test thoroughness,
and encouraging test diversity
Protection in General-Purpose
Operating Systems
 Operating system functions can be categorized
as,
 access control
identity and credential management
information flow
audit and integrity protection
Protection in General-Purpose
Operating Systems
 History:
 No system s/w - User entered pgms in binary
Executives - Assist single user with preparation and
cleanup. Entirely passive:
Waited for user’s request
Provided service on demand
 Monitors-Assisted multiple users in
multiprogramming systems. Protect one user from
interference (malicious or acceidental or malicious) by
another
Protection in General-Purpose
Operating Systems
Multiprogramming - Protected Objects:
 memory
sharable I/O devices, such as disks
serially reusable I/O devices, such as printers and
tape drives
sharable programs and subprocedures
 networks
sharable data
Protection in General-Purpose
Operating Systems
 Security Methods of Operating Systems:
 Separation: keeping one user's objects separate from other
users.
 physical separation - different processes use different physical
objects, such as separate printers for output requiring different
levels of security
 temporal separation - different security requirements are executed
at different times
 logical separation - cannot access objects outside its permitted
domain
 cryptographic separation - conceal their data and computations
Protection in General-Purpose
Operating Systems
 Level of Security in OS:
 Do not protect: Operating systems with no
protection.
 Isolate: different processes running concurrently
are unaware of the presence of each other.
 Share all or share nothing: the owner of an object
declares it to be public or private.
 Share via access limitation: checks the
allowability of each user's potential access to an
object
Protection in General-Purpose
Operating Systems
 Level of Security in OS:
 Share by capabilities: dynamic creation of sharing
rights for objects.
 Limit use of an object: limits not just the access to
an object but the use made of that object after it
has been accessed.
Protection in General-Purpose
Operating Systems
Memory and Address Protection:
 protection can be built into the hardware
mechanisms that control efficient use of memory,
so solid protection can be provided at essentially
no additional cost.
Protection in General-Purpose
Operating Systems
Memory and Address Protection:
 Fence:
 single-user operating systems to prevent a faulty
user program from destroying part of the resident
portion of the operating system.
 a method to confine users to one side of a
boundary
Protection in General-Purpose
Operating Systems
Memory and Address Protection:
 Fence:
 predefined memory address n between OS and
user
 predefined amount of space was always reserved
for the operating system, whether it was needed or
not
Protection in General-Purpose
Operating Systems
Memory and Address Protection:
 Fence:
 Fence Register: the address of the end of the
operating system.
 the location of the fence could be changed
Protection in General-Purpose
Operating Systems
Memory and Address Protection:
 Relocation:
 the process of taking a program written as if it
began at address 0.
 the relocation factor - the starting address of the
memory assigned for the program.
 The fence register can be a hardware relocation
device.
 both relocates the address and guarantees that no
one can access a location lower than the fence
address
Protection in General-Purpose
Operating Systems
Memory and Address Protection:
 Base/Bounds Registers:
 A variable fence register – base register.
 provide a lower bound (a starting address) but not
an upper one.
 bounds register, is an upper address limit
 Each pgm address forced to be above base address
Each pgm address checked to be below bounds
address
Protection in General-Purpose
Operating Systems
Memory and Address Protection:
 Tagged Architecture:
 Problem with base/bounds registers
 high granularity of access rights
 Can allow another module to access all or none of
its data
 Tagged Architecture: every word of machine
memory has one or more extra bits to identify the
access rights to that word
Protection in General-Purpose
Operating Systems
Memory and Address Protection:
 Tagged Architecture:
 Access bits set by OS
 Tested every time instruction accesses its location
Tag Word
R 0001
RW 0137
R 4091
R 0002
X
Protection in General-Purpose
Operating Systems
Memory and Address Protection:
 Segmentation:
 dividing a program into separate piece
 Each segment has a unique name.
 <name, offset>
 name is the name of the segment
 offset is its location within the segment
Control of Access to General Objects
 Access Control:
 providing security in an OS.
 can grant or revoke access for certain resources like
file, program and data.
 Goals:
 Check every access - to revoke a user's privilege to
access an object.
 Enforce least privilege - a subject should have access
to the smallest number of objects necessary to perform
some task.
 Verify acceptable usage - to check that the activity to
be performed on an object is appropriate.
Control of Access to General Objects
 Access Control – Implementation:
 Directory:
 simple way of protection.
 Every file has a unique owner who possesses
"control" access rights and to revoke access to any
person at any time.
 Each user has a file directory, which lists all the files
to which that user has access.
 the operating system must maintain all file directories
 rights to files are the common read, write, and execute
familiar on many shared systems
Control of Access to General Objects
 Access Control – Implementation:
 Directory:
 user to grant and revoke access rights
 Advantages:
 easy to implement because it uses one list per user,
naming all the objects that user is allowed to access
 Disadvantages:
 the list becomes too large if many shared objects.
 revocation of access is difficult
 involves pseudonyms leads to multiple permission
that are not necessarily consistent.
Control of Access to General Objects
 Access Control – Implementation:
 Directory:
Control of Access to General Objects
 Access Control – Implementation:
 Access Control List:
 one such list for each object, and the list shows all
subjects who should have access to the object and
what their access is.
 Protection classes:
 user - a specific subject,
 group - who had a common interest
 compartment - an untrusted object
Control of Access to General Objects
 Access Control – Implementation:
 Access Control List:
Control of Access to General Objects
 Access Control – Implementation:
 Access Control Matrix:
 a table in which each row
represents a subject, each column represents an
object, and each entry is the set of access rights for
that subject to that object.
 represented as a list of triples, <subject, object,
rights>
Control of Access to General Objects
 Access Control – Implementation:
 Access Control Matrix:
BIBLIO
G
TEMP F HELP.T
XT
C_COM
P
LINKER SYS_CL
OCK
PRINTE
R
USER A ORW ORW ORW R X X R W
USER B R - - R X X R W
USER S RW - R R X X R W
USER T - - - R X X R W
SYS_MG
R
- - - RW OX OX ORW O
USER_S
VCS
- - - O X X R W
Control of Access to General Objects
 Access Control – Implementation:
 Capability:
 an unforgeable token that gives the possessor
certain rights to an object.
 users can create objects, such as files, data
segments, or subprocesses, and can also specify
the acceptable kinds of operations, such as read,
write, and execute.
 capabilities can be encrypted under a key
available only to the access control mechanism.
Control of Access to General Objects
 Access Control – Implementation:
 Capability:
 One possible access right to an object is transfer
or propagate.
 Domain: the collection of objects to which the
process has access
Control of Access to General Objects
 File Protection Mechanisms:
 Basic Forms of Protection:
 AllNone Protection:
trust combined with ignorance.
 Unacceptable for many reasons: Lack of trust, Too
coarse, Rise of sharing
 Group Protection
 identifying groups of users who had some common
relationship.
 Windows: Administrators, Power Users, Users, and
Guests.
 Unix: the user, group and other users
Control of Access to General Objects
 File Protection Mechanisms:
 Individual Permissions:
 Persistent Permission:
 uses a name, a token or a secret.
 User access permissions can be required for any access
or only for modifications (write access)
 Temporary Acquired Permission
 The Unix designers added a permission called set
userid (suid).
 Per-Object and Per-User Protection
 The access control lists or access control matrices
described earlier provide very flexible protection
Control of Access to General Objects
 User Authentication
 An operating system bases much of its protection
on knowing who a user of the system is.
 Authentication Mechanism:
 Something the user knows: Passwords, PIN
numbers
 Something the user has: Token and cards
 Something the user is: biometrics, are based on a
physical characteristic of the user, such as a
fingerprint, the pattern of a person's voice, or a
face (picture)
Control of Access to General Objects
 User Authentication
 Passwords as Authenticators:
 Passwords are mutually agreed-upon code words,
assumed to be known only to the user and the system.
 difficulties of use:
 Loss: no one will be able to replace a lost or forgotten
password
 Use: each access to a file can be inconvenient and time
consuming.
 Disclosure: If a password is disclosed to an unauthorized
individual, the file becomes immediately accessible.
 Revocation: To revoke one user's access right to a file,
someone must change the password
Control of Access to General Objects
 User Authentication
 Additional Authentication Information:
 Multifactor authentication:
 two-factor authentication
 Attacks on Passwords:
 Passwords are somewhat limited as protection devices
because of the relatively small number of bits of
information they contain
Control of Access to General Objects
 User Authentication
 Password guessing steps:
 no password
the same as the user ID is, or is derived from, the user's name
common word list (for example, "password," "secret," "private")
plus common names and patterns (for example, "asdfg," "aaaaaa")
short college dictionary
complete English word list
common non-English language dictionaries
short college dictionary with capitalizations (PaSsWorD) and
substitutions (0 for O, and so forth)
Control of Access to General Objects
 User Authentication
 Password Selection Criteria:
 Use characters other than just AZ
 Choose long passwords.
 Avoid actual names or words.
 Choose an unlikely password
 Change the password regularly.
 Don't write it down.
 Don't tell anyone else.
Control of Access to General Objects
 User Authentication
 One-Time Passwords:
 changes every time it is used.
 the system assigns a static mathematical function.
 The system provides an argument to the function, and
the user computes and returns the function value -
challengeresponse systems
Control of Access to General Objects
 User Authentication
 One-Time Passwords – functions:
 f(x) = x + 1
 f(x) = r(x)
 f(E(x)) = E(D(E(x)) + 1).
Control of Access to General Objects
 User Authentication
 The Authentication Process:
 users occasionally mistype their passwords.
 A user who receives a message of INCORRECT LOGIN
will carefully retype the login and gain access to the system.
 A legitimate user will not complain if the login process takes
5 or 10 seconds.
 Systems commonly disconnect a user after a small number
of failed logins, forcing the user to reestablish a connection
with the system.
Control of Access to General Objects
 User Authentication
 Fixing Flaws in the Authentication Process :
 Some people give out their passwords for the asking.
Other passwords have been obtained just by someone
watching a user typing in the password.
 Second level of protection - another round of
passwords or a challengeresponse interchange.
Control of Access to General Objects
 User Authentication
 Biometrics: Authentication Not Using Passwords:
 based on some physical characteristic of the human
body.
 to recognize the following biometrics: fingerprints,
hand geometry (shape and size of fingers), retina and
iris (parts of the eye), voice, handwriting, blood vessels
in the finger, and face.
Control of Access to General Objects
 User Authentication
 Biometrics: Authentication Not Using Passwords:
 Identification versus Authentication.
Biometrics are very reliable for authentication but much less
reliable for authentication.
Control of Access to General Objects
 User Authentication
 All biometric readers operate in two phases:
 First, a user registers with the reader, during which
time a characteristic of the user (for example, the
geometry of the hand) is captured and reduced to a
template or pattern.
 Second, the user later seeks authentication from the
system, during which time the system remeasures the
hand and compares the new measurements with the
stored template.
Control of Access to General Objects
 User Authentication
 Problems with Biometrics
 Biometrics are relatively new, and some people find
their use intrusive.
 Biometric recognition devices are costly
 Variation reduces accuracy
 Biometrics can become a single point of failure.
Firewalls
 a device that filters all traffic between a
protected or "inside" network and a less
trustworthy or "outside" network.
 runs on a dedicated device
 executable code, an attacker could
compromise that code and execute from the
firewall's device.
Firewalls
 Purpose:
 to keep "bad" things outside a protected
environment.
 the challenge of protecting a network with a
firewall is determining which security policy meets
the needs of the installation.
 ensuring the validity of inside addresses.
 A packet filter sits between the inside network and
the outside net, so it can know if a packet from the
outside is forging an inside address.
Firewalls
 Design:
 a reference monitor must be
 always invoked
tamperproof
small and simple enough for rigorous analysis
Firewalls
 Types of Firewalls:
 Packet filtering gateways or screening routers
 Stateful inspection firewalls
 Application proxies
 Guards
Personal firewalls
Firewalls
 Types of Firewalls - Packet Filtering Gateway
 controls access to packets on the basis of packet
address (source or destination) or specific transport
protocol type (such as HTTP web traffic).
 Packet filter rule has two parts:
 Selection criteria
 Action field
Firewalls
 Types of Firewalls - Stateful Inspection Firewall
 maintains state information from one packet to another in
the input stream.
 to break an attack into multiple packets by forcing some
packets to have very short lengths so that a firewall cannot
detect the signature of an attack split across two or more
packets.
 track the sequence of packets and conditions from one
packet to another.
Firewalls
 Types of Firewalls - Application Proxy
 simulates the (proper) effects of an application so
that the application receives only requests to act
properly.
 A proxy gateway is a two-headed device: It looks
to the inside as if it is the outside (destination)
connection, while to the outside it responds just as
the insider would.
Firewalls
 Types of Firewalls – Guard
 decides what services to perform on the user's
behalf in accordance with its available knowledge,
such as whatever it can reliably know of the
(outside) user's identity, previous interactions, and
so forth.
 is limited only by what is computable.
Firewalls
 Types of Firewalls – Personal Firewalls
 protect a (sub)network of multiple hosts.
 an application program that runs on a workstation
to block unwanted traffic, usually from the
network.
 screens traffic on a single workstation.
 Combining a virus scanner with a personal
firewall is both effective and efficient.
 provide reasonable protection to clients.
Firewalls
 Types of Firewalls – Comparison
Packet
Filtering
Stateful
Inspection
Application
Proxy
Guard Personal
Firewall
Simplest More complex Even more
complex
Most complex Similar to packet
filtering firewall
Sees only
addresses and
service protocol
Type
Can see either
addresses or data
Sees full data
portion of
Packet
Sees full text of
Communication
Can see full data
portion of packet
Auditing difficult Auditing
possible
Can audit
Activity
Can audit
activity
usually
Does audit
activity
Firewalls
 Types of Firewalls – Comparison
Packet
Filtering
Stateful
Inspection
Application
Proxy
Guard Personal
Firewall
Screens based
on connection
Rules
Screens based on
information
across packets in
either header or
data field
Screens based
on behavior of
Proxies
Screens based on
interpretation of
message content
Typically,
screens based
on information in
a single packet,
using header or
data
Complex
addressing rules
can make
configuration
Tricky
Usually
preconfigured to
detect certain
attack signatures
Simple proxies
can substitute
for complex
addressing
Rules
Complex guard
functionality can
limit assurance
Usually starts in
"deny all
inbound" mode,
to which user
adds trusted
addresses as
they appear
Network Security
 Introduction to Network:
 A connection between hosts and routers to
facilitate exchange of information.
 Types:
 Circuit switched network: a dedicated circuit
established to exchange data.
 Packet switched network: the data between the
hosts and the routers is transferred as chunks.
Network Security
 Different layers in protocol stack:
Layer Purpose / work Done Protocols
Application
Responsible for handling the data sent
between applications between two hosts on a
network
HTTP, SMTP,FTP
Transport
Responsible for managing the end to end
logical connection
TCP and UDP
Network Routing data through a network Internet protocol
Link Layer
Transfers data over individual links on a
network
Ethernet
Physical
Sends binary data over the communication
media
-
Network Security
 Physical Layer:
 Possible attacks on the physical layer are as
follows:
 Cable cuts
 Wireless link jamming
 Application of high voltages to copper cables.
Network Security
Data Link Layer:
 consists of Ethernet, WLAN.
 MAC addresses - 48 bits
 24 bits represents the manufacturer
 another 24 bits represents the interface produced by the
manufacturer.
Network Security
Data Link Layer:
 CAM table overflow:
 Content Addressable Memory.
 responsible for maintaining a mapping between the
physical ports of a switch to the MAC address of the
hosts connected to it.
 limited in size.
 attack: fill table with fake/invalid MAC addresses.
Network Security
Data Link Layer:
 MAC address spoofing:
 all the traffic intended to flow to the victim will be
redirected to the host.
 DHCPAttacks:
 DHCP starvation attacks
 Fake DHCP server
 ARP Attack:
 to find the MAC addresses if the IP addresses are known.
Network Security
Network Layer:
 Packet sniffing
 IP Spoofing
 Fragmentation attack – overlap packets
 ICMP attack
Network Security
Transport Layer:
 TCP land attack
 UDP flooding attack
 TCP SYN attack
Intrusion Detection Systems
 a device, typically another separate computer,
that monitors activity to identify malicious or
suspicious events.
 receives raw inputs from sensors.
 It saves those inputs, analyzes them, and takes
some controlling action.
Intrusion Detection Systems
Intrusion Detection Systems
 Functions:
 monitoring users and system activity
 auditing system configuration for vulnerabilities and
misconfigurations
 assessing the integrity of critical system and data files.
 recognizing known attack patterns in system activity
 identifying abnormal activity through statistical analysis
 managing audit trails and highlighting user violation of policy or
normal activity
 correcting system configuration errors
 installing and operating traps to record information about
intruders
Intrusion Detection Systems
 Goals:
 Filter on packet state
 Filter on packet content
 Maintain connection state
 Use minimum number of signatures that can target
maximum number of threats
 Filter the packets in real-time
 Conseal itself from being discovered by the
attacker.
Intrusion Detection Systems
 Types:
 Signature-based intrusion detection systems:
 simple pattern-matching
 match a pattern corresponding to a known attack type.
 a series of TCP SYN packets sent to many different
ports in succession and at times close to one another
Intrusion Detection Systems
 Types:
 Signature-based intrusion detection systems:
 Problem:
 An attacker will try to modify a basic attack in such a way that
it will not match the known signature of that attack.
 the attacker may convert lowercase to uppercase letters or
convert a symbol such as "blank space" to its character code
equivalent %20.
 Statistical analysis:
 to obtain sample measurements of key indicators
Intrusion Detection Systems
 Types:
 Heuristic Intrusion Detection:
 behavior that is out of the ordinary.
 The inference engine of an intrusion detection system
performs continuous analysis of the system, raising an
alert when the system's dirtiness exceeds a threshold
Intrusion Detection Systems
 Types:
 Heuristic Intrusion Detection:
 Inference engines work in two ways:
 State based:
the system going through changes of overall state or
configuration.
 Others try to map current activity onto a model of
unacceptable activity and raise an alarm when the
activity resembles the model.
Intrusion Detection Systems
 Types:
 Heuristic Intrusion Detection:
 Inference engines work in two ways:
 Model based:
 to build a dynamic model of behavior.
 to accommodate variation and evolution in a person's
actions over time.
 compares real activity with a known representation of
normality.
Intrusion Detection Systems
 Types - where it is placed?
 network based IDSs:
 detects system attacks by capturing and analyzing
packets on a network switch.
 matching multiple packets against a database of
attack patterns or against a model of malicious
activity.
Intrusion Detection Systems
Intrusion Detection Systems
 Types - where it is placed?
 Host based IDSs:
 IDSs are installed at every computer in the
network and operate on information collected from
them.
Contains OS logs, audit and files.
Intrusion Detection Systems
Intrusion Detection Systems
 Stealth Mode:
 the attacker should not be able to detect the IDS.
 Interface:
 to monitor the interface.
 Sensitivity is a criterion that defines how malicious an
event is considered by the IDS.
Intrusion Detection Systems
 Goals:
 Responding to Alarms:
 Monitor, collect data, perhaps increase amount of data collected
 Protect, act to reduce exposure
 Call a human
 False Results:
 False positives means the administrator will be less confident of
the IDS's warnings, perhaps leading to a real alarm's being ignored.
 false negatives mean that real attacks are passing the IDS without
action.
Intrusion Detection Systems
 Strength:
 cheaper and easier to administer
 Limitations:
 Sensitivity
 An IDS does not run itself; someone has to
monitor its track record and respond to its alarms.
Data Privacy Principles
 the prevention of the data mining and the
unauthorized use of personal information,
which are illegal in many parts of the world.
 Types:
 Internet privacy
 Financial privacy
 Medical privacy
 Locational privacy
Data Privacy Principles
 Types: Internet privacy
 reading of one’s email by third parties
 Tracking of users browser history by third parties.
 Collection, Storage and sharing of personal data
by some websites.
Data Privacy Principles
 Types: Financial privacy
 amount of assets held
 positions held in stocks and shares
 various purchases
Data Privacy Principles
 Types: Medical privacy
 A person not wish to disclose his/her medical records
due to various reasons.
 Informational – control over personal info.
 Physical – physical inaccessibility to others
 Psychological – respects patients cultural beliefs,
inner thoughts, values, feelings and religious
practices
Data Privacy Principles
 Types: Locational privacy
 knowing his/her mobility trace.
 competitor sales force
 attendance of a particular church
 presence in hotel
Data Privacy Principles
 Collection limitation
 Data quality
 Purpose specification
 use limitation
 Security safeguards
 Openness
 Individual Participation
 Accountability
Data Privacy Principles
 Collection limitation
 data should be obtained by lawful an fair
 Data quality
 data should be relevant to the purposes
 should be accurate, complete and up to date
 Purpose specification
 purpose of data collection should be specified
 use limitation
 should not be disclosed, made available or otherwise used
for purposes other than specified above.
Data Privacy Principles
Security safeguards
 against such risks as loss or unauthorized access,
destruction and modification
 Openness
 general policy of practices
 Individual Participation
 Accountability
 measures give effect to the principles stated.

More Related Content

What's hot

Vulnerability Assesment
Vulnerability AssesmentVulnerability Assesment
Vulnerability Assesment
Dedi Dwianto
 
What’s making way for secure sdlc
What’s making way for secure sdlcWhat’s making way for secure sdlc
What’s making way for secure sdlc
Avancercorp
 
Fuzzing101: Unknown vulnerability management for Telecommunications
Fuzzing101: Unknown vulnerability management for TelecommunicationsFuzzing101: Unknown vulnerability management for Telecommunications
Fuzzing101: Unknown vulnerability management for Telecommunications
Codenomicon
 
Secure by design and secure software development
Secure by design and secure software developmentSecure by design and secure software development
Secure by design and secure software development
Bill Ross
 
The Security Vulnerability Assessment Process & Best Practices
The Security Vulnerability Assessment Process & Best PracticesThe Security Vulnerability Assessment Process & Best Practices
The Security Vulnerability Assessment Process & Best Practices
Kellep Charles
 
Ian Sommerville, Software Engineering, 9th Edition Ch 4
Ian Sommerville,  Software Engineering, 9th Edition Ch 4Ian Sommerville,  Software Engineering, 9th Edition Ch 4
Ian Sommerville, Software Engineering, 9th Edition Ch 4
Mohammed Romi
 
Threat Modeling to Reduce Software Security Risk
Threat Modeling to Reduce Software Security RiskThreat Modeling to Reduce Software Security Risk
Threat Modeling to Reduce Software Security Risk
Security Innovation
 
Engineering Software Products: 7. security and privacy
Engineering Software Products: 7. security and privacyEngineering Software Products: 7. security and privacy
Engineering Software Products: 7. security and privacy
software-engineering-book
 
Software security engineering
Software security engineeringSoftware security engineering
Software security engineering
aizazhussain234
 
Information Security and the SDLC
Information Security and the SDLCInformation Security and the SDLC
Intro to Security in SDLC
Intro to Security in SDLCIntro to Security in SDLC
Intro to Security in SDLC
Tjylen Veselyj
 
Vulnerability Assessment Presentation
Vulnerability Assessment PresentationVulnerability Assessment Presentation
Vulnerability Assessment Presentation
Lionel Medina
 
Integrating Security Across SDLC Phases
Integrating Security Across SDLC PhasesIntegrating Security Across SDLC Phases
Integrating Security Across SDLC Phases
Ishrath Sultana
 
What is system level analysis
What is system level analysisWhat is system level analysis
What is system level analysis
CAST
 
Ch14-Software Engineering 9
Ch14-Software Engineering 9Ch14-Software Engineering 9
Ch14-Software Engineering 9
Ian Sommerville
 
TUD CS4105 | 2015 | Lecture 1
TUD CS4105 | 2015 | Lecture 1TUD CS4105 | 2015 | Lecture 1
TUD CS4105 | 2015 | Lecture 1
Eelco Visser
 
what is security
what is securitywhat is security
what is security
Dedi Dwianto
 
Business cases for software security
Business cases for software securityBusiness cases for software security
Business cases for software security
Marco Morana
 
Secure SDLC Framework
Secure SDLC FrameworkSecure SDLC Framework
Secure SDLC Framework
Rishi Kant
 
Security in the Software Development Life Cycle (SDLC)
Security in the Software Development Life Cycle (SDLC)Security in the Software Development Life Cycle (SDLC)
Security in the Software Development Life Cycle (SDLC)
Frances Coronel
 

What's hot (20)

Vulnerability Assesment
Vulnerability AssesmentVulnerability Assesment
Vulnerability Assesment
 
What’s making way for secure sdlc
What’s making way for secure sdlcWhat’s making way for secure sdlc
What’s making way for secure sdlc
 
Fuzzing101: Unknown vulnerability management for Telecommunications
Fuzzing101: Unknown vulnerability management for TelecommunicationsFuzzing101: Unknown vulnerability management for Telecommunications
Fuzzing101: Unknown vulnerability management for Telecommunications
 
Secure by design and secure software development
Secure by design and secure software developmentSecure by design and secure software development
Secure by design and secure software development
 
The Security Vulnerability Assessment Process & Best Practices
The Security Vulnerability Assessment Process & Best PracticesThe Security Vulnerability Assessment Process & Best Practices
The Security Vulnerability Assessment Process & Best Practices
 
Ian Sommerville, Software Engineering, 9th Edition Ch 4
Ian Sommerville,  Software Engineering, 9th Edition Ch 4Ian Sommerville,  Software Engineering, 9th Edition Ch 4
Ian Sommerville, Software Engineering, 9th Edition Ch 4
 
Threat Modeling to Reduce Software Security Risk
Threat Modeling to Reduce Software Security RiskThreat Modeling to Reduce Software Security Risk
Threat Modeling to Reduce Software Security Risk
 
Engineering Software Products: 7. security and privacy
Engineering Software Products: 7. security and privacyEngineering Software Products: 7. security and privacy
Engineering Software Products: 7. security and privacy
 
Software security engineering
Software security engineeringSoftware security engineering
Software security engineering
 
Information Security and the SDLC
Information Security and the SDLCInformation Security and the SDLC
Information Security and the SDLC
 
Intro to Security in SDLC
Intro to Security in SDLCIntro to Security in SDLC
Intro to Security in SDLC
 
Vulnerability Assessment Presentation
Vulnerability Assessment PresentationVulnerability Assessment Presentation
Vulnerability Assessment Presentation
 
Integrating Security Across SDLC Phases
Integrating Security Across SDLC PhasesIntegrating Security Across SDLC Phases
Integrating Security Across SDLC Phases
 
What is system level analysis
What is system level analysisWhat is system level analysis
What is system level analysis
 
Ch14-Software Engineering 9
Ch14-Software Engineering 9Ch14-Software Engineering 9
Ch14-Software Engineering 9
 
TUD CS4105 | 2015 | Lecture 1
TUD CS4105 | 2015 | Lecture 1TUD CS4105 | 2015 | Lecture 1
TUD CS4105 | 2015 | Lecture 1
 
what is security
what is securitywhat is security
what is security
 
Business cases for software security
Business cases for software securityBusiness cases for software security
Business cases for software security
 
Secure SDLC Framework
Secure SDLC FrameworkSecure SDLC Framework
Secure SDLC Framework
 
Security in the Software Development Life Cycle (SDLC)
Security in the Software Development Life Cycle (SDLC)Security in the Software Development Life Cycle (SDLC)
Security in the Software Development Life Cycle (SDLC)
 

Similar to IT6701-Information Management Unit 2

Cybersecurity
CybersecurityCybersecurity
Cybersecurity
UmairFirdous
 
SecPod Saner
SecPod SanerSecPod Saner
SecPod Saner
Chandrashekhar B
 
Information security software security presentation.pptx
Information security software security presentation.pptxInformation security software security presentation.pptx
Information security software security presentation.pptx
salutiontechnology
 
Report on Rogue Security Software
Report on Rogue Security SoftwareReport on Rogue Security Software
Report on Rogue Security Software
Symantec Italia
 
Security concerns regarding Vulnerabilities
Security concerns regarding VulnerabilitiesSecurity concerns regarding Vulnerabilities
Security concerns regarding Vulnerabilities
LearningwithRayYT
 
Security overview 2
Security overview 2Security overview 2
Security overview 2
CMR WORLD TECH
 
It's Your Move: The Changing Game of Endpoint Security
It's Your Move: The Changing Game of Endpoint SecurityIt's Your Move: The Changing Game of Endpoint Security
It's Your Move: The Changing Game of Endpoint Security
Lumension
 
Vulnerability , Malware and Risk
Vulnerability , Malware and RiskVulnerability , Malware and Risk
Vulnerability , Malware and Risk
SecPod Technologies
 
Presentation about security i.t.
Presentation about security i.t.Presentation about security i.t.
Presentation about security i.t.
MarianaGilMartnez1
 
Presentation about security I.T.
Presentation about security I.T.Presentation about security I.T.
Presentation about security I.T.
HugoBarrionuevoSobri
 
Vulnerability Malware And Risk
Vulnerability Malware And RiskVulnerability Malware And Risk
Vulnerability Malware And Risk
Chandrashekhar B
 
Globally.docx
Globally.docxGlobally.docx
Globally.docx
GermanERuizCorrales
 
Application security testing an integrated approach
Application security testing   an integrated approachApplication security testing   an integrated approach
Application security testing an integrated approach
Idexcel Technologies
 
ransomware keylogger rootkit.pptx
ransomware keylogger rootkit.pptxransomware keylogger rootkit.pptx
ransomware keylogger rootkit.pptx
dawitTerefe5
 
Survey on Malware Detection Techniques
Survey on Malware Detection TechniquesSurvey on Malware Detection Techniques
Survey on Malware Detection Techniques
Editor IJMTER
 
Cscu module 03 protecting systems using antiviruses
Cscu module 03 protecting systems using antivirusesCscu module 03 protecting systems using antiviruses
Cscu module 03 protecting systems using antiviruses
Alireza Ghahrood
 
OSCh19
OSCh19OSCh19
OS_Ch19
OS_Ch19OS_Ch19
Ch19 OS
Ch19 OSCh19 OS
Ch19 OS
C.U
 
Program security
Program securityProgram security
Program security
G Prachi
 

Similar to IT6701-Information Management Unit 2 (20)

Cybersecurity
CybersecurityCybersecurity
Cybersecurity
 
SecPod Saner
SecPod SanerSecPod Saner
SecPod Saner
 
Information security software security presentation.pptx
Information security software security presentation.pptxInformation security software security presentation.pptx
Information security software security presentation.pptx
 
Report on Rogue Security Software
Report on Rogue Security SoftwareReport on Rogue Security Software
Report on Rogue Security Software
 
Security concerns regarding Vulnerabilities
Security concerns regarding VulnerabilitiesSecurity concerns regarding Vulnerabilities
Security concerns regarding Vulnerabilities
 
Security overview 2
Security overview 2Security overview 2
Security overview 2
 
It's Your Move: The Changing Game of Endpoint Security
It's Your Move: The Changing Game of Endpoint SecurityIt's Your Move: The Changing Game of Endpoint Security
It's Your Move: The Changing Game of Endpoint Security
 
Vulnerability , Malware and Risk
Vulnerability , Malware and RiskVulnerability , Malware and Risk
Vulnerability , Malware and Risk
 
Presentation about security i.t.
Presentation about security i.t.Presentation about security i.t.
Presentation about security i.t.
 
Presentation about security I.T.
Presentation about security I.T.Presentation about security I.T.
Presentation about security I.T.
 
Vulnerability Malware And Risk
Vulnerability Malware And RiskVulnerability Malware And Risk
Vulnerability Malware And Risk
 
Globally.docx
Globally.docxGlobally.docx
Globally.docx
 
Application security testing an integrated approach
Application security testing   an integrated approachApplication security testing   an integrated approach
Application security testing an integrated approach
 
ransomware keylogger rootkit.pptx
ransomware keylogger rootkit.pptxransomware keylogger rootkit.pptx
ransomware keylogger rootkit.pptx
 
Survey on Malware Detection Techniques
Survey on Malware Detection TechniquesSurvey on Malware Detection Techniques
Survey on Malware Detection Techniques
 
Cscu module 03 protecting systems using antiviruses
Cscu module 03 protecting systems using antivirusesCscu module 03 protecting systems using antiviruses
Cscu module 03 protecting systems using antiviruses
 
OSCh19
OSCh19OSCh19
OSCh19
 
OS_Ch19
OS_Ch19OS_Ch19
OS_Ch19
 
Ch19 OS
Ch19 OSCh19 OS
Ch19 OS
 
Program security
Program securityProgram security
Program security
 

More from SIMONTHOMAS S

Cs8092 computer graphics and multimedia unit 5
Cs8092 computer graphics and multimedia unit 5Cs8092 computer graphics and multimedia unit 5
Cs8092 computer graphics and multimedia unit 5
SIMONTHOMAS S
 
Cs8092 computer graphics and multimedia unit 4
Cs8092 computer graphics and multimedia unit 4Cs8092 computer graphics and multimedia unit 4
Cs8092 computer graphics and multimedia unit 4
SIMONTHOMAS S
 
Cs8092 computer graphics and multimedia unit 3
Cs8092 computer graphics and multimedia unit 3Cs8092 computer graphics and multimedia unit 3
Cs8092 computer graphics and multimedia unit 3
SIMONTHOMAS S
 
Cs8092 computer graphics and multimedia unit 2
Cs8092 computer graphics and multimedia unit 2Cs8092 computer graphics and multimedia unit 2
Cs8092 computer graphics and multimedia unit 2
SIMONTHOMAS S
 
Cs8092 computer graphics and multimedia unit 1
Cs8092 computer graphics and multimedia unit 1Cs8092 computer graphics and multimedia unit 1
Cs8092 computer graphics and multimedia unit 1
SIMONTHOMAS S
 
Mg6088 spm unit-5
Mg6088 spm unit-5Mg6088 spm unit-5
Mg6088 spm unit-5
SIMONTHOMAS S
 
Mg6088 spm unit-4
Mg6088 spm unit-4Mg6088 spm unit-4
Mg6088 spm unit-4
SIMONTHOMAS S
 
Mg6088 spm unit-3
Mg6088 spm unit-3Mg6088 spm unit-3
Mg6088 spm unit-3
SIMONTHOMAS S
 
Mg6088 spm unit-2
Mg6088 spm unit-2Mg6088 spm unit-2
Mg6088 spm unit-2
SIMONTHOMAS S
 
Mg6088 spm unit-1
Mg6088 spm unit-1Mg6088 spm unit-1
Mg6088 spm unit-1
SIMONTHOMAS S
 
IT6701-Information Management Unit 5
IT6701-Information Management Unit 5IT6701-Information Management Unit 5
IT6701-Information Management Unit 5
SIMONTHOMAS S
 
IT6701-Information Management Unit 4
IT6701-Information Management Unit 4IT6701-Information Management Unit 4
IT6701-Information Management Unit 4
SIMONTHOMAS S
 
IT6701-Information Management Unit 3
IT6701-Information Management Unit 3IT6701-Information Management Unit 3
IT6701-Information Management Unit 3
SIMONTHOMAS S
 
IT6701-Information Management Unit 1
IT6701-Information Management Unit 1IT6701-Information Management Unit 1
IT6701-Information Management Unit 1
SIMONTHOMAS S
 
CS8391-Data Structures Unit 5
CS8391-Data Structures Unit 5CS8391-Data Structures Unit 5
CS8391-Data Structures Unit 5
SIMONTHOMAS S
 
CS8391-Data Structures Unit 4
CS8391-Data Structures Unit 4CS8391-Data Structures Unit 4
CS8391-Data Structures Unit 4
SIMONTHOMAS S
 
CS8391-Data Structures Unit 3
CS8391-Data Structures Unit 3CS8391-Data Structures Unit 3
CS8391-Data Structures Unit 3
SIMONTHOMAS S
 
CS8391-Data Structures Unit 2
CS8391-Data Structures Unit 2CS8391-Data Structures Unit 2
CS8391-Data Structures Unit 2
SIMONTHOMAS S
 
CS8391-Data Structures Unit 1
CS8391-Data Structures Unit 1CS8391-Data Structures Unit 1
CS8391-Data Structures Unit 1
SIMONTHOMAS S
 
SPC Unit 5
SPC Unit 5SPC Unit 5
SPC Unit 5
SIMONTHOMAS S
 

More from SIMONTHOMAS S (20)

Cs8092 computer graphics and multimedia unit 5
Cs8092 computer graphics and multimedia unit 5Cs8092 computer graphics and multimedia unit 5
Cs8092 computer graphics and multimedia unit 5
 
Cs8092 computer graphics and multimedia unit 4
Cs8092 computer graphics and multimedia unit 4Cs8092 computer graphics and multimedia unit 4
Cs8092 computer graphics and multimedia unit 4
 
Cs8092 computer graphics and multimedia unit 3
Cs8092 computer graphics and multimedia unit 3Cs8092 computer graphics and multimedia unit 3
Cs8092 computer graphics and multimedia unit 3
 
Cs8092 computer graphics and multimedia unit 2
Cs8092 computer graphics and multimedia unit 2Cs8092 computer graphics and multimedia unit 2
Cs8092 computer graphics and multimedia unit 2
 
Cs8092 computer graphics and multimedia unit 1
Cs8092 computer graphics and multimedia unit 1Cs8092 computer graphics and multimedia unit 1
Cs8092 computer graphics and multimedia unit 1
 
Mg6088 spm unit-5
Mg6088 spm unit-5Mg6088 spm unit-5
Mg6088 spm unit-5
 
Mg6088 spm unit-4
Mg6088 spm unit-4Mg6088 spm unit-4
Mg6088 spm unit-4
 
Mg6088 spm unit-3
Mg6088 spm unit-3Mg6088 spm unit-3
Mg6088 spm unit-3
 
Mg6088 spm unit-2
Mg6088 spm unit-2Mg6088 spm unit-2
Mg6088 spm unit-2
 
Mg6088 spm unit-1
Mg6088 spm unit-1Mg6088 spm unit-1
Mg6088 spm unit-1
 
IT6701-Information Management Unit 5
IT6701-Information Management Unit 5IT6701-Information Management Unit 5
IT6701-Information Management Unit 5
 
IT6701-Information Management Unit 4
IT6701-Information Management Unit 4IT6701-Information Management Unit 4
IT6701-Information Management Unit 4
 
IT6701-Information Management Unit 3
IT6701-Information Management Unit 3IT6701-Information Management Unit 3
IT6701-Information Management Unit 3
 
IT6701-Information Management Unit 1
IT6701-Information Management Unit 1IT6701-Information Management Unit 1
IT6701-Information Management Unit 1
 
CS8391-Data Structures Unit 5
CS8391-Data Structures Unit 5CS8391-Data Structures Unit 5
CS8391-Data Structures Unit 5
 
CS8391-Data Structures Unit 4
CS8391-Data Structures Unit 4CS8391-Data Structures Unit 4
CS8391-Data Structures Unit 4
 
CS8391-Data Structures Unit 3
CS8391-Data Structures Unit 3CS8391-Data Structures Unit 3
CS8391-Data Structures Unit 3
 
CS8391-Data Structures Unit 2
CS8391-Data Structures Unit 2CS8391-Data Structures Unit 2
CS8391-Data Structures Unit 2
 
CS8391-Data Structures Unit 1
CS8391-Data Structures Unit 1CS8391-Data Structures Unit 1
CS8391-Data Structures Unit 1
 
SPC Unit 5
SPC Unit 5SPC Unit 5
SPC Unit 5
 

Recently uploaded

KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
Victor Morales
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
thanhdowork
 
14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application
SyedAbiiAzazi1
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
NidhalKahouli2
 
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdfIron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
RadiNasr
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
IJECEIAES
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
camseq
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
nooriasukmaningtyas
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
insn4465
 
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMSA SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
IJNSA Journal
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
Aditya Rajan Patra
 
Heat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation pptHeat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation ppt
mamunhossenbd75
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 
Exception Handling notes in java exception
Exception Handling notes in java exceptionException Handling notes in java exception
Exception Handling notes in java exception
Ratnakar Mikkili
 
digital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdfdigital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdf
drwaing
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
Rahul
 
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student MemberIEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
VICTOR MAESTRE RAMIREZ
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
Hitesh Mohapatra
 
bank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdfbank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdf
Divyam548318
 
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdfBPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
MIGUELANGEL966976
 

Recently uploaded (20)

KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
 
14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
 
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdfIron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
 
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMSA SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
 
Heat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation pptHeat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation ppt
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 
Exception Handling notes in java exception
Exception Handling notes in java exceptionException Handling notes in java exception
Exception Handling notes in java exception
 
digital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdfdigital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdf
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
 
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student MemberIEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
 
bank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdfbank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdf
 
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdfBPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
BPV-GUI-01-Guide-for-ASME-Review-Teams-(General)-10-10-2023.pdf
 

IT6701-Information Management Unit 2

  • 2. UNIT II DATA SECURITY AND PRIVACY • Program Security, Malicious code and controls against threats; OS level protection; Security – Firewalls, Network Security Intrusion detection systems. Data Privacy principles. Data Privacy Laws and compliance.
  • 3. Introduction • to devise ways to prevent the weaknesses from being exploited. • Aspects: – Confidentiality - accessed only by authorized parties. (privacy) – Integrity - assets can be modified only by authorized parties or only in authorized ways. – Availability - accessible to authorized parties at appropriate times
  • 4. Introduction • Security related terms: – Computer Security : collection of tools designed to protect data. – Network Security: to protect data during transmission – Internet Security: to protect data during transmission over a collection of inter-connected networks. – Data Security: preventing data from theft.
  • 5. Program Security • How do we keep programs free from flaws? • How do we protect computing resources against programs that contain flaws? larger issue in program security - Trust
  • 6. Program Security security implies some degree of trust that the program enforces expected confidentiality, integrity, and availability. to assess security - to ask people to name the characteristics of software that contribute to its overall security.
  • 7. Program Security  Fixing Faults:  Bug: a mistake in interpreting a requirement, a syntax error in a piece of code, or the (as-yet- unknown) cause of a system crash.  Error: When a human makes a mistake. the error may lead to a fault, or an incorrect step, command, process, or data definition in a computer program.
  • 8. Program Security  Fixing Faults:  Failure: a departure from the system's required behavior. a fault is an inside view of the system, as seen by the eyes of the developers, whereas a failure is an outside view: a problem that the user sees.
  • 9. Program Security  Fixing Faults:  Penetrate and Patch: searched for and repaired faults.  the patch efforts were largely useless, making the system less secure rather than more secure because they frequently introduced new faults.
  • 10. Program Security  Fixing Faults:  Reasons: The pressure to repair a specific problem encouraged a narrow focus on the fault itself and not on its context. The fault often had nonobvious side effects in places other than the immediate area of the fault. Fixing one problem often caused a failure somewhere else. The fault could not be fixed properly because system functionality or performance would suffer as a consequence.
  • 11. Program Security  Unexpected Behavior:  programs to see whether they behave as their designers intended or users expected – Program security flaws. A flaw can be either a fault or failure, and a vulnerability usually describes a class of flaws, such as a buffer overflow.
  • 12. Program Security  Unexpected Behavior:  Program security flaws can derive from any kind of software fault.  a misunderstanding of program requirements to a one-character error in coding or even typing
  • 13. Program Security  Types of flaws:  Intentional flaws (harmful)  Malicious flaws  Non- Malicious flaws (not very serious)
  • 14. Program Security  Types of flaws:  Inadvertent flaws: validation error (incomplete or inconsistent): permission checks domain error: controlled access to data serialization and aliasing: program flow order inadequate identification and authentication: basis for authorization boundary condition violation: failure on first or last case other exploitable logic errors
  • 15. Program Security  Types of flaws: Non- Malicious flaws (not very serious)  Buffer Overflows:  A buffer (or array or string) is a space in which data can be held.  Example: char sample[10];
  • 16. Program Security  Buffer Overflows: First two only effect the user. Malicious programmer focuses on accessing the second two .
  • 17. Program Security  Types of flaws: Non- Malicious flaws (not very serious)  Buffer Overflows: Security Implication  the attacker may replace code in the system space. the attacker may make use of the stack pointer or the return register
  • 18. Program Security  Types of flaws: Non- Malicious flaws (not very serious)  Incomplete Mediation: http://www.somesite.com/subpage/userinput.asp?parm1 =(808)555-1212 &parm2=2009Jan17.  to prevent the use of nonsense data, the program can restrict choices only to valid ones.  The sensitive data (namely, the parameter values) are in an exposed, uncontrolled condition.
  • 19. Program Security  Types of flaws: Non- Malicious flaws (not very serious)  Incomplete Mediation: Security Implications  unchecked data values represent a serious potential vulnerability.
  • 20. Program Security  Types of flaws: Non- Malicious flaws  Incomplete Mediation: Security Implications  Things, Inc., was a very large, international vendor of consumer products, called Objects. The company was ready to sell its Objects through a web site, using what appeared to be a standard e-commerce application. The management at Things decided to let some of its in- house developers produce the web site so that its customers could order Objects directly from the web.
  • 21. Program Security  Types of flaws: Non- Malicious flaws  Incomplete Mediation: Security Implications http://www.things.com/order.asp?custID=101&part=55 5A&qy=20&price=10&ship=boat&shipcost=5&total=2 05
  • 22. Program Security  Types of flaws: Non- Malicious flaws (not very serious)  Time-of-Check to Time-of-Use Errors :  involves synchronization.  To improve efficiency, modern processors and operating systems usually change the order in which instructions and procedures are executed.
  • 23. Program Security  Types of flaws: Non- Malicious flaws (not very serious)  Time-of-Check to Time-of-Use Errors :  Access Control – only those who should access an object are allowed that access. Ex: Sculpture between the time the access was checked and the time the result of the check was used, a change occurred, invalidating the result of the check.
  • 24. Program Security  Types of flaws: Non- Malicious flaws  Time-of-Check to Time-of-Use Errors :  Security Implications: to ensure that critical parameters are not exposed during any loss of control.  to ensure serial integrity - to allow no interruption (loss of control) during the validation.
  • 25. Program Security  Types of flaws: Malicious flaws  The programs operate on data, taking action only when data and state changes trigger it.  behaves in unexpected ways.  Ex: Installing a new software  writing a message on a computer screen, stopping a running program, generating a sound, or erasing a stored file.
  • 26. Program Security  Malicious Code - Types  undesired effects in programs. A virus:  a program that can replicate itself and pass on malicious code to other nonmalicious programs by modifying them.
  • 27. Program Security  Malicious Code – Types Virus:  Transient virus: depends on the life of its host  Resident virus: locates itself in memory  Document virus: embedded in a formatted document. Boot sector virus: reading a fixed number of bytes from a fixed location on the disk
  • 28. Program Security  Malicious Code – Types Virus:  Macro virus: a user to execute a serious of commands and repeat them with just invoking a single macro feature.  Polymorphic virus: virus can keep changing its form.
  • 29. Program Security  Malicious Code – Types  Trojan Horse:  has a non obvious malicious effect.  logic bomb:  goes off when a specified condition occurs.  Trapdoor or backdoor:  a program by which someone can access the program other than by the obvious, direct call, perhaps with special privileges.
  • 30. Program Security  Malicious Code – Types  Worm:  a program that spreads copies of itself through a network.  Rabbit:  self-replicates without bound, with the intention of exhausting some computing resource
  • 31. Program Security  Malicious Code – Types  Virus Signatures:  Code must be stored somewhere, and the code must be in memory to execute. the virus executes in a particular way, using certain methods to spread.  Virus scanner: Detect and delete the virus
  • 35. Program Security  Malicious Code”  Prevention of virus Infection: Use only commercial software acquired from reliable, well-established vendors.  Test all new software on an isolated computer  Open attachments only when you know them to be safe  Make a recoverable system image and store it safely.  Make and retain backup copies of executable system files. Use virus detectors (often called virus scanners) regularly and update them daily.
  • 36. Program Security Targeted Malicious Code:  malicious code is written for a particular system, for a particular application, and for a particular purpose.  Trapdoors:  an undocumented entry point to a module.  computing systems are complex structures, programmers usually develop and test systems in a methodical, organized, modular manner.  unit testing, integration testing.  Poor error checking.
  • 37. Program Security Targeted Malicious Code:  Trapdoors – Causes:  trapdoors can persist in production programs because the developers. forget to remove them  intentionally leave them in the program for testing  intentionally leave them in the program for maintenance of the finished program,
  • 38. Program Security Targeted Malicious Code:  Salami Attack  merges bits of seemingly inconsequential data to yield powerful results  Ex: the small amounts are shaved from each computation and accumulated elsewhere such as in the programmer's bank account
  • 39. Program Security Targeted Malicious Code:  Privilege Escalation:  Programs run in a context: Their access rights and privileges are controlled by that context.  malicious code to be launched by a user with lower privileges but run with higher privileges. Interface Illusions:  spoofing attack in which all or part of a web page is false.  The object of the attacker is to convince the user to do something inappropriate.
  • 40. Program Security Targeted Malicious Code:  Man-in-the-Middle Attacks :  a malicious program interjects itself between two other programs, typically between a user's input and an application's result. Timing Attacks :  the time it takes a computer to perform a task depends on the size of the task.
  • 41. Covert Channels  extraordinary paths of communication is covert channels.  programs that communicate information to people who should not receive it. The communication travels unnoticed, accompanying other, perfectly proper, communications.  communications are hidden in an open channel
  • 42. Covert Channels  Creating covert channels:  producing a specific output report or displaying desired values.  Encoding the data values in another report by varying the format of the output.  Omitting the printing of certain values  printing certain specific values  Changing the number of lines per page.
  • 43. Covert Channels  Storage Channels:  pass information by using the presence or absence of objects in storage.  Ex: file lock channel.  In multiuser systems, files can be "locked" to prevent two people from writing to the same file at the same time.
  • 44. Covert Channels Timing Channels: pass information by using the speed at which things happen. Actually, timing channels are shared resource channels in which the shared resource is time.  analyzing the resources of a system,  the other works at the source code level.
  • 45. Covert Channels Shared Resource Matrix: finding all shared resources and determining which processes can write to and read from the resources.  a matrix of resources (rows) and processes that can access them (columns)  The matrix entries are R for "can read (or observe) the resource" and M for "can set (or modify, create, delete) the resource.
  • 46. Covert Channels  Information Flow Method:  analysis can be automated within a compiler so that information flow potentials can be detected while a program is under development.  Explicit flow: the statement B:=A, which assigns the value of A to the variable B, obviously supports an information flow from A to B.  Implicit flow: The conditional statement IF D=1 THEN B:=A has two flows: from A to B because of the assignment, but also from D to B, because the value of B can change if and only if the value of D is 1.
  • 47. Controls Against Program Threats controls during software development the specifying, designing, writing, and testing of the program to find and eliminate the sorts of exposures.  Types of controls:  Developmental Controls  operating system  administrative
  • 48. Controls Against Program Threats  Developmental Controls:  The Nature of Software Development:  specify the system  design the system  implement the system  test the system  review the system  document the system  manage the system  maintain the system
  • 49. Controls Against Program Threats  Developmental Controls:  Modularity, Encapsulation, and Information Hiding:  Modules: to create a design or code in small, self- contained units  If a component is isolated from the effects of other components, then it is easier to trace a problem to the fault that caused it and to limit the damage the fault causes.
  • 50. Controls Against Program Threats  Developmental Controls:  Modularity: the process of dividing a task into subtasks, Each component performs a separate, independent part of the task.  Conditions:  single-purpose  small  simple  independent
  • 51. Controls Against Program Threats  Developmental Controls:  Modularity:  Advantage:  Maintenance  Understandability  Reuse  Correctness  Testing.
  • 52. Controls Against Program Threats  Developmental Controls:  Modularity:  High Cohesion and lo coupling  Coupling: the degree with which a component depends on other components in the system.  low or loose coupling is better than high or tight coupling
  • 53. Controls Against Program Threats  Developmental Controls:  Encapsulation:  hides a component's implementation details, but it does not necessarily mean complete isolation  "technique for packaging the information [inside a component] in such a way as to hide what should be hidden and make visible what is intended to be visible."
  • 54. Controls Against Program Threats  Developmental Controls:  Information Hiding:  a component as a kind of black box, with certain well- defined inputs and outputs and a well-defined function.  Other components' designers do not need to know how the module completes its function.  desirable because developers cannot easily and maliciously alter the components of others if they do not know how the components work.
  • 55. Controls Against Program Threats  Developmental Controls:  Review  Walk-through  Inspection A wise engineer who finds a fault can deal with it in at least three ways: 1. by learning how, when, and why errors occur 2. by taking action to prevent mistakes 3. by scrutinizing products to find the instances and effects of errors that were missed
  • 56. Controls Against Program Threats  Developmental Controls:  Testing:  a process activity that homes in on product quality  Unit testing  Integration testing  System testing  function test  performance test  acceptance test  regression testing  Perspective: Black-box testing and white-box testing
  • 57. Controls Against Program Threats  Developmental Controls:  Good Design:  using a philosophy of fault tolerance having a consistent policy for handling failures capturing the design rationale and history using design patterns  Designers should try to anticipate faults and handle them in ways that minimize disruption and maximize safety and security
  • 58. Controls Against Program Threats  Developmental Controls:  Good Design:  failures include failing to provide a service providing the wrong service or data corrupting data  Handling Problem:  Retrying  Correcting  Reporting  Configuration Management
  • 59. Controls Against Program Threats  Developmental Controls:  Standards of Program Development  standards of design, including using specified design tools, languages, or methodologies, using design diversity, and devising strategies for error handling and fault tolerance  standards of documentation, language, and coding style, including layout of code on the page, choices of names of variables, and use of recognized program structures
  • 60. Controls Against Program Threats  Developmental Controls:  Standards of Program Development  standards of programming, including mandatory peer reviews, periodic code audits for correctness, and compliance with standards  standards of testing, such as using program verification techniques, archiving test results for future reference, using independent testers, evaluating test thoroughness, and encouraging test diversity
  • 61. Protection in General-Purpose Operating Systems  Operating system functions can be categorized as,  access control identity and credential management information flow audit and integrity protection
  • 62. Protection in General-Purpose Operating Systems  History:  No system s/w - User entered pgms in binary Executives - Assist single user with preparation and cleanup. Entirely passive: Waited for user’s request Provided service on demand  Monitors-Assisted multiple users in multiprogramming systems. Protect one user from interference (malicious or acceidental or malicious) by another
  • 63. Protection in General-Purpose Operating Systems Multiprogramming - Protected Objects:  memory sharable I/O devices, such as disks serially reusable I/O devices, such as printers and tape drives sharable programs and subprocedures  networks sharable data
  • 64. Protection in General-Purpose Operating Systems  Security Methods of Operating Systems:  Separation: keeping one user's objects separate from other users.  physical separation - different processes use different physical objects, such as separate printers for output requiring different levels of security  temporal separation - different security requirements are executed at different times  logical separation - cannot access objects outside its permitted domain  cryptographic separation - conceal their data and computations
  • 65. Protection in General-Purpose Operating Systems  Level of Security in OS:  Do not protect: Operating systems with no protection.  Isolate: different processes running concurrently are unaware of the presence of each other.  Share all or share nothing: the owner of an object declares it to be public or private.  Share via access limitation: checks the allowability of each user's potential access to an object
  • 66. Protection in General-Purpose Operating Systems  Level of Security in OS:  Share by capabilities: dynamic creation of sharing rights for objects.  Limit use of an object: limits not just the access to an object but the use made of that object after it has been accessed.
  • 67. Protection in General-Purpose Operating Systems Memory and Address Protection:  protection can be built into the hardware mechanisms that control efficient use of memory, so solid protection can be provided at essentially no additional cost.
  • 68. Protection in General-Purpose Operating Systems Memory and Address Protection:  Fence:  single-user operating systems to prevent a faulty user program from destroying part of the resident portion of the operating system.  a method to confine users to one side of a boundary
  • 69. Protection in General-Purpose Operating Systems Memory and Address Protection:  Fence:  predefined memory address n between OS and user  predefined amount of space was always reserved for the operating system, whether it was needed or not
  • 70. Protection in General-Purpose Operating Systems Memory and Address Protection:  Fence:  Fence Register: the address of the end of the operating system.  the location of the fence could be changed
  • 71. Protection in General-Purpose Operating Systems Memory and Address Protection:  Relocation:  the process of taking a program written as if it began at address 0.  the relocation factor - the starting address of the memory assigned for the program.  The fence register can be a hardware relocation device.  both relocates the address and guarantees that no one can access a location lower than the fence address
  • 72. Protection in General-Purpose Operating Systems Memory and Address Protection:  Base/Bounds Registers:  A variable fence register – base register.  provide a lower bound (a starting address) but not an upper one.  bounds register, is an upper address limit  Each pgm address forced to be above base address Each pgm address checked to be below bounds address
  • 73. Protection in General-Purpose Operating Systems Memory and Address Protection:  Tagged Architecture:  Problem with base/bounds registers  high granularity of access rights  Can allow another module to access all or none of its data  Tagged Architecture: every word of machine memory has one or more extra bits to identify the access rights to that word
  • 74. Protection in General-Purpose Operating Systems Memory and Address Protection:  Tagged Architecture:  Access bits set by OS  Tested every time instruction accesses its location Tag Word R 0001 RW 0137 R 4091 R 0002 X
  • 75. Protection in General-Purpose Operating Systems Memory and Address Protection:  Segmentation:  dividing a program into separate piece  Each segment has a unique name.  <name, offset>  name is the name of the segment  offset is its location within the segment
  • 76. Control of Access to General Objects  Access Control:  providing security in an OS.  can grant or revoke access for certain resources like file, program and data.  Goals:  Check every access - to revoke a user's privilege to access an object.  Enforce least privilege - a subject should have access to the smallest number of objects necessary to perform some task.  Verify acceptable usage - to check that the activity to be performed on an object is appropriate.
  • 77. Control of Access to General Objects  Access Control – Implementation:  Directory:  simple way of protection.  Every file has a unique owner who possesses "control" access rights and to revoke access to any person at any time.  Each user has a file directory, which lists all the files to which that user has access.  the operating system must maintain all file directories  rights to files are the common read, write, and execute familiar on many shared systems
  • 78. Control of Access to General Objects  Access Control – Implementation:  Directory:  user to grant and revoke access rights  Advantages:  easy to implement because it uses one list per user, naming all the objects that user is allowed to access  Disadvantages:  the list becomes too large if many shared objects.  revocation of access is difficult  involves pseudonyms leads to multiple permission that are not necessarily consistent.
  • 79. Control of Access to General Objects  Access Control – Implementation:  Directory:
  • 80. Control of Access to General Objects  Access Control – Implementation:  Access Control List:  one such list for each object, and the list shows all subjects who should have access to the object and what their access is.  Protection classes:  user - a specific subject,  group - who had a common interest  compartment - an untrusted object
  • 81. Control of Access to General Objects  Access Control – Implementation:  Access Control List:
  • 82. Control of Access to General Objects  Access Control – Implementation:  Access Control Matrix:  a table in which each row represents a subject, each column represents an object, and each entry is the set of access rights for that subject to that object.  represented as a list of triples, <subject, object, rights>
  • 83. Control of Access to General Objects  Access Control – Implementation:  Access Control Matrix: BIBLIO G TEMP F HELP.T XT C_COM P LINKER SYS_CL OCK PRINTE R USER A ORW ORW ORW R X X R W USER B R - - R X X R W USER S RW - R R X X R W USER T - - - R X X R W SYS_MG R - - - RW OX OX ORW O USER_S VCS - - - O X X R W
  • 84. Control of Access to General Objects  Access Control – Implementation:  Capability:  an unforgeable token that gives the possessor certain rights to an object.  users can create objects, such as files, data segments, or subprocesses, and can also specify the acceptable kinds of operations, such as read, write, and execute.  capabilities can be encrypted under a key available only to the access control mechanism.
  • 85. Control of Access to General Objects  Access Control – Implementation:  Capability:  One possible access right to an object is transfer or propagate.  Domain: the collection of objects to which the process has access
  • 86. Control of Access to General Objects  File Protection Mechanisms:  Basic Forms of Protection:  AllNone Protection: trust combined with ignorance.  Unacceptable for many reasons: Lack of trust, Too coarse, Rise of sharing  Group Protection  identifying groups of users who had some common relationship.  Windows: Administrators, Power Users, Users, and Guests.  Unix: the user, group and other users
  • 87. Control of Access to General Objects  File Protection Mechanisms:  Individual Permissions:  Persistent Permission:  uses a name, a token or a secret.  User access permissions can be required for any access or only for modifications (write access)  Temporary Acquired Permission  The Unix designers added a permission called set userid (suid).  Per-Object and Per-User Protection  The access control lists or access control matrices described earlier provide very flexible protection
  • 88. Control of Access to General Objects  User Authentication  An operating system bases much of its protection on knowing who a user of the system is.  Authentication Mechanism:  Something the user knows: Passwords, PIN numbers  Something the user has: Token and cards  Something the user is: biometrics, are based on a physical characteristic of the user, such as a fingerprint, the pattern of a person's voice, or a face (picture)
  • 89. Control of Access to General Objects  User Authentication  Passwords as Authenticators:  Passwords are mutually agreed-upon code words, assumed to be known only to the user and the system.  difficulties of use:  Loss: no one will be able to replace a lost or forgotten password  Use: each access to a file can be inconvenient and time consuming.  Disclosure: If a password is disclosed to an unauthorized individual, the file becomes immediately accessible.  Revocation: To revoke one user's access right to a file, someone must change the password
  • 90. Control of Access to General Objects  User Authentication  Additional Authentication Information:  Multifactor authentication:  two-factor authentication  Attacks on Passwords:  Passwords are somewhat limited as protection devices because of the relatively small number of bits of information they contain
  • 91. Control of Access to General Objects  User Authentication  Password guessing steps:  no password the same as the user ID is, or is derived from, the user's name common word list (for example, "password," "secret," "private") plus common names and patterns (for example, "asdfg," "aaaaaa") short college dictionary complete English word list common non-English language dictionaries short college dictionary with capitalizations (PaSsWorD) and substitutions (0 for O, and so forth)
  • 92. Control of Access to General Objects  User Authentication  Password Selection Criteria:  Use characters other than just AZ  Choose long passwords.  Avoid actual names or words.  Choose an unlikely password  Change the password regularly.  Don't write it down.  Don't tell anyone else.
  • 93. Control of Access to General Objects  User Authentication  One-Time Passwords:  changes every time it is used.  the system assigns a static mathematical function.  The system provides an argument to the function, and the user computes and returns the function value - challengeresponse systems
  • 94. Control of Access to General Objects  User Authentication  One-Time Passwords – functions:  f(x) = x + 1  f(x) = r(x)  f(E(x)) = E(D(E(x)) + 1).
  • 95. Control of Access to General Objects  User Authentication  The Authentication Process:  users occasionally mistype their passwords.  A user who receives a message of INCORRECT LOGIN will carefully retype the login and gain access to the system.  A legitimate user will not complain if the login process takes 5 or 10 seconds.  Systems commonly disconnect a user after a small number of failed logins, forcing the user to reestablish a connection with the system.
  • 96. Control of Access to General Objects  User Authentication  Fixing Flaws in the Authentication Process :  Some people give out their passwords for the asking. Other passwords have been obtained just by someone watching a user typing in the password.  Second level of protection - another round of passwords or a challengeresponse interchange.
  • 97. Control of Access to General Objects  User Authentication  Biometrics: Authentication Not Using Passwords:  based on some physical characteristic of the human body.  to recognize the following biometrics: fingerprints, hand geometry (shape and size of fingers), retina and iris (parts of the eye), voice, handwriting, blood vessels in the finger, and face.
  • 98. Control of Access to General Objects  User Authentication  Biometrics: Authentication Not Using Passwords:  Identification versus Authentication. Biometrics are very reliable for authentication but much less reliable for authentication.
  • 99. Control of Access to General Objects  User Authentication  All biometric readers operate in two phases:  First, a user registers with the reader, during which time a characteristic of the user (for example, the geometry of the hand) is captured and reduced to a template or pattern.  Second, the user later seeks authentication from the system, during which time the system remeasures the hand and compares the new measurements with the stored template.
  • 100. Control of Access to General Objects  User Authentication  Problems with Biometrics  Biometrics are relatively new, and some people find their use intrusive.  Biometric recognition devices are costly  Variation reduces accuracy  Biometrics can become a single point of failure.
  • 101. Firewalls  a device that filters all traffic between a protected or "inside" network and a less trustworthy or "outside" network.  runs on a dedicated device  executable code, an attacker could compromise that code and execute from the firewall's device.
  • 102. Firewalls  Purpose:  to keep "bad" things outside a protected environment.  the challenge of protecting a network with a firewall is determining which security policy meets the needs of the installation.  ensuring the validity of inside addresses.  A packet filter sits between the inside network and the outside net, so it can know if a packet from the outside is forging an inside address.
  • 103. Firewalls  Design:  a reference monitor must be  always invoked tamperproof small and simple enough for rigorous analysis
  • 104. Firewalls  Types of Firewalls:  Packet filtering gateways or screening routers  Stateful inspection firewalls  Application proxies  Guards Personal firewalls
  • 105. Firewalls  Types of Firewalls - Packet Filtering Gateway  controls access to packets on the basis of packet address (source or destination) or specific transport protocol type (such as HTTP web traffic).  Packet filter rule has two parts:  Selection criteria  Action field
  • 106. Firewalls  Types of Firewalls - Stateful Inspection Firewall  maintains state information from one packet to another in the input stream.  to break an attack into multiple packets by forcing some packets to have very short lengths so that a firewall cannot detect the signature of an attack split across two or more packets.  track the sequence of packets and conditions from one packet to another.
  • 107. Firewalls  Types of Firewalls - Application Proxy  simulates the (proper) effects of an application so that the application receives only requests to act properly.  A proxy gateway is a two-headed device: It looks to the inside as if it is the outside (destination) connection, while to the outside it responds just as the insider would.
  • 108. Firewalls  Types of Firewalls – Guard  decides what services to perform on the user's behalf in accordance with its available knowledge, such as whatever it can reliably know of the (outside) user's identity, previous interactions, and so forth.  is limited only by what is computable.
  • 109. Firewalls  Types of Firewalls – Personal Firewalls  protect a (sub)network of multiple hosts.  an application program that runs on a workstation to block unwanted traffic, usually from the network.  screens traffic on a single workstation.  Combining a virus scanner with a personal firewall is both effective and efficient.  provide reasonable protection to clients.
  • 110. Firewalls  Types of Firewalls – Comparison Packet Filtering Stateful Inspection Application Proxy Guard Personal Firewall Simplest More complex Even more complex Most complex Similar to packet filtering firewall Sees only addresses and service protocol Type Can see either addresses or data Sees full data portion of Packet Sees full text of Communication Can see full data portion of packet Auditing difficult Auditing possible Can audit Activity Can audit activity usually Does audit activity
  • 111. Firewalls  Types of Firewalls – Comparison Packet Filtering Stateful Inspection Application Proxy Guard Personal Firewall Screens based on connection Rules Screens based on information across packets in either header or data field Screens based on behavior of Proxies Screens based on interpretation of message content Typically, screens based on information in a single packet, using header or data Complex addressing rules can make configuration Tricky Usually preconfigured to detect certain attack signatures Simple proxies can substitute for complex addressing Rules Complex guard functionality can limit assurance Usually starts in "deny all inbound" mode, to which user adds trusted addresses as they appear
  • 112. Network Security  Introduction to Network:  A connection between hosts and routers to facilitate exchange of information.  Types:  Circuit switched network: a dedicated circuit established to exchange data.  Packet switched network: the data between the hosts and the routers is transferred as chunks.
  • 113. Network Security  Different layers in protocol stack: Layer Purpose / work Done Protocols Application Responsible for handling the data sent between applications between two hosts on a network HTTP, SMTP,FTP Transport Responsible for managing the end to end logical connection TCP and UDP Network Routing data through a network Internet protocol Link Layer Transfers data over individual links on a network Ethernet Physical Sends binary data over the communication media -
  • 114. Network Security  Physical Layer:  Possible attacks on the physical layer are as follows:  Cable cuts  Wireless link jamming  Application of high voltages to copper cables.
  • 115. Network Security Data Link Layer:  consists of Ethernet, WLAN.  MAC addresses - 48 bits  24 bits represents the manufacturer  another 24 bits represents the interface produced by the manufacturer.
  • 116. Network Security Data Link Layer:  CAM table overflow:  Content Addressable Memory.  responsible for maintaining a mapping between the physical ports of a switch to the MAC address of the hosts connected to it.  limited in size.  attack: fill table with fake/invalid MAC addresses.
  • 117. Network Security Data Link Layer:  MAC address spoofing:  all the traffic intended to flow to the victim will be redirected to the host.  DHCPAttacks:  DHCP starvation attacks  Fake DHCP server  ARP Attack:  to find the MAC addresses if the IP addresses are known.
  • 118. Network Security Network Layer:  Packet sniffing  IP Spoofing  Fragmentation attack – overlap packets  ICMP attack
  • 119. Network Security Transport Layer:  TCP land attack  UDP flooding attack  TCP SYN attack
  • 120. Intrusion Detection Systems  a device, typically another separate computer, that monitors activity to identify malicious or suspicious events.  receives raw inputs from sensors.  It saves those inputs, analyzes them, and takes some controlling action.
  • 122. Intrusion Detection Systems  Functions:  monitoring users and system activity  auditing system configuration for vulnerabilities and misconfigurations  assessing the integrity of critical system and data files.  recognizing known attack patterns in system activity  identifying abnormal activity through statistical analysis  managing audit trails and highlighting user violation of policy or normal activity  correcting system configuration errors  installing and operating traps to record information about intruders
  • 123. Intrusion Detection Systems  Goals:  Filter on packet state  Filter on packet content  Maintain connection state  Use minimum number of signatures that can target maximum number of threats  Filter the packets in real-time  Conseal itself from being discovered by the attacker.
  • 124. Intrusion Detection Systems  Types:  Signature-based intrusion detection systems:  simple pattern-matching  match a pattern corresponding to a known attack type.  a series of TCP SYN packets sent to many different ports in succession and at times close to one another
  • 125. Intrusion Detection Systems  Types:  Signature-based intrusion detection systems:  Problem:  An attacker will try to modify a basic attack in such a way that it will not match the known signature of that attack.  the attacker may convert lowercase to uppercase letters or convert a symbol such as "blank space" to its character code equivalent %20.  Statistical analysis:  to obtain sample measurements of key indicators
  • 126. Intrusion Detection Systems  Types:  Heuristic Intrusion Detection:  behavior that is out of the ordinary.  The inference engine of an intrusion detection system performs continuous analysis of the system, raising an alert when the system's dirtiness exceeds a threshold
  • 127. Intrusion Detection Systems  Types:  Heuristic Intrusion Detection:  Inference engines work in two ways:  State based: the system going through changes of overall state or configuration.  Others try to map current activity onto a model of unacceptable activity and raise an alarm when the activity resembles the model.
  • 128. Intrusion Detection Systems  Types:  Heuristic Intrusion Detection:  Inference engines work in two ways:  Model based:  to build a dynamic model of behavior.  to accommodate variation and evolution in a person's actions over time.  compares real activity with a known representation of normality.
  • 129. Intrusion Detection Systems  Types - where it is placed?  network based IDSs:  detects system attacks by capturing and analyzing packets on a network switch.  matching multiple packets against a database of attack patterns or against a model of malicious activity.
  • 131. Intrusion Detection Systems  Types - where it is placed?  Host based IDSs:  IDSs are installed at every computer in the network and operate on information collected from them. Contains OS logs, audit and files.
  • 133. Intrusion Detection Systems  Stealth Mode:  the attacker should not be able to detect the IDS.  Interface:  to monitor the interface.  Sensitivity is a criterion that defines how malicious an event is considered by the IDS.
  • 134. Intrusion Detection Systems  Goals:  Responding to Alarms:  Monitor, collect data, perhaps increase amount of data collected  Protect, act to reduce exposure  Call a human  False Results:  False positives means the administrator will be less confident of the IDS's warnings, perhaps leading to a real alarm's being ignored.  false negatives mean that real attacks are passing the IDS without action.
  • 135. Intrusion Detection Systems  Strength:  cheaper and easier to administer  Limitations:  Sensitivity  An IDS does not run itself; someone has to monitor its track record and respond to its alarms.
  • 136. Data Privacy Principles  the prevention of the data mining and the unauthorized use of personal information, which are illegal in many parts of the world.  Types:  Internet privacy  Financial privacy  Medical privacy  Locational privacy
  • 137. Data Privacy Principles  Types: Internet privacy  reading of one’s email by third parties  Tracking of users browser history by third parties.  Collection, Storage and sharing of personal data by some websites.
  • 138. Data Privacy Principles  Types: Financial privacy  amount of assets held  positions held in stocks and shares  various purchases
  • 139. Data Privacy Principles  Types: Medical privacy  A person not wish to disclose his/her medical records due to various reasons.  Informational – control over personal info.  Physical – physical inaccessibility to others  Psychological – respects patients cultural beliefs, inner thoughts, values, feelings and religious practices
  • 140. Data Privacy Principles  Types: Locational privacy  knowing his/her mobility trace.  competitor sales force  attendance of a particular church  presence in hotel
  • 141. Data Privacy Principles  Collection limitation  Data quality  Purpose specification  use limitation  Security safeguards  Openness  Individual Participation  Accountability
  • 142. Data Privacy Principles  Collection limitation  data should be obtained by lawful an fair  Data quality  data should be relevant to the purposes  should be accurate, complete and up to date  Purpose specification  purpose of data collection should be specified  use limitation  should not be disclosed, made available or otherwise used for purposes other than specified above.
  • 143. Data Privacy Principles Security safeguards  against such risks as loss or unauthorized access, destruction and modification  Openness  general policy of practices  Individual Participation  Accountability  measures give effect to the principles stated.