Secruity
Definition
information systems security can be defined as the combination of availability, confidentiality, and integrity, focused on the recognition and resistance of attacks.
Computer crimes use some form of gaining control over IT infrastructures
Preventing information being leaked or changed, preventing actions that system will take from doing something unwanted, preventing application from not working or working below standards
Reasons for commiting coputer crimes
Personal exposure and prestige
Creating damage
create bad publicity for company
defacing websites, bringing down systems or websites, or making internal documents public.
Financial gain.
by holding data hostage and asking for ransom, stealing credit card data, changing account data in bank systems, or stealing passwords of customers and ordering goods on their behalf.
Terrorism
creating fear and chaos in a society
controlling water supply or nuclear plants
Warfare
Hacking over country's systems for intel or damage
Risk Management
Managing security is all about managing risks.
If there are no risks, we don't need any security controls.
The effort we put in securing the infrastructure should therefore be directly related to the risk at hand
Definition
Risk management is the process of
determining an acceptable level of risk
assessing the current level of risk
taking steps to reduce risk to the acceptable level
maintaining that level.
A risk list can be used to quantify risks
Created with help of stakeholders
Definesthe following
asset: the component that needs to be protected.
vulnerability: a weakness, process or physical exposure that makes the asset susceptible to exploits
exploit: a way to use one or more vulnerabilities to attack an asset
probability: an estimation of the likelihood of the occurrence of an exploit (how often do we estimate this will happen)
Impact: he severity of the damage when the vulnerability is exploited.
Risk: The probablity x impact
Controls mitigate these risks.
Example: a control for the risk of laptops with sensitive data getting stolen is to encrypt the hard disk to make the data unreadable for anyone but the owner.
Controls can be designed and implemented based on the identified severity of the risk in the risk list.
Risk Response
Definition
An agreed upon response to each risk decided by senior management
Types of risk
Acceptance of risk
the risk could be accepted if the risk is very unlikely to happen and the costs of the damage imposed by exploitation of the risk is low and the cost of mitigating the risk is high.
Avoidance of risk
do not perform actions that impose risk
for instance, don’t host your own website or e-mail server
Transfer of risk
transfer the risk to an insurance company, if it happens, the insurance company will pay for the damage
Mitgation of risk and accepting the residual risk
How
Design for minimum risk
Design the system to eliminate as much vulnerabilities as possible.
Example
Using source code analysis in software development
by running critical systems stand-alone instead of connected to other systems
Incorporate safety devices
Reduce risk using devices like firewalls and hardened screened routers.
Dont affect the probabilty of exploit occuring, but reduces severity of the exploit
ie automobile seat belt doesn’t prevent a collision,
ie firewall oes not prevent attacks, but reduces the chance of an attacker connecting to sensitive parts of the network.
Provide warning devices
used to detect an undesirable condition, and to alert staff, or take automated actions.
Intrusion Detection System that alerts systems managers when a system is under attack
Implement training and procedures.
Exploits
Types of explouting a system
Key loggers can be maliciously installed on end user devices.
They can send sensitive information like passwords to third parties.
Someone needs to install it on the box either physically or via ssh/network using authenticated access
Network sniffers can show network packages that contain sensitive information or replay a logon sequence by which a hacker can successfully authenticate to an IT system.
wireshark
man in the middle attack
Use of https & tls to encrypt data over the wire
Data on backup tapes outside of the building can get into wrong hands.
Or extracting data via portable device (ie usb stick)
PCs or disks that are disposed of can get into the wrong hands
End users are led to a malicious website that steals information
phishing
Use of access logs, to show actions of all users
some alerting for certain actions
Secruity controls
Three goals of secruity (CIA)
Confidentiality
prevents the intentional or unintentional unauthorized disclosure of data.
Examples of levels
1 = Public information
2 = Information for internal use only
3 = for internal use by restricted groups
4 = secret, reputationla damage if leaked to public
5 = top secret, damage to organisation ro society if leaked
Integrity
Ensures
No modifications to data are made by unauthorized staff or processes.
Unauthorized modifications to data are not made by authorized staff or processes.
Data is consistent
Examples of levels
1 = integrity is of no importnance
2 = errors in info are allowed
3 = only incidental erros in information are allowed
4 = no errors allowed, leads to reputational damage
5 = no errors allowed, leads to society damage
Availability of information
ensures the reliable and timely access to data or IT resources by the appropriate staff
Examples of levels
1 = no requirements on availability
2 = some unavailability is allowed during office hours
3 = some unavailability is allowed outside office hours
4 = no unavailability is allowed risk to company damage
5 = no unavailability is allowed risk to society damage
For all applications and data set, a CIA classification should be given
using the levels above
Once levels given,then controls can be implemented to mitigate the identified risks
Auditors can see how risk is controlled
project manages can calculate effort needed to make system secrure
Attack vectors
Attacks on the infrastructure can be executed using
malicious code
are applications that, when activated, can cause network and server overload, steal data and passwords, or erase data.
Types
Worms
are self-replicating programs that spread from one computer to another, leaving infections as they travel.
A virus
is a self-replicating program fragment that attaches itself to a program or file enabling it to spread from one computer to another, leaving infections as it travels
Trojan Horse
Some software that appears to be useful software but will actually do damage once installed or run on your computer
Users are usually tricked into starting them because they appear to be receiving legitimate software or files from a legitimate source. Trojan horses can be used to deliver viruses or worms.
Most malicious code can be detected and removed by virus scanners.
Detecting viruses is mostly done using a so-called virus signature– a unique string of bits that identifies a part of the virus. When a file contains this signature, it is assumed that the file is infected with the viral code.
Heuristic scanning looks for certain instructions or commands within a program or script that are not found in typical applications
denial of service attacks
A Denial of Service (DoS) attack is an attempt to overload an infrastructure to cause disruption of a service
his overload can lead to downtime of a system, disabling an organization to do its business.
How
an attacker fires off a large number of (often malformed) requests to a server reachable from the internet
Because of the high load the server needs to process, or because the requests fill up the request queues, the server either crashes, or performs so slow that in effect it is not functioning anymore.
Distributed Denial of Service (DDoS) attack is used, as more than one server is used and cannot be brought down using dos attakcs
can use groups of computers that are infected by malicious code, called botnets, to perform an attack.
To prevent
Split business and public resources so that in case of an attack the business processes are not effected
Move all public facing resources to an external cloud provider
Setup automatic scalability (auto scaling, auto deployment) using virtualization and cloud technology
Limit bandwidth for certain traffic – for instance limit the bandwidth or the maximum number of calls per second on ports 53 (DNS)
as increased spike in traffic is a sign of dos
Lower the Time to Live (TTL) of the DNS records to be able to reroute traffic to other servers when an attack occurs
Setup monitoring for early detection on:
Traffic volume
Source and number of requests
Transaction latency
When it occurs:
Immediately inform your internet provider and ask for help
Run a script to terminate all connections coming from the same source IP address if the number of connections is larger than ten
Change to an alternative server with another IP address
Scale-out the public facing environment under attack
Reroute or drop suspected traffic
Use of CDN can be used to route traffic to your website
social engineering
social skills are used to manipulate people to obtain information, such as passwords or other sensitive information, which can be used in an attack.
Use of cognitive biases
phishing
a technique of obtaining sensitive information.
Typically, the phisher sends an e-mail that appears to come from a legitimate source, like a bank, requesting "verification" of information.
The e-mail usually contains a link to a fraudulent web page that seems legitimate, with a form that captures your sensitve data like passwords, pins etc
Baiting
uses physical media, like an USB flash drive, and relies on the curiosity of people to find out what is on it.
The media is infected
Turn off auto run
Secruity Patterns
Identity and Access Management (IAM)
the process of managing the identity of people and systems, and their permissions
STeps
Users or systems claim who they are:
identification – they provide their identity, typically their name.
The claimed identity is checked:
authentication – identities provide for instance a password, which is checked
Permissions are granted related to the identity and the groups it belongs to:
authorization – identities are allowed into the system
Connecting identities and their permissions
ie the kernel of an operating system owns an administration of users and a list of user rights that describes which identities are allowed to read, write, modify, or delete files. Trusted Computing Base (TCB)
USed in apps, database and systems
Single Sign-On (SSO), a user logs in once and is passed seamlessly, without an authentication prompt, to SSO enabled applications.
risk when the login credentials of a user are known, an attacker gains access to all SSO enabled systems for that user.
SSO is typically implemented using identity providing systems like LDAP, Kerberos, or Microsoft Active Directory.
Users authenticate to these identity providers, and applications trust the identity provider, so they allow access when a user is authenticated
Federated identity management extends SSO above the enterprise level, creating a trusted identity provider across organizations.
participating organizations share identity attributes based on agreed-upon standards, facilitating authentication from other members of the federation and granting appropriate access to systems
users can be authenticated in one of three ways:
Something you know, like a password or PIN
Many systems only use a username/password combination
Something you have, like a bank card, a token or a smartphone
Something you are, like a fingerprint or an iris scan
systems use multi-factor authentication, where at least two types of authentication are required
n ATM machine, where both a bank card is needed (something you have) and a PIN (something you know)
Role Based Access Control (RBAC) model
identities are members of one or more groups (typically related to their roles in the organization) and, instead of granting permissions to individual identities, groups are granted permissions. And since groups can be nested (a group is member of another group)
Segregation of duties and least privilege
Also known as separation of duties
assigns related sensitive tasks to different people or departments.
The reasoning is that if no single person has total control of the system’s security mechanisms, no single person can compromise the system
ie Vault, cannot access system as root unless x number keys are used
principle of least privilege.
that users of a system should have the lowest level of privileges necessary to perform their work, and should only have them for the shortest length of time.
In many organizations, a systems manager has full control of the system’s administration and security functions.
bad idea
Security tasks should not automatically be given to the systems manager.
In secure systems, multiple distinct administrative roles should be configured, like a security manager, a systems manager, and a super user.
The security manager, systems manager, and super user may not necessarily be different people (but this would be preferred of course).
these roles are controlled, logged, and audited
a two-man control policy can be applied, in which two systems managers must review and approve each other’s work.
minimize fraud or mistakes in highly sensitive or high-risk transactions.
Layered Security
also known as a Defense-In-Depth strategy
to implement security measures in various parts of the IT infrastructure
comparable with physical security
place as many different barriers to cross
each barrier requires differetn skills
Increase time to break down barriers, increase risk of detection
Number of barriers should be unknown (or changing)
All barriers are independet, when one is crossed the others remain intact or if it has a vulnerability
Each layer can be integrated with an Intrusion Detection System
A disadvantage of implementing layered security is that it increases the complexity of the system.
Every security layer must be managed, and systems managers must have knowledge about all used technologies
a risk if they are compromised
Cryptography
the practice of hiding information using encryption and decryption techniques.
Encryption is the conversion of information from a readable state to apparent random data.
Only the receiver has the ability to decrypt this data, transforming it back to the original information
A cipher is a pair of algorithms that implements the encryption and decryption process.
The operation of a cipher is controlled by a key.
The key is a secret onlyknown by the sender and receiver
Two types of ciphers:
block ciphers
takes as input a block of plaintext and a key, and outputs a block of cipher text.
popular ones The Data Encryption Standard (DES) and the Advanced Encryption Standard (AES)
DES is deprecated, more secure is triple DES
uses
ATM machine data encryption to e-mail privacy and secure remote access
stream ciphers
create an arbitrarily long stream of key material, which is combined with the plaintext bit-by-bit or character-by-character.
used when data is in transit using a network
the output stream is created based on a hidden internal state which changes as the cipher operates. That internal state is initially set up using a secret key. RC4 is a widelyused stream cipher.
Symmetric key encryption
Symmetric key encryption is an encryption method where both the sender and receiver share the same key.
example
X sends a file to Y and encrypts it before sending using a cipher and a secret shared key. Upon receiving the file, Y’s cipher decrypts the data stream using the same key, leading to the original file. Both ciphers use the same secret shared key, only known by X and Y
disadvantage
the key management necessary to use them securely. Each pair of communicating parties must share a different key.
The number of keys increases exponentially with number of users
The difficulty of securely establishing a secret key between two communicating parties, when a secure channel does not already exist between them, also presents a chicken-and-egg problem.
Asymmetric key encryption
two different but mathematically related keys are used: a public key and a private key.
The public key may be freely distributed and is for instance published on the organization’s website. Its paired private key must remain secret by the organization
Example
X sends a file to Y and encrypts it before sending using a cipher and Y’s public key. The encrypted file can only be decrypted using Y’s private key (which must be kept a secret to everyone but Y). Upon receiving the file, Y’s cipher decrypts the data using his private key, leading to the original file.
When Y wants to send a file to X, X’s public and private keys are used
disadvantage
very slow process
it is mostly used to setup a channel between two parties, to safely exchange a new, temporary symmetric key,
After exchanging symmetric keys, the rest of the communication is done using much faster symmetric key encryption.
Commona algorithms
Diffie–Hellman and RSA algorithms
Hash functions and digital signatures
Hash functions take some piece of data, and output a short, fixed length text string (the hash) that is unique for that piece of data and which can be used to validate the integrity of the data
practically impossible to find two pieces of data that produce the same hash
If the hash of a piece of data is known, and the hash is recalculated later and it matches the original hash, the data must be unaltered
The length of this hash will not grow, even if the input for the hash function is increases
Popular hash functions
MD5, SHA1 and SHA512
To create a digital signature, a hash is created of some text (like an e-mail) and encrypted with the private key of the sender
The receiver decrypts the hash key using the sender's public key.
The receiver also calculates the hash of the text and compares it with the decrypted hash to ensure the text wasn't tampered with
Since the hash was encrypted using a private key, it is guaranteed that the hash was created by the owner of the private key
Used
network security schemes (like SSL/TLS and many VPNs
Cryptographic attacks
It is scientifically proven that a so-called one-time pad cipher is unbreakable, provided the key material is truly random, never reused, kept secret from all possible attackers, and of equal or greater length than the message.
Very impractical
as the key must be exchanged between sender and receiver in a safe way, and the key has the same length as the data to be transferred. So, you might as well exchange the data in a safe way instead of the key.
brute force attack
Most ciphers, apart from the one-time pad, can be broken given enough computational effort
consists of systematically checking all possible keys until the correct key is found.
The amount of effort needed, however, is usually exponentially dependent on the size of the key
Effective security could be achieved if it is proven that no efficient method (as opposed to the time consuming brute force method) can be found to break the cipher.
Most successful attacks are based on flaws in the implementation of an encryption cipher.
You should not do create own chipher
use open source ciphers
Last updated
Was this helpful?