Comp 324 - Information Security
Comp 324 - Information Security
Comp 324 - Information Security
Course Content
Key concepts in Information Security. Information Security in Networked Enterprises. Threats and
vulnerabilities analysis. Effective System Administration. Policies. Risk management. ICT Security
planning. Operational issues in ICT security (incident handling, training, backups etc). Physical security.
Personnel issues. Types and uses of security devices. Business Continuity and Disaster Recovery
Planning. Network Security; (identification and authentication, logical access control, Routers, Proxies,
and Firewalls audit trails and cryptography). Security for Electronic Commerce, Financial Networks,
Intranets and Extranets. Security Across Different Operating Systems and Platforms. Detection of security
breaches.
Assessment
Continuous Assessment Tests (CATs): 40%
End of Semester Written Examinations: 60%
Learning Materials
1
LECTURE 1
Key concepts in Information Security
Information security is the practice of defending information from unauthorized access, use, disclosure,
disruption, modification, perusal, inspection, recording or destruction.
It is also defined as preservation of confidentiality, integrity and availability of information. Other
properties, such as authenticity, accountability, non-repudiation and reliability can also be involved.
Two major aspects of information security are:
IT security: (Also computer security), It is responsible for keeping all of the technology within
the company secure from malicious cyber attacks that often attempt to breach into critical private
information or gain control of the internal systems.
Information assurance: The act of ensuring that data is not lost when critical issues arise. These
issues include: natural disasters, computer/server malfunction, physical theft, or any other
instance where data has the potential of being lost.
Basic principles
Confidentiality
Is a set of rules or a promise that limits access or places restrictions on certain types of information.
Confidentiality refers to limiting information access and disclosure to authorized users -- "the right
people" -- and preventing access by or disclosure to unauthorized ones -- "the wrong people."
Authentication methods like user-IDs and passwords, that uniquely identify data systems' users and
control access to data systems' resources, underpin the goal of confidentiality.
Integrity
Data integrity means maintaining and assuring the accuracy and consistency of data over its entire
life-cycle.
Data cannot be modified in an unauthorized or undetected manner.
Integrity is violated when a message is actively modified in transit.
Availability
This means that the computing systems used to store and process the information, the security controls
used to protect it, and the communication channels used to access it must be functioning correctly.
High availability systems aim to remain available at all times, preventing service disruptions due to
power outages, hardware failures, and system upgrades.
Ensuring availability involves preventing denial-of-service attacks, such as a flood of incoming
messages to the target system essentially forcing it to shut down.
Non-repudiation
It implies that one party of a transaction cannot deny having received a transaction nor can the other party
deny having sent a transaction.
3
4. When Left on Their Own, People Tend to Make the Worst Security Decisions - Takes little to
convince someone to give up their credentials in exchange for trivial or worthless goods.
Many people are easily convinced to double-click on the attachment
5. Functional and Assurance Requirements - Functional requirements - Describe what a system should
do.
Assurance requirements - Describe how functional requirements should be implemented and
tested
Exercise
What are the elements of a good security program?
Why is it difficult to secure information systems?
4
Meanwhile a security tester may suggest that it is conducting penetration testing to provide assurances
that security widgets are working well.
Information security is about adopting the right measures and controls for a given entity at a given point
in time. Threats change and vulnerabilities are introduced or removed, demanding that security evolves
simply to keep pace.
2: Security reporting
Reporting provides a "heartbeat" for information security across an organisation. It ensures the right
people remain up to date on the latest incidents, threats and initiatives that will influence the security
posture.
Regular reporting ensures those that are accountable for securing information assets are aware of the risks
they may have inherited and the rigour in the controls that protect them.
Security reports must be written for their audience and this is an area where security professionals often
fall down.
The content must be accurate but presented at a level that can be consumed by the target audience.
Reports destined for technologists with an appreciation of the hands on should be literal and explain any
vulnerabilities and controls in technical terms.
Those intended for managers with a technical background should be explained conceptually and include
references to technical detail that supports any conclusions.
Those intended for parties outside the technology group such as the CEO or chief risk officer should
wholly focus on the business impact where the conclusions are justified by a well-designed and
established.
3: Develop governance
For an organisation to maintain a consistent security posture people within that organisation must have
clear instructions that tells them how to behave. Governance ensures that people are aware how they
5
should conduct themselves and if well constructed encourages them to behave in a way that maintains or
may even improve security. There are useful standards such as those produced by International Standards
Organisation, National Institute for Standards and Technology and the Government Communications .
6
One of the most commonly practiced assurance measures is penetration testing. It provides a high level of
assurance that the tested technology would be resistant to a targeted attack by an skilled attacker. It is
however relatively expensive and often tightly scoped. Given the specialized nature of security testing it
could be worth considering using a third party security practitioner. A practitioner can ensure that the
scope is appropriate and that the tester is reputable.
CAT 1
7
a) What is a honeypot? Give advantages of honeypots. [5 MKS]
b) Explain any five tools/ products you would use in monitoring network security. [5 MKS]
c) How do you fight hackers in a network? [5 MKS]
d) Explain how stack and buffer overflow is a threat to operating systems. [5 MKS]
Lecture 2 –
Threat Assessment
The first step in a risk management program is a threat assessment. A threat assessment considers the full
spectrum of threats (i.e., natural, criminal, terrorist, accidental, etc.) for a given facility/location.
The assessment should examine supporting information to evaluate the likelihood of occurrence for each
threat. For natural threats, historical data concerning frequency of occurrence for given natural disasters
such as tornadoes, hurricanes, floods, fire, or earthquakes can be used to determine the credibility of the
given threat.
Vulnerability Assessment
Once the credible threats are identified, a vulnerability assessment must be performed. The vulnerability
assessment considers the potential impact of loss from a successful attack as well as the vulnerability of
the facility/location to an attack. Impact of loss is the degree to which the mission of the agency is
impaired by a successful attack from the given threat. A sample set of definitions for impact of loss is
provided below. These definitions are for an organization that generates revenue by serving the public.
Devastating: The facility is damaged/contaminated beyond habitable use. Most items/assets are
lost, destroyed, or damaged beyond repair/restoration. The number of visitors to other facilities in
the organization may be reduced by up to 75% for a limited period of time.
Severe: The facility is partially damaged/contaminated. Examples include partial structure breach
resulting in weather/water, smoke, impact, or fire damage to some areas. Some items/assets in the
facility are damaged beyond repair, but the facility remains mostly intact. The entire facility may
be closed for a period of up to two weeks and a portion of the facility may be closed for an
extended period of time (more than one month). Some assets may need to be moved to remote
locations to protect them from environmental damage. The number of visitors to the facility and
others in the organization may be reduced by up to 50% for a limited period of time.
Noticeable: The facility is temporarily closed or unable to operate, but can continue without an
interruption of more than one day. A limited number of assets may be damaged, but the majority
8
of the facility is not affected. The number of visitors to the facility and others in the organization
may be reduced by up to 25% for a limited period of time.
Minor: The facility experiences no significant impact on operations (downtime is less than four
hours) and there is no loss of major assets.
Vulnerability is defined to be a combination of the attractiveness of a facility as a target and the level of
deterrence and/or defense provided by the existing countermeasures. Target attractiveness is a measure of
the asset or facility in the eyes of an aggressor and is influenced by the function and/or symbolic
importance of the facility. Sample definitions for vulnerability ratings are as follows:
Very High: This is a high profile facility that provides a very attractive target for potential
adversaries, and the level of deterrence and/or defense provided by the existing countermeasures
is inadequate.
High: This is a high profile regional facility or a moderate profile national facility that provides
an attractive target and/or the level of deterrence and/or defense provided by the existing
countermeasures is inadequate.
Moderate: This is a moderate profile facility (not well known outside the local area or region)
that provides a potential target and/or the level of deterrence and/or defense provided by the
existing countermeasures is marginally adequate.
Low: This is not a high profile facility and provides a possible target and/or the level of
deterrence and/or defense provided by the existing countermeasures is adequate.
RISK MANAGEMENT
Risk Analysis is a process of evaluating the probability of hazardous events
The strength of an information infrastructure depends on how well information resources are
managed--what, how, where, and for whom sources of information are established and made
available for reuse
To say Risk Analysis is an important issue is an understatement. It is difficult to quantify the losses
suffered each year by businesses arising from the use and misuse of Information Systems (IS)
IS risk analysis is the process of:
Values of assets
Threats to the assets
Their vulnerabilities and likelihood of exploitation
Risk Management involves the identification, selection and adoption of security measures justified by
9
Risk Analysis and Management
To asses risk:-
When designing a risk analysis for information systems, the following components can be considered:
People--the information users and producers who direct, prioritize, interpret, and apply data and
information to policy problems
Documents, databases, and other information entities that hold information and data collections
Information processes such as collection, storage, retrieval, dissemination, communication, and
display
Information technologies--the know-how for manipulating and accessing information, including the
conceptual, statistical, and model-building structures that aggregate and process data and produce
information content, as well as mechanisms, people, and/or systems that provide intellectual, physical, and
economical access to information
Security Models
A security policy is a document that expresses clearly and concisely what the protection
mechanisms are to achieve.
Models can capture policies for confidentiality (Bell-LaPadula) or for integrity (Biba, Clark-
Wilson).
Some models apply to environments with static policies (Bell-LaPadula), others consider
dynamic changes of access rights (Chinese Wall).
Security models can be informal (Clark-Wilson), semi-formal, or formal (Bell-LaPadula,
Harrison-Ruzzo-Ullman).
Model vs Policy
A security model maps the abstract goals of the policy to information system terms by specifying
explicit data structures and techniques that are necessary to enforce the security policy. A security
model is usually represented in mathematics and analytical ideas, which are then mapped to
system specifications, and then developed by programmers through programming code
For Example, if a security policy states that subjects need to be authorized to access objects, the
security model would provide the mathematical relationships and formulas explaining how x can
access y only through the outlined specific methods
A security policy outlines goals without regard to how they will be accomplished. A model is a
framework that gives the policy form and solves security access problems for particular
situations.
Note
11
SECURITY DESIGN PRINCIPLES
Security is a system requirement just like performance, capability, cost, etc. Therefore, it may be
necessary to trade off certain security requirements to gain others.
CONTROLS
Security controls are safeguards or countermeasures to avoid, counteract or minimize security risks
relating to personal property, or any company property.
The control environment sets the tone of an organization, influencing the control consciousness of its people. It
is the foundation for all other components of internal control, providing discipline and structure. Control
environment factors include the integrity, ethical values, and competence of the entity’s people; management’s
philosophy and operating style; and the way management assigns authority and organizes and develops its
people
Organizational Controls
Organizational controls are procedures and processes that define how people in the organization should
perform their duties.
Preventative controls in this category include:
Clear roles and responsibilities. These must be clearly defined and documented so that management
and staff clearly understand who is responsible for ensuring that an appropriate level of security is
implemented for the most important IT assets.
Separation of duties and least privileges. When properly implemented, these ensure that people
have only enough access to IT systems to effectively perform their job duties and no more.
Documented security plans and procedures. These are developed to explain how controls have
been implemented and how they are to be maintained.
Security training and ongoing awareness campaigns. This is necessary for all members of the
organization so that users and members of the IT team understand their responsibilities and how to
properly utilize the computing resources while protecting the organization's data.
Systems and processes for provisioning and de-provisioning users. These controls are necessary
so that new members of the organization are able to become productive quickly, while leaving
personnel lose access immediately upon departure. Processes for provisioning should also include
employee transfers from groups within the company where privileges and access change from one
level to another.
Established processes for granting access to contractors, vendors, partners, and customers. This
is often a variation on user provisioning, mentioned previously, but in many cases it is very distinct.
Sharing some data with one group of external users while sharing a different collection of data with a
different group can be challenging. Legal and regulatory requirements often impact the choices, for
example when health or financial data is involved.
Detection controls in this category include:
Performing continuing risk management programs to assess and control risks to the organization's key
assets.
Executing recurrent reviews of controls to verify the controls' efficacy.
13
Periodic undertaking of system audits to ensure that systems have not been compromised or
misconfigured.
Performing background investigations of prospective candidates for employment; You should
contemplate implementing additional background investigations for employees when they are being
considered for promotions to positions with a significantly higher level of access to the organization's
IT assets.
Establishing a rotation of duties, this is an effective way to uncover notorious activities by members
of the IT team or users with access to sensitive information.
Management controls in this category include:
Incident response planning, which provides an organization with the ability to quickly react to and
recover from security violations while minimizing their impact and preventing the spread of the
incident to other systems.
Business continuity planning, which enables an organization to recover from catastrophic events that
impact a large fraction of the IT infrastructure.
Operational Controls
Operational controls define how people in the organization should handle data, software and hardware.
They also include environmental and physical protections as described below.
Preventative controls in this category include:
Protection of computing facilities by physical means such as guards, electronic badges and locks,
biometric locks, and fences.
Physical protection for end-user systems, including devices such as mobile computer locks and
alarms and encryption of files stored on mobile devices.
Emergency backup power, which can save sensitive electrical systems from harm during power
brownouts and blackouts; they can also ensure that applications and operating systems are shut down
gracefully manner to preserve data and transactions.
Fire protection systems such as automated fire suppression systems and fire extinguishers, which are
essential tools for guarding the organization's key assets.
Temperature and humidity control systems that extend the life of sensitive electrical equipment and
help to protect the data stored on them.
Media access control and disposal procedures to ensure that only authorized personnel have access to
sensitive information and that media used for storing such data is rendered unreadable by degaussing
or other methods before disposal.
Backup systems and provisions for offsite backup storage to facilitate the restoration of lost or
corrupted data. In the event of a catastrophic incident, backup media stored offsite makes it possible
to store critical business data on replacement systems.
Detection and recovery controls in this category include:
Physical security, which shields the organization from attackers attempting to gain access to its
premises; examples include sensors, alarms, cameras, and motion detectors.
Environmental security, which safeguards the organization from environmental threats such as floods
and fires; examples include smoke and fire detectors, alarms, sensors, and flood detectors.
Technological Controls
Technological controls vary considerably in complexity. They include system architecture design,
engineering, hardware, software, and firmware. They are all of the technological components used to
build an organization's information systems.
Preventative controls in this category include:
Authentication. The process of validating the credentials of a person, computer, process, or
device. Authentication requires that the person, process, or device making the request provide a
14
credential that proves it is what or who it says it is. Common forms of credentials are digital
signatures, smart cards, biometric data, and a combination of user names and passwords.
Authorization. The process of granting a person, computer process, or device access to certain
information, services, or functionality. Authorization is derived from the identity of the person,
computer process, or device requesting access, which is verified through authentication.
Non-repudiation. The technique used to ensure that someone performing an action on a
computer cannot falsely deny that he or she performed that action. Non-repudiation provides
undeniable proof that a user took a specific action such as transferring money, authorizing a
purchase, or sending a message.
Access control. The mechanism for limiting access to certain information based on a user's
identity and membership in various predefined groups. Access control can be mandatory,
discretionary, or role-based.
Protected communications. These controls use encryption to protect the integrity and
confidentiality of information transmitted over networks.
Detection and recovery controls in this category include:
Audit systems. Make it possible to monitor and track system behavior that deviates from
expected norms. They are a fundamental tool for detecting, understanding, and recovering from
security breaches.
Antivirus programs. Designed to detect and respond to malicious software, such as viruses and
worms. Responses may include blocking user access to infected files, cleaning infected files or
systems, or informing the user that an infected program was detected.
System integrity tools. Make it possible for IT staff to determine whether unauthorized changes
have been made to a system. For example, some system integrity tools calculate a checksum for
all files present on the system's storage volumes and store the information in a database on a
separate computer. Comparisons between a system's current state and its previously-known good
configuration can be completed in a reliable and automated fashion with such a tool.
Management controls in this category include:
Security administration tools included with many computer operating systems and business
applications as well as security oriented hardware and software products. These tools are needed
in order to effectively maintain, support, and troubleshoot security features in all of these
products.
Cryptography, which is the foundation for many other security controls. The secure creation,
storage, and distribution of cryptographic keys make possible such technologies as virtual private
networks (VPNs), secure user authentication, and encryption of data on various types of storage
media.
Identification, which supplies the ability to identify unique users and processes. With this
capability, systems can include features such as accountability, discretionary access control, role-
based access control, and mandatory access control.
Protections inherent in the system, which are features designed into the system to provide
protection of information processed or stored on that system. Safely reusing objects, supporting
no-execute (NX) memory, and process separation all demonstrate system protection features.
Many organizations are introduced to security risk management by the necessity of responding to
a relatively small security incident. Whatever the incident, as more and more issues relating to security
15
arise and begin to impact the business, many organizations get frustrated with responding to one crisis
after another. They want an alternative to this reactive approach, one that seeks to reduce the probability
that security incidents will occur in the first place. Organizations that effectively manage risk evolve
toward a more proactive approach, but this is only part of the solution.
Security incidents may help an organization to predict and prepare for future problems. This
means that an organization that takes time to respond to security incidents in a calm and rational manner
while determining the underlying reasons that allowed the incident to transpire will be better able to both
protect itself from similar problems in the future and respond more quickly to other issues that may arise.
Today, many information technology (IT) professionals feel tremendous pressure to complete
their tasks quickly with as little inconvenience to users as possible. When a security event occurs, many
IT professionals feel like the only things they have time to do are to contain the situation, figure out what
happened, and fix the affected systems as quickly as possible. Some may try to identify the root cause, but
even that might seem like a luxury for those under extreme resource constraints. While a reactive
approach can be an effective tactical response to security risks that have been exploited and turned into
security incidents, imposing a small degree of rigor to the reactive approach can help organizations of all
types to better use their resources.
.
The following six steps help when you are responding to security incidents quickly and efficiently:
1. Protect human life and people's safety. This should always be your first priority. For example, if
affected computers include life support systems, shutting them off may not be an option; perhaps you
could logically isolate the systems on the network by reconfiguring routers and switches without
disrupting their ability to help patients.
2. Contain the damage. Containing the harm that the attack caused helps to limit additional damage.
Protect important data, software, and hardware quickly. Minimizing disruption of computing
resources is an important consideration, but keeping systems up during an attack may result in greater
and more widespread problems in the long run. If you determine that there will be no adverse effects,
or that they would be outweighed by the positive benefits of activity, containment should begin as
quickly as possible during a security incident by disconnecting from the network the systems known
to be affected. If you cannot contain the damage by isolating the servers, ensure that you actively
monitor the attacker’s actions in order to be able to remedy the damage as soon as possible. And in
any event, ensure that all log files are saved before shutting off any server.
3. Assess the damage. Immediately make a duplicate of the hard disks in any servers that were attacked
and put those aside for forensic use later. Then assess the damage. You should begin to determine the
extent of the damage that the attack caused as soon as possible, right after you contain the situation
and duplicate the hard disks. This is important so that you can restore the organization's operations as
soon as possible while preserving a copy of the hard disks for investigative purposes. If it is not
possible to assess the damage in a timely manner, you should implement a contingency plan so that
normal business operations and productivity can continue. It is at this point that organizations may
want to engage law enforcement regarding the incident; however, you should establish and maintain
working relationships with law enforcement agencies that have jurisdiction over your organization's
business before an incident occurs so that when a serious problem arises you know whom to contact
and how to work with them. You should also advise your company’s legal department immediately, so
that they can determine whether a civil lawsuit can be brought against anyone as a result of the
damage.
16
4. Determine the cause of the damage. In order to ascertain the origin of the assault, it is necessary to
understand the resources at which the attack was aimed and what vulnerabilities were exploited to
gain access or disrupt services. Review the system configuration, patch level, system logs, audit logs,
and audit trails on both the systems that were directly affected as well as network devices that route
traffic to them. These reviews often help you to discover where the attack originated in the system
and what other resources were affected. You should conduct this activity on the computer systems in
place and not on the backed up drives created in step 3. Those drives must be preserved intact for
forensic purposes so that law enforcement or your lawyers can use them to trace the perpetrators of
the attack and bring them to justice. If you need to create a backup for testing purposes to determine
the cause of the damage, create a second backup from your original system and leave the drives
created in step 3 unused.
5. Repair the damage. In most cases, it is very important that the damage be repaired as quickly as
possible to restore normal business operations and recover data lost during the attack. The
organization's business continuity plans and procedures should cover the restoration strategy. The
incident response team should also be available to handle the restore and recovery process or to
provide guidance on the process to the responsible team. During recovery, contingency procedures are
executed to limit the spread of the damage and isolate it. Before returning repaired systems to service
be careful that they are not reinfected immediately by ensuring that you have mitigated whatever
vulnerabilities were exploited during the incident.
6. Review response and update policies. After the documentation and recovery phases are complete,
you should review the process thoroughly. Determine with your team the steps that were executed
successfully and what mistakes were made. In almost all cases, you will find that your processes need
to be modified to allow you to handle incidents better in the future. You will inevitably find
weaknesses in your incident response plan. This is the point of this after-the-fact exercise—you are
looking for opportunities for improvement. Any flaws should prompt another round of the incident-
response planning process so that you can handle future incidents more smoothly.
This methodology is illustrated in the following diagram:
17
Quantitative Risk Assessment
In quantitative risk assessments, the goal is to try to calculate objective numeric values for each
of the components gathered during the risk assessment and cost-benefit analysis. Where you estimate the
true value of each business asset in terms of what it would cost to replace it, what it would cost in terms
of lost productivity, what it would cost in terms of brand reputation, and other direct and indirect business
values. You endeavor to use the same objectivity when computing asset exposure, cost of controls, and all
of the other values that you identify during the risk management process.
Both qualitative and quantitative approaches to security risk management have their advantages
and disadvantages. Certain situations may call for organizations to adopt the quantitative approach. The
following table summarizes the benefits and drawbacks of each approach:
Quantitative Qualitative
Benefits Risks are prioritized by financial Enables visibility and
impact; assets are prioritized by understanding of risk ranking.
financial values. Easier to reach consensus.
Results facilitate management of risk Not necessary to quantify threat
by return on security investment. frequency.
Results can be expressed in Not necessary to determine
management-specific terminology (for financial values of assets.
18
example, monetary values and Easier to involve people who are
probability expressed as a specific not experts on security or
percentage). computers.
Accuracy tends to increase over time
as the organization builds historic
record of data while gaining
experience.
Drawbacks Impact values assigned to risks are Insufficient differentiation between
based on subjective opinions of important risks.
participants. Difficult to justify investing in
Process to reach credible results and control implementation because
consensus is very time consuming. there is no basis for a cost-benefit
Calculations can be complex and time analysis.
consuming. Results are dependent upon the
Results are presented in monetary quality of the risk management
terms only, and they may be difficult team that is created.
for non-technical people to interpret.
Process requires expertise, so
participants cannot be easily coached
through it.
LECTURE 3 - INFORMATION SECURITY POLICY
Why Policy?
A quality information security program begins and ends with policy
Policies are least expensive means of control and often the most difficult to implement
Some basic rules must be followed when shaping a policy:
Never conflict with law
Stand up in court
Properly supported and administered
Contribute to the success of the organization
Involve end users of information systems
The Bulls-eye Model
19
Bulls-eye model layers:
Policies: first layer of defense
Networks: threats first meet organization’s network
Systems: computers and manufacturing systems
Applications: all applications systems
Policies are important reference documents for internal audits and for resolution of legal disputes
about management's due diligence. Policy documents can act as a clear statement of
management's intent
20
Policies, Standards, & Practices
Policy: plan or course of action that influences and determines decisions
Standards: more detailed statement of what must be done to comply with policy
Practices, procedures and guidelines: explain how employees will comply with policy
EISP Elements
EISP documents should provide :
An overview of corporate philosophy on security
Information about information security organization and information security roles
Implementing ISSP
Common approaches:
Number of independent ISSP documents
Single comprehensive ISSP document
Modular ISSP document that unifies policy creation and administration
Recommended approach is modular policy, which provides a balance between issue orientation
and policy management
22
Applies to any technology that affects the confidentiality, integrity or availability of
information
Informs technologists of management intent
Technical Specifications SysSPs
System administrators directions on implementing managerial policy
Each type of equipment has its own type of policies
ACLs
In general ACLs regulate:
Who can use the system
What authorized users can access
When authorized users can access the system
Where authorized users can access the system from
How authorized users can access the system
Restricting what users can access, e.g. printers, files, communications, and applications
Administrators set user privileges, such as:
Read
Write
Create
Modify
Delete
Compare
Copy
23
Configuration Rules
Configuration rules are specific configuration codes entered into security systems to guide
execution of system when information is passing through it
Rule policies are more specific to system operation than ACLs and may or may not deal with users
directly
Many security systems require specific configuration scripts telling systems what actions to
perform on each set of information processed
Combination SysSPs
Often organizations create a single document combining elements of both Management
Guidance and Technical Specifications SysSPs
While this can be confusing, it is very practical
Care should be taken to articulate required actions carefully as procedures are presented
Investigation Phase
The policy development team should:
1. Obtain support from senior management, and active involvement of IT management,
specifically CIO
2. Clearly articulate goals of policy project
3. Gain participation of correct individuals affected by recommended policies
4. Be composed from Legal, Human Resources and end-users
5. Assign project champion with sufficient stature and prestige
6. Acquire a capable project manager
7. Develop detailed outline of and sound estimates for the cost and scheduling of the project
Analysis Phase
Analysis phase should include the following activities:
1. New or recent risk assessment or IT audit documenting the current information security needs
of the organization
2. Key reference materials—including any existing policies
Design Phase
Design phase should include:
1. How policies will be distributed
2. How verification of distribution will be accomplished
3. Specifications for any automated tools
4. Revisions to feasibility analysis reports based on improved costs and benefits as design is
clarified
Implementation Phase
Implementation Phase: writing the policies
Make certain policies are enforceable as written
Policy distribution is not always as straightforward
Effective policy
1. Is written at a reasonable reading level
2. Attempts to minimize technical jargon and management terminology
Maintenance Phase
Maintain and modify policy as needed to ensure that it remains effective as a tool to meet
changing threats
Policy should have a built-in mechanism via which users can report problems with the policy,
preferably anonymously
Periodic review should be built in to the process
Policies exist first, and foremost, to inform employees of what is and is not acceptable behavior in
the organization
Policy seeks to improve employee productivity, and prevent potentially embarrassing situations
To ensure continuity across all processes during planning process, contingency planners should:
Identify the mission- or business-critical functions
Identify resources that support critical functions
Anticipate potential contingencies or disasters
Select contingency planning strategies
Implement selected strategy
Test and revise contingency plans
CP Operations
Four teams are involved in contingency planning and contingency operations:
CP team
Incident recovery (IR) team
Disaster recovery (DR) team
Business continuity plan (BC) team
Components of Contingency Planning
Preparing to Plan
Planning requires detailed understanding of information systems and threats they face
IR planning team seeks to develop pre-defined responses that guide users through steps needed to
respond to an incident
Pre-defining incident responses enables rapid reaction without confusion or wasted time and effort
IR team consists of professionals capable of handling information systems and functional areas affected
by an incident
Each member of the IR team must:
– Know his or her specific role
– Work in concert with each other
– Execute the objectives of the IRP
Incident Detection
Challenge is determining whether an event is routine system use or an actual incident
Incident classification: process of examining a possible incident and determining whether or not it
constitutes actual incident
Initial reports from end users, intrusion detection systems, host- and network-based virus detection
software, and systems administrators are all ways to track and detect incident candidates
Careful training allows everyone to relay vital information to the IR team
Incident Response
Once an actual incident has been confirmed and properly classified, the IR team moves from detection
phase to reaction phase
In the incident response phase, a number of action steps taken by the IR team and others must occur
quickly and may occur concurrently
These steps include notification of key personnel, the assignment of tasks, and documentation of the
incident
Documenting an Incident
As soon as an incident has been confirmed and the notification process is underway, the team should
begin documentation
– Should record the who, what, when, where, why and how of each action taken while the
incident is occurring
Serves as a case study after the fact to determine if right actions were taken and if they were effective
– Can also prove the organization did everything possible to deter the spread of the incident
Incident Escalation
An incident may increase in scope or severity to the point that the IRP cannot adequately contain the
incident
Each organization will have to determine, during the business impact analysis, the point at which the
incident becomes a disaster
The organization must also document when to involve outside response
Recovery Process
Once the extent of the damage has been determined, the recovery process begins:
– Identify and resolve vulnerabilities that allowed incident to occur and spread
– Address, install, and replace/upgrade safeguards that failed to stop or limit the incident, or
were missing from system in the first place
– Evaluate monitoring capabilities (if present) to improve detection and reporting methods, or
install new monitoring capabilities
– Restore data from backups as needed
– Restore services and processes in use where compromised (and interrupted) services and
processes must be examined, cleaned, and then restored
– Continuously monitor system
– Restore the confidence of the members of the organization’s communities of interest
Disaster Recovery
Disaster recovery planning (DRP) is the preparation for and recovery from a disaster, whether natural
or man made
In general, an incident is a disaster when:
– organization is unable to contain or control the impact of an incident
OR
– level of damage or destruction from incident is so severe, the organization is unable to quickly
recover
Disaster Classifications
A DRP can classify disasters in a number of ways
Most common method: separate natural disasters from man-made disasters
Another way: by speed of development
– Rapid onset disasters
– Slow onset disasters
Crisis Management.
Crisis management: set of focused steps taken during and after a disaster that deal primarily with
people involved
Crisis management team manages event:
– Supporting personnel and their loved ones during crisis
– Determining event's impact on normal business operations
– When necessary, making a disaster declaration
– Keeping public informed about event
– Communicating with outside parties
Two key tasks of crisis management team:
– Verifying personnel status
– Activating alert roster
Continuity Strategies
Several continuity strategies for business continuity
– Determining factor is usually cost
Three exclusive-use options:
– Hot sites
– Warm sites
– Cold sites
Three shared-use options:
– Timeshare
– Service bureaus
– Mutual agreements
Overview
3: Network Performs packet routing Router IP, OSPF, ICMP, RIP, ARP,
RARP
2: Data link Provides error checking and Switch Ethernet, Token Ring, 802.11
transfer of message frames
Packet Filter
A simple and effective form of protection that matches all packets against a series of rules
Basic Packet Filtering
Allows communication originating from one side of the communication path or the other
Identifies and controls traffic by examining the source, destination, port number, and
protocol types
Firewalls
Firewalls typically run monitoring software to detect and thwart external attacks on the site and
protect the internal corporate network
Firewalls are an essential device for network security
Many of the architectures needed for security rely on one or more firewalls within an
intelligent design
IPsec - Performs both encryption and authentication to address the inherent lack of security on IP-
based networks
Networks are increasingly heterogeneous, containing different types of hardware and software and
running multiple operating systems that all need to be able to communicate with one another.
There are fewer and fewer pure Windows (or pure UNIX) shops, with many companies running
Windows domains side-by-side with UNIX web servers, accessed by client computers running
Windows, Linux and Mac. Add to the mix a variety of smart phones (Windows Mobile, iPhone,
Android, Symbian and more) that need to download mail and possibly access other network
resources, and you have a real challenge.
The same basic security concepts apply to both heterogeneous and homogeneous networks, so it
goes without saying that, regardless of the platform(s), you should:
Secure the edge with a good firewall/threat management gateway and intrusion
detection/prevention system
Use anti-virus and anti-malware software (including on non-Windows systems) and keep
definitions updated
Implement security auditing/monitoring to detect attempted breaches
Harden systems by turning off unnecessary services
Close unused ports
Restrict physical access to the systems
Restrict administrative/root access to those who really need it; on UNIX systems, restrict
root access to secure terminals
Implement file level permissions; on UNIX systems, partition the file system and use read-
only partitions for storing files that don’t change often, and use ACLs (Access Control
Lists) for complex permissions management
On UNIX systems, limit the access processes have on the file system by using the chroot
and ulimit interfaces
Enforce strong password policies
In high security environments, require two-factor authentication
On UNIX systems, use SSH (Secure Shell) for remote command line access
Use encryption: to protect files on the drive, to protect data crossing the network, to protect
the operating system from unauthorized access
Implement a public key infrastructure to issue digital certificates
Summary
1. The Telecommunications, Network, and Internet Security domain is one of the most important
areas that security practitioners must understand well
2. We can begin to mix and match the building blocks of network security tools and techniques to
implement defense in depth in preserving confidentiality, integrity, and availability
3. It is important to know how to find security information and how to decide which security
architecture is most appropriate for a given situation
A network audit is a formal or informal inventory, assessment, and analysis of your network’s
hardware, software, operating systems, servers, and users.
The OSI (Open Systems Interconnection) model is an established framework for network systems.
It comprises seven layers, from physical hardware to application-level interactions:
Doing things are a lot easier if you have some sort of guide to help you. This applies to network
security as well. Knowing the strengths and weaknesses of your network is important. Using
a network security assessment checklist gives you direction.
Here are the details one could expect in a network security assessment checklist:
Things to
check for Description
Make sure all This is a standard physical security procedure. Someone sneaking in your business
security or premises can do malicious things on your network.
surveillance Having security cameras everywhere will prevent an attacker from entering your
business premises. A network security assessment checklist should always include
cameras are
this detail on it.
working.
Things to
check for Description
Check if your This is very important for the physical security of your network. A sample keyless
keyless entry entry system is a door using biometrics for authentication. An intruder can’t enter
systems are your building without verifying their identity first.
A network security assessment checklist should also include this detail on it.
working.
Lock This is a standard computer security procedure that most people do not follow. The
computers importance of locking your PC is that no one could use it other than you.
when not in You should always lock your workstation if you are going away from it like when
taking breaks. One of the major threats to information security is the insider threats.
use.
These are the employees who are negligent and don’t follow security policies. They
are the security risks that are outside the scope of a network assessment tool.
A network security assessment checklist must always include this security
procedure on it.
Test the Your anti-malware software should be capable of detecting, removing, and
capability of preventing various threats. This includes the following:
your Viruses
Trojans
antimalware
Worms
software. Rootkits
Spyware
Adware
Ransomware
Also, consider the variations of these threats and zero-day attacks. A network
security assessment checklist should always contain this security procedure on it.
Check for Block adult sites, gaming sites, and social media sites. This should be in align with
web content. your company’s security policies. These sites should be inaccessible by default.
Browsing these sites also reduces productivity and increases security risks. Clicking
on links especially on adult sites will trigger a malware infection.
A network security assessment checklist should always include this security
procedure.
Try working Test if your firewall is effective at doing its job. It should react to any suspicious
around your and malicious activity. Upon threat detection, it should notify you right away.
firewall. There are a lot of tools out there to test the strength of a firewall. It is a matter of
preference which one best fits your business needs.
It is necessary to include this detail in a network security assessment checklist.
Use a This procedure gives programs and processes access to network resources. A
whitelisting whitelist can contain the following:
approach applications
email addresses
IP addresses
All the elements in the whitelist have access to network resources. Things not on
the list do not have permission. The logic here is to deny all and permit some.
Whitelisting is an important thing to add in your network security assessment
checklist.
Things to
check for Description
Patch Cybercriminals always target outdated software. They exploit the weaknesses while
management the software vendor is preparing a patch.
It is necessary to update the software components of your network. Patching them
will fix the bugs and vulnerabilities.
Patching is a vital process to include in a network security assessment checklist.
Check list
1. General
A written Network Security Policy that lists the rights and responsibilities of all staff,
employees, and consultants
Security Training for all users regarding the use of the Network Environment and sharing
data outside the company as well as allowing anybody to access their systems
Make sure users have been trained regarding the sharing of information by email and
the Internet
All outside vendors and contractors need to sign a security agreement while they are
working in your environment
Have contingency plans in place for if and when there is a data breach or security
breach.
2. Password Security
Written password policy
Password Training for all authorized users to ensure they understand the potential risks
of using passwords in an insecure way
Inspect Workstations for written passwords in the user or server areas
Keep password requirements documentation in a safe place
3. LAN Security
Hardening of servers on the internal network, removing unnecessary services and
applications
Keeping unnecessary files off of servers
Server permissions set appropriately for users
No anonymous users allowed
Share the functions of server administration between administrators
Remote administration policy
Disable Remote Administration where it isn’t needed
Remote Access Security policy and implementation
Rename Administrator Account
Enable auditing of Administrator login attempts
Create extra-strong passwords for Administrator accounts
Passwords for server administration accounts should be different than workstation user
accounts for the same users
Disable Guest Account
Restrict Access to the Everyone Group
Create appropriate user and group accounts
Set appropriate group access permissions
Configure audit logs to track unauthorized access of files/systems/folders/accounts
Configure patch management or scheduled download and application of the operating
system and security patches
Ensure Wireless Network security is configured properly, including the use of wireless
security protocols
4. Workstation Logons
Screen Locks on all computers
Require passwords on all computers, including screen lock recovery
Consider using two-factor authentication
Harden workstations, removing unnecessary applications and programs
Anti-virus software installed and disable circumnavigating
Ensure anti-virus updates are occurring regularly
Ensure software updates are occurring regularly
Ensure the operating system and security patches are occurring regularly
Pop-up blockers enabled
5. Mobile Devices
An IT security policy or BYOD policy (Bring Your Own Device) needs to be in
place for mobile devices that are used on the network
Enforcement of the mobile device policies needs to be decided on and enforced
Wireless access points need to be secure
6. Network Equipment Security
Configure audit logs to monitor access
Document configuration working configuration settings in case of failure
Document user accounts/passwords for accessing these devices and put them in a safe
place
Make sure that firmware upgrades occur regularly
7. Router/Firewall Security
Use a firewall and make sure that all public-facing services are on a separate network
segment or DMZ (email, FTP, web, for example) for intrusion prevention.
Make sure that all externally sourced IP addresses are not allowed inside the LAN, but
only to the DMZ
Configure firewall policies to deny inbound access to unused ports
Review all firewall policies for potential security risks
Implement network address translation (NAT) where possible
Use stateful packet inspection on the firewall, preventing IP address spoofing and
DOS attacks.
Make sure the router and firewall software is updated regularly
Make sure the router and firewall firmware is updated regularly
Consider having penetration testing performed for further weakness exposure
45
LECTURE 7: OPERATING SYSTEMS SECURITY
Operating system security (OS security) is the process of ensuring OS integrity, confidentiality and
availability.
OS security refers to specified steps or measures used to protect the OS from threats, viruses, worms,
malware or remote hacker intrusions. OS security encompasses all preventive-control techniques, which
safeguard any computer assets capable of being stolen, edited or deleted if OS security is compromised.
i. Authentication
Authentication refers to identifying the each user of the system and associating the executing programs
with those users. It is the responsibility of the Operating System to create a protection system which
ensures that a user who is running a particular program is authentic. Operating Systems generally
identifies/ authenticates users using following three ways:
Username / Password - User need to enter a registered username and password with Operating
system to login into the system.
User card/key - User need to punch card in card slot, or enter key generated by key generator in
option provided by operating system to login into the system.
User attribute - fingerprint/ eye retina pattern/ signature - User need to pass his/her attribute
via designated input device used by operating system to login into the system.
ii. One Time passwords
One time passwords provides additional security along with normal authentication. In One-Time
Password system, a unique password is required every time user tries to login into the system. Once a
one-time password is used then it can not be used again. One time password are implemented in various
ways.
Random numbers - Users are provided cards having numbers printed along with corresponding
alphabets. System asks for numbers corresponding to few alphabets randomly chosen.
Secret key - User are provided a hardware device which can create a secret id mapped with user
id. System asks for such secret id which is to be generated every time prior to login.
Network password - Some commercial applications send one time password to user on
registered mobile/ email which is required to be entered prior to login.
iii. Threats in securing operating systems
Some of the most common types of violations include:
46
Breach of Confidentiality - Theft of private or confidential information, such as credit-card
numbers, trade secrets, patents, secret formulas, manufacturing procedures, medical information,
financial information, etc.
Breach of Integrity - Unauthorized modification of data, which may have serious indirect
consequences. For example a popular game or other program's source code could be modified to
open up security holes on users systems before being released to the public.
Breach of Availability - Unauthorized destruction of data, often just for the "fun" of causing
havoc and for bragging rites. Vandalism of web sites is a common form of this violation.
Theft of Service - Unauthorized use of resources, such as theft of CPU cycles, installation of
daemons running an unauthorized file server, or tapping into the target's telephone or networking
services.
Denial of Service, DOS - Preventing legitimate users from using the system, often by overloading
and overwhelming the system with an excess of requests for service.
47
Trap Door - If a program which is designed to work as required, have a security hole in its code
and perform illegal action without knowledge of user then it is called to have a trap door.
Logic Bomb - Logic bomb is a situation when a program misbehaves only when certain
conditions met otherwise it works as a genuine program. It is harder to detect.
Virus - Virus as name suggest can replicate themselves on computer system .They are highly
dangerous and can modify/delete user files, crash systems. A virus is generatlly a small code
embedded in a program. As user accesses the program, the virus starts getting embedded in other
files/ programs and can make system unusable for user.
Spyware is a version of a Trojan Horse that is often included in "free" software downloaded off
the Internet. Spyware programs generate pop-up browser windows, and may also accumulate
information about the user and deliver it to some central site. ( This is an example of covert
channels, in which surreptitious communications occur. ) Another common task of spyware is to
send out spam e-mail messages, which then purportedly come from the infected user.
vi.
vii. System Threats
System threats refers to misuse of system services and network connections to put user in trouble. System
threats can be used to launch program threats on a complete network called as program attack. System
threats creates such an environment that operating system resources/ user files are mis-used. Following is
the list of some well known system threats.
Worm -Worm is a process which can choked down a system performance by using system
resources to extreme levels.A Worm process generates its multiple copies where each copy uses
system resources, prevents all other processes to get required resources. Worms processes can
even shut down an entire network.
Port Scanning - Port scanning is a mechanism or means by which a hacker can detects system
vulnerabilities to make an attack on the system. Port Scanning is technically not an attack, but
rather a search for vulnerabilities to attack. The basic idea is to systematically attempt to connect
to every known ( or common or possible ) network port on some remote machine, and to attempt
to make contact. Once it is determined that a particular computer is listening to a particular port,
then the next step is to determine what daemon is listening, and whether or not it is a version
containing a known security flaw that can be exploited.
Because port scanning is easily detected and traced, it is usually launched from zombie systems,
i.e. previously hacked systems that are being used without the knowledge or permission of their
rightful owner. For this reason it is important to protect "innocuous" systems and accounts as well
as those that contain sensitive information or special privileges.
Denial of Service - Denial of service attacks normally prevents user to make legitimate use of the
system. For example user may not be able to use internet if denial of service attacks browser's
content settings.
Some of the forms of viruses include:
◦ File - A file virus attaches itself to an executable file, causing it to run the virus code first and then
jump to the start of the original program. These viruses are termed parasitic, because they do not leave
any new files on the system, and the original program is still fully functional.
◦ Boot - A boot virus occupies the boot sector, and runs before the OS is loaded. These are also known
as memory viruses, because in operation they reside in memory, and do not appear in the file system.
◦ Macro - These viruses exist as a macro ( script ) that are run automatically by certain macro-capable
programs such as MS Word or Excel. These viruses can exist in word processing documents or
spreadsheet files.
◦ Source code viruses look for source code and infect it in order to spread.
◦ Polymorphic viruses change every time they spread - Not their underlying functionality, but just their
signature, by which virus checkers recognize them.
48
◦ Encrypted viruses travel in encrypted form to escape detection. In practice they are self-decrypting,
which then allows them to infect other files.
◦ Stealth viruses try to avoid detection by modifying parts of the system that could be used to detect it.
For example the read( ) system call could be modified so that if an infected file is read the infected part
gets skipped and the reader would see the original unadulterated file.
◦ Tunneling viruses attempt to avoid detection by inserting themselves into the interrupt handler chain,
or into device drivers.
◦ Multipartite viruses attack multiple parts of the system, such as files, boot sector, and memory.
◦ Armored viruses are coded to make them hard for anti-virus researchers to decode and understand. In
addition many files associated with viruses are hidden, protected, or given innocuous looking names
such as "...".
In 2004 a virus exploited three bugs in Microsoft products to infect hundreds of Windows servers
( including many trusted sites ) running Microsoft Internet Information Server, which in turn
infected any Microsoft Internet Explorer web browser that visited any of the infected server sites.
One of the back-door programs it installed was a keystroke logger, which records users
keystrokes, including passwords and other sensitive information.
There is some debate in the computing community as to whether a monoculture, in which nearly
all systems run the same hardware, operating system, and applications, increases the threat of
viruses and the potential for harm caused by them.
1.
2. Password Vulnerabilities
Passwords can be guessed.
◦ Intelligent guessing requires knowing something about the intended target in specific, or
about people and commonly used passwords in general.
◦ Brute-force guessing involves trying every word in the dictionary, or every valid
combination of characters. For this reason good passwords should not be in any
dictionary ( in any language ), should be reasonably lengthy, and should use the full range
of allowable characters by including upper and lower case characters, numbers, and
special symbols.
"Shoulder surfing" involves looking over people's shoulders while they are typing in their
password.
◦ Even if the lurker does not get the entire password, they may get enough clues to narrow
it down, especially if they watch on repeated occasions.
◦ Common courtesy dictates that you look away from the keyboard while someone is
typing their password.
◦ Passwords echoed as stars or dots still give clues, because an observer can determine how
many characters are in the password. :-(
"Packet sniffing" involves putting a monitor on a network connection and reading data contained
in those packets.
◦ SSH encrypts all packets, reducing the effectiveness of packet sniffing.
◦ However you should still never e-mail a password, particularly not with the word
"password" in the same message or worse yet the subject header.
◦ Beware of any system that transmits passwords in clear text. ( "Thank you for signing up
for XYZ. Your new account and password information are shown below". ) You probably
want to have a spare throw-away password to give these entities, instead of using the
same high-security password that you use for banking or other confidential uses.
3. Protected Objects
The rise of multiprogramming meant that several aspects of a computing system required protection.
memory
sharable I/O devices, such as disks
49
serially reusable I/O devices, such as printers and tape drives
sharable programs and subprocedures
networks
sharable data
As it assumed responsibility for controlled sharing, the operating system had to protect these objects.
4.
5. Security Methods of Operating Systems
The basis of protection is separation: keeping one user's objects separate from other users. Separation in
an operating system can occur in several ways.
Physical separation , in which different processes use different physical objects, such as separate
printers for output requiring different levels of security
Temporal separation , in which processes having different security requirements are executed at
different times
Logical separation , in which users operate under the illusion that no other processes exist, as
when an operating system constrains a program's accesses so that the program cannot access
objects outside its permitted domain
Cryptographic separation , in which processes conceal their data and computations in such a way
that they are unintelligible to outside processes
Combinations of two or more of these forms of separation are also possible.
The first two approaches are very stringent and can lead to poor resource utilization. Therefore, we
would like to shift the burden of protection to the operating system to allow concurrent execution of
processes having different security needs.
There are several ways an operating system can assist, offering protection at any of several levels.
Do not protect . Operating systems with no protection are appropriate when sensitive procedures
are being run at separate times.
Isolate . When an operating system provides isolation, different processes running concurrently
are unaware of the presence of each other. Each process has its own address space, files, and other
objects. The operating system must confine each process somehow, so that the objects of the
other processes are completely concealed.
Share all or share nothing . With this form of protection, the owner of an object declares it to be
public or private. A public object is available to all users, whereas a private object is available
only to its owner.
Share via access limitation . With protection by access limitation, the operating system checks the
allowability of each user's potential access to an object. That is, access control is implemented for
a specific user and a specific object.
Share by capabilities . An extension of limited access sharing, this form of protection allows
dynamic creation of sharing rights for objects. The degree of sharing can depend on the owner or
the subject, on the context of the computation, or on the object itself.
Limit use of an object . This form of protection limits not just the access to an object but the use
made of that object after it has been accessed. For example, a user may be allowed to view a
sensitive document, but not to print a copy of it. More powerfully, a user may be allowed access
to data in a database to derive statistical summaries (such as average salary at a particular grade
level), but not to determine specific data values (salaries of individuals).
These modes of sharing are arranged in increasing order of difficulty to implement, but also in increasing
order of fineness of protection they provide.
A given operating system may provide different levels of protection for different objects, users, or
situations.
50
2.
3. Memory and Address Protection
Preventing one program from affecting the memory of other programs.
Protection can be built into the hardware mechanisms that control efficient use of memory, so that solid
protection can be provided at essentially no additional cost.
1.
2. Fence
The simplest form of memory protection was introduced in single-user operating systems, to prevent
a faulty user program from destroying part of the resident portion of the operating system. As its
name implies, a fence is a method to confine users to one side of a boundary.
Another implementation used a hardware register, often called a fence register , containing the
address of the end of the operating system. In contrast to a fixed fence, in this scheme the location of
the fence could be changed. Each time a user program generated an address for data modification, the
address was automatically compared with the fence address. If the address was greater than the fence
address (that is, in the user area), the instruction was executed; if it was less than the fence address
(that is, in the operating system area), an error condition was raised.
3.
4. Relocation
If the operating system can be assumed to be of a fixed size , programmers can write their code assuming
that the program begins at a constant address. This feature of the operating system makes it easy to
determine the address of any object in the program.
It also makes it essentially impossible to change the starting address if, for example, a new version of the
operating system is larger or smaller than the old. If the size of the operating system is allowed to change,
then programs must be written in a way that does not depend on placement at a specific location in
memory.
5.
6. Base/Bounds Registers
With two or more users, none can know in advance where a program will be loaded for execution.
The relocation register solves the problem by providing a base or starting address.
All addresses inside a program are offsets from that base address.
A variable fence register is generally known as a base register .
7.
8. Segmentation
Segmentation , involves the dividing a program into separate pieces. Each piece has a logical unity,
exhibiting a relationship among all of its code or data values.
Segmentation allows a program to be divided into many pieces having different access rights.
This hiding of addresses has three advantages for the operating system.
1. The operating system can place any segment at any location or move any segment to any location,
even after the program begins to execute. Because the operating system translates all address
references by a segment address table, the operating system needs only to update the address in that
one table when a segment is moved.
2. A segment can be removed from main memory (and stored on an auxiliary device) if it is not being
used currently.
3. Every address reference passes through the operating system, so there is an opportunity to check each
one for protection.
Segmentation offers these protective benefits.
Each address reference is checked for protection.
Many different classes of data items can be assigned different levels of protection.
Two or more users can share access to a segment, with potentially different access rights.
A user cannot generate an address or access to an unpermitted segment.
51
4.
5. Control of Access to General Objects
Protecting memory is a specific case of the more general problem of protecting objects . As
multiprogramming has developed, the numbers and kinds of objects shared have also increased.
Examples of the kinds of objects for which protection is desirable:
1. memory
2. a file or data set on an auxiliary storage device
3. an executing program in memory
4. a directory of files
5. a hardware device
6. a data structure, such as a stack
7. a table of the operating system
8. instructions, especially privileged instructions
9. passwords and the user authentication mechanism
10. the protection mechanism itself
The memory protection mechanism can be fairly simple because every memory access is guaranteed to go
through certain points in the hardware. With more general objects, the number of points of access may be
larger, a central authority through which all accesses pass may be lacking, and the kind of access may not
simply be limited to read, write, or execute.
There are several complementary goals in protecting objects.
Check every access . We may want to revoke a user's privilege to access an object. If we have
previously authorized the user to access the object, we do not necessarily intend that the user
should retain indefinite access to the object.
Enforce least privilege . The principle of least privilege states that a subject should have access to
the smallest number of objects necessary to perform some task. Even if extra information would
be useless or harmless if the subject were to have access, the subject should not have that
additional access.
Verify acceptable usage . Ability to access is a yes-or-no decision. But it is equally important to
check that the activity to be performed on an object is appropriate.
1. Directory
One simple way to protect an object is to use a mechanism that works like a file directory.
Every file has a unique owner who possesses "control" access rights (including the rights to declare
who has what access) 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.
Several difficulties can arise.
The list becomes too large if many shared objects, such as libraries of subprograms or a common table
of users, are accessible to all users.
The directory of each user must have one entry for each such shared object, even if the user has no
intention of accessing the object.
Deletion must be reflected in all directories.
2.
4.
52
LECTURE 8: DATABASE SECURITY
A database is a collection of data and a set of rules that organize the data by specifying certain
relationships among the data.
A database administrator is a person who defines the rules that organize the data and also controls who
should have access to what parts of the data.
The user interacts with the database through a program called a database manager or a database
management system ( DBMS ), informally known as a front end.
Security Requirements
The following is a list of requirements for database security.
Physical database integrity . The data of a database are immune to physical problems, such as power
failures, and someone can reconstruct the database if it is destroyed through a catastrophe.
Logical database integrity . The structure of the database is preserved. With logical integrity of a
database, a modification to the value of one field does not affect other fields, for example.
Element integrity . The data contained in each element are accurate.
Auditability . It is possible to track who or what has accessed (or modified) the elements in the
database.
Access control . A user is allowed to access only authorized data, and different users can be restricted
to different modes of access (such as read or write).
User authentication . Every user is positively identified, both for the audit trail and for permission to
access certain data.
Availability . Users can access the database in general and all the data for which they are authorized.
53
Integrity of the Database
If a database is to serve as a central repository of data, users must be able to trust the accuracy of the data
values.
This condition implies that the database administrator must be assured that updates are performed
only by authorized individuals.
It also implies that the data must be protected from corruption, either by an outside illegal program
action or by an outside force such as fire or a power failure.
Two situations can affect the integrity of a database:
when the whole database is damaged
when individual data items are unreadable.
It is important to be able to reconstruct the database at the point of a failure. For instance, when the power
fails suddenly, a bank's clients may be in the middle of making transactions or students may be in the
midst of registering online for their classes.
The DBMS must maintain a log of transactions. In the event of a system failure, the system can obtain
accurate account balances by reverting to a backup copy of the database and reprocessing all later
transactions from the log.
Element Integrity
The integrity of database elements is their correctness or accuracy. Authorized users are responsible for
entering correct data in databases. However, users and programs make mistakes collecting data,
computing results, and entering values.
DBMSs sometimes take special action to help catch errors as they are made and to correct errors after
they are inserted.
This corrective action can be taken in three ways.
5. The DBMS can apply field checks, activities that test for appropriate values in a position. A field
might be required to be numeric, an uppercase letter, or one of a set of acceptable characters . The
check ensures that a value falls within specified bounds or is not greater than the sum of the values in
two other fields. These checks prevent simple errors as the data are entered.
6. Provided by access control. Data files may contain data from several sources, and redundant data may
be stored in several different places.
7. Means of providing database integrity is maintaining a change log for the database. A change log lists
every change made to the database; it contains both original and modified values. Using this log, a
database administrator can undo any changes that were made in error.
Auditability
For some applications it may be desirable to generate an audit record of all access (read or write) to a
database.
Such a record can help to maintain the database's integrity, or at least to discover after the fact who
had affected what values and when.
Users can access protected data incrementally; that is, no single access reveals protected data, but a
set of sequential accesses viewed together reveals the data, much like discovering the clues in a
detective novel . In this case, an audit trail can identify which clues a user has already been given, as a
guide to whether to tell the user more.
it is possible for a record to be accessed but not reported to a user, as when the user performs a select
operation.
Access Control
Databases are often separated logically by user access privileges.
Limited access is both a responsibility and a benefit of this centralization.
54
The database administrator specifies who should be allowed access to which data, at the view, relation,
field, record, or even element level.
The DBMS must enforce this policy, granting access to all specified data or no access where prohibited .
Restricting inference may mean prohibiting certain paths to prevent possible inferences. Restricting
access to control inference also limits queries from users who do not intend unauthorized access to values.
Moreover, attempts to check requested accesses for possible unacceptable inferences may actually
degrade the DBMS's performance.
User Authentication
The DBMS can require rigorous user authentication. A DBMS might insist that a user pass both specific
password and time-of-day checks. This authentication supplements the authentication performed by the
operating system.
Availability
A DBMS has aspects of both a program and a system. It is a program that uses other hardware and
software resources, yet to many users it is the only application run. Users often take the DBMS for
granted, employing it as an essential tool with which to perform particular tasks .
Integrity/Confidentiality/Availability
The three aspects of computer security ”integrity, confidentiality, and availability ”clearly relate to
database management systems.
integrity is a major concern in the design of database management systems.
Confidentiality is a key issue with databases because of the inference problem, whereby a user can
access sensitive data indirectly. Inference and access control are covered later in this chapter.
Availability is important because of the shared access motivation underlying database development.
However, availability conflicts with confidentiality. The last sections of the chapter address
availability in an environment in which confidentiality is also important.
55
Sensitive in relation to previously disclosed information. Some data become sensitive in the presence
of other data. For example, the longitude coordinate of a secret gold mine reveals little, but the
longitude coordinate in conjunction with the latitude coordinate pinpoints the mine.
All of these factors must be considered to determine the sensitivity of the data.
Multilevel Databases
So far, we have considered data in only two categories: either sensitive or nonsensitive.
Sensitivity is determined not just by attribute but also in ways that we investigate below.
Separation
Separation is necessary to limit access. These mechanisms can help to implement multilevel security for
databases.
Partitioning
The database is divided into separate databases, each at its own level of sensitivity. This approach is
similar to maintaining separate files in separate file cabinets .
This control destroys a basic advantage of databases: elimination of redundancy and improved accuracy
through having only one field to update.
It does not address the problem of a high-level user who needs access some low-level data combined with
high-level data.
Nevertheless, because of the difficulty of establishing, maintaining, and using multilevel databases, many
users with data of mixed sensitivities handle their data by using separate, isolated databases.
Encryption
If sensitive data are encrypted, a user who accidentally receives them cannot interpret the data. Thus, each
level of sensitive data can be stored in a table encrypted under a key unique to the level of sensitivity.
Integrity Lock
The lock is a way to provide both integrity and limited access for a database.
56
Summary of Database Security
This lecture has addressed three aspects of security for database management systems: confidentiality and
integrity problems specific to database applications, the inference problem for statistical databases, and
problems of including users and data of different sensitivity levels in one database.
Both confidentiality and integrity are important to users of databases.
Confidentiality can be broken by indirect disclosure of a negative result or of the bounds of a value.
Integrity of the entire database is a responsibility of the DBMS software; this problem is handled by most
major commercial systems through backups , redundancy, change logs, and two-step updates. Integrity of
an individual element of the database is the responsibility of the database administrator, who defines the
access policy.
Multilevel secure databases must provide both confidentiality and integrity. Separation can be
implemented physically, logically, or cryptographically .
The five approaches to assuring confidentiality in multilevel secure databases:
integrity lock,
trusted front end,
commutative filters,
distributed databases, and
restricted views.
But the analysis of the problems and the derivation of techniques are typical of how we analyze security
needs in any software application.
Exercise
Discuss emerging trends in Information security.
57