CIS_4520_Exam_Review_Topics_Summary
CIS_4520_Exam_Review_Topics_Summary
The primary objectives of information and network security are to ensure that data, devices, and
services are protected against unauthorized access and harm. These objectives are
encapsulated in the following principles:
1. Passive Attacks:
● Description: In a passive attack, the attacker intercepts data traveling through
the network but does not alter the content of the data. The goal is typically to
gather information that is being transmitted.
● Examples:
● Eavesdropping or sniffing: Listening to private conversations or reading
confidential data.
● Traffic analysis: Analyzing the flow of packets to predict the nature of
communication, locations, or identities of communicating hosts.
● Violations of Security Services:
● Confidentiality: Since passive attacks primarily involve observation or
data analysis, the main security service violated is confidentiality.
2. Active Attacks:
● Description: In active attacks, the attacker injects or alters data to disrupt normal
operations or to stage more serious attacks such as executing unauthorized
commands.
● Examples:
● Masquerade (Spoofing): Pretending to be another user to gain
unauthorized access.
● Replay Attacks: Re-transmitting valid data repeatedly to disrupt services
or gain unauthorized access.
● Modification of Messages: Altering the actual content of messages sent
from one person to another.
● Denial of Service (DoS): Intentionally overwhelming a network or system
to prevent legitimate use.
● Violations of Security Services:
● Integrity and Availability: These attacks aim to corrupt or obliterate data
and interrupt services, impacting both integrity and availability.
● Authentication and Non-repudiation: By impersonating users or
modifying data, attackers compromise authentication and non-repudiation
measures.
INTRODUCTION TO CRYPTOGRAPHY
Perfect Secrecy
● Definition: A cryptosystem has perfect secrecy if the ciphertext does not reveal any
information about the plaintext.
● Testing Perfect Secrecy: If the probability distribution of the plaintext is independent of
the distribution of the ciphertext, the system is perfectly secure.
One-time Pad
● Construction: Generated randomly and should be as long as the message needing
encryption.
● XOR Operation: Each bit of the plaintext is XORed with the corresponding bit of the key
to produce the ciphertext.
● Perfect Secrecy: Achieved because the ciphertext is random if the key is truly random
and used only once.
● Pros and Cons:
● Pros: Unbreakable when used correctly.
● Cons: Practical implementation issues such as key distribution and storage,
making it less feasible for general use.
Substitution-Permutation Networks
● General Structure: SPNs are a method of designing block ciphers by combining both
substitution (replacing bits, bytes, or blocks of input with different bits, bytes, or blocks)
and permutation (rearranging the bits or bytes of input). This process usually involves
several rounds of substitution and permutation to enhance security.
● Purpose: The structure provides diffusion and confusion which are essential properties
of secure encryption. Diffusion spreads the influence of a single plaintext bit over many
ciphertext bits to hide statistical properties of the plaintext. Confusion makes the
relationship between the ciphertext and the symmetric key as complex as possible.
Modes of Encryption
● ECB (Electronic Codebook)
● Pros: Simple, parallelizable.
● Cons: Identical plaintext blocks are encrypted into identical ciphertext blocks; not
suitable for data longer than one block.
● CBC (Cipher Block Chaining)
● Pros: Each block of plaintext is XORed with the previous ciphertext block before
being encrypted.
● Cons: Not parallelizable; an error in one block affects subsequent blocks.
● CFB (Cipher Feedback)
● Pros: Turns a block cipher into a stream cipher; errors do not propagate.
● Cons: Slightly more complex; sequential operations hinder parallelization.
● OFB (Output Feedback)
● Pros: Turns a block cipher into a stream cipher; errors do not propagate.
● Cons: Requires synchronization of feedback operation between sender and
receiver.
● CTR (Counter)
● Pros: Encrypts counters rather than plaintext or ciphertext, allowing for
parallelization.
● Cons: Requires a secure counter value that should never be reused.
● Protecting Message Integrity with MACs: A MAC is used to verify the integrity and
authenticity of a message. It is attached to the message and verified at the receiver
using the same secret key to detect any changes or tampering.
Basic Concepts
● Public Key Encryption: Uses a public key for encryption and a private key for
decryption.
● Digital Signatures: Uses a private key to sign and a public key to verify.
RSA Cryptosystem
● Key Generation: Large prime numbers are selected and multiplied to form a modulus
for both keys. The public key exponent is chosen, and the private key exponent is
computed to be the modular inverse of the public key exponent.
● Encryption/Decryption: Messages are raised to the power of the public or private
exponent modulo the large prime product.
● Vulnerabilities: Textbook RSA is vulnerable to a range of attacks, including chosen
plaintext attacks if padding schemes are not used.
KEY MANAGEMENT
● KDCs distribute session keys to parties that have shared secret keys established during
an initial registration phase with the KDC. For instance, in Kerberos, the KDC provides
tickets that include session keys for secure communication.
● CAs distribute public keys embedded in digital certificates. They validate the identity of
the certificate requester before issuing a certificate. This ensures that the public key
belongs to the entity it claims to represent.
Information in Tickets/Certificates:
● Ticket (Kerberos): Includes the client's ID, network address, ticket validity period, and a
session key, all encrypted with the server's secret key.
● Certificate (CA): Includes the public key, certificate owner’s name, the CA’s name, the
digital signature of the CA, and the certificate's period of validity.
Diffie-Hellman relies on the difficulty of solving the discrete logarithm problem to secure the key
exchange against eavesdroppers. An eavesdropper would need to determine the private key
from the public key and shared parameters, which is computationally infeasible with sufficiently
large key sizes.
If an attacker can intercept and alter public keys sent between the communicating parties, they
can insert their own keys, masquerade as both sender and receiver, and decrypt or manipulate
messages.
Mitigation Strategies:
To protect against man-in-the-middle attacks, parties should authenticate each other's public
keys. This can be achieved through digital signatures and certificates issued by trusted CAs.
● To validate a certificate chain, each certificate’s issuer's public key is used to verify the
digital signature of the next certificate, ensuring all certificates in the chain are valid and
trusted.
AUTHENTICATION
● Replay Attack: An attacker captures a valid data transmission and retransmits it.
Defense: Use timestamps and nonce values that are checked for freshness.
● Man-in-the-Middle Attack: An attacker intercepts messages between two parties
without their knowledge. Defense: Employ end-to-end encryption and validate public
keys through trusted CAs.
KERBEROS V4/V5
● Key Distribution Center (KDC): Central authority that provides temporary session keys
and tickets to users. It has two parts: the Authentication Server (AS) and the Ticket
Granting Server (TGS).
● Long-term Authentication Key: Derived from the user's password and stored on both
the client machine and the KDC.
● Session Key: Temporary key issued by the KDC, used to encrypt communications
during a login session.
● Ticket: A time-stamped, encrypted block of data that proves the user’s identity to other
machines on the network.
● Ticket-Granting Ticket (TGT): Issued by the AS when a user first authenticates, used
to obtain further service-specific tickets from the TGS.
● Authenticator: A piece of data that proves its creator’s identity, typically includes the
client’s ID and timestamp, encrypted with the session key.
● Credential: Includes tickets and associated session keys provided to the client for
accessing various network services securely.
IPSec
Motivation of IPSec:
IPSec is designed to protect communications over IP networks by authenticating and encrypting
each IP packet of a communication session. The primary motivation is to defend against various
IP-level attacks such as:
Operation Modes:
● Transport Mode: Encrypts only the payload of the IP packet, not the header. Suitable
for end-to-end communications between a client and server.
● Tunnel Mode: Encrypts both the payload and the header. Used for network-to-network
communications (e.g., between gateways) or from end-to-host communications, such as
remote user access to a corporate network.
● AH: Adds a new header between the IP header and the payload, providing integrity and
authentication but leaves some parts of the IP header unprotected.
● ESP: Encapsulates the original packet, encrypts it, and adds a new header and trailer to
the packet for handling security processing.
SSL/TLS
Mechanisms Used:
FIREWALLS
Types of Firewalls
1. Stateless Packet Filtering Firewall
● Functionality: This type of firewall examines each incoming packet and decides
whether to allow it through based on a set of established rules. It does this
without regard to the packets that have passed before; each packet is processed
in isolation.
● Advantages: Fast processing as it does not keep track of state information.
● Disadvantages: Less secure compared to stateful firewalls as it does not
recognize packet patterns or data streams associated with known attacks.
2. Stateful Packet Filtering Firewall
● Functionality: Unlike stateless firewalls, stateful firewalls keep track of the state
of network connections (such as TCP streams) and can make decisions based
on the context provided by this state. This allows them to recognize and block
packets that are part of a previously established connection.
● Advantages: Greater security by monitoring the state of active connections and
blocking packets that deviate from expected patterns.
● Disadvantages: Slower processing compared to stateless filtering due to the
overhead of tracking connection states.
3. Application-Level Firewall (also known as a Proxy Firewall)
● Functionality: These firewalls work at the application layer of the OSI model,
inspecting the data being sent and received through applications to ensure it
complies with the protocol standards. They can filter traffic based on specific
application data contained in the packets.
● Advantages: Provides a deep level of inspection and can prevent a wide range
of exploits by understanding the specifics of application protocol logic.
● Disadvantages: Higher latency in network responses and increased complexity
in management. Requires more resources which can affect performance.
Firewall Rules
Firewall rules are the policies that dictate whether traffic should be allowed or blocked based on
specific criteria such as IP addresses, protocol, port numbers, and other packet attributes.
Proper understanding and application of these rules are critical for maintaining network security.
● Defining Rules: Rules can be as simple as blocking a single IP address from accessing
a network or as complex as only allowing HTTPS traffic during business hours from
specific network segments.
● Order of Rules: Firewall rules are processed in a sequential manner from top to bottom.
This means the first rule that matches a data packet will be applied, and subsequent
rules are ignored. It’s crucial to order the rules correctly to avoid unintended access or
blockages.
● Best Practices:
● Default Deny: Implement a policy where access is denied by default, and only
specified traffic is allowed based on explicit rules. This minimizes the risk of
unintended network access.
● Specificity: Start with more specific rules at the top of the policy and more
general rules at the bottom.
● Regular Updates and Audits: Continually review and update firewall rules to
adapt to new threats, remove obsolete rules, and adjust for any network
changes.
Intrusion Detection Systems are essential tools in the realm of network security, designed to
detect unauthorized access, misuse, or breach of a computer system. IDS can be categorized
based on the detection methods they employ. Here’s an overview of the basic methods:
2. Signature-Based Detection
● How it Works: This method relies on predefined patterns of known threats, like byte
sequences in network traffic, or known malicious instruction sequences used by
malware. When a piece of data matches a signature in the database, an alert is
triggered.
● Advantages: Highly effective at detecting known threats, providing precise and accurate
detection when signatures match.
● Disadvantages: It cannot detect new, unknown viruses or novel attacks that do not have
signatures yet.
The Base-rate Bayesian Fallacy in the context of IDS refers to a common statistical error that
can occur when the base rate (i.e., the overall rate of an event occurring within a data set) is
ignored in the calculation of probabilities. In the setting of intrusion detection, this fallacy can
significantly affect the accuracy of threat detection systems.
● Example of the Fallacy: Suppose an IDS has a 99% accuracy rate at detecting a real
attack and a 1% false positive rate. Even with these impressive stats, if the actual
probability of an attack on any given day is very low (say 0.1%), the probability that an
alert indicates a real attack is much lower than 99%. This is because the number of false
positives can overwhelm the number of true positives due to the very low base rate of
actual attacks.
● Impact on IDS: This illustrates why IDS systems that seem highly accurate in testing
can still generate a large number of false alarms in real-world conditions. It underscores
the importance of considering the base rate of attacks when configuring and evaluating
the performance of intrusion detection systems. Balancing sensitivity (detecting real
attacks) and specificity (not mislabeling normal activities as attacks) is crucial to effective
IDS operation.
1. Buffer Overflow
● How it works: This occurs when a program writes more data to a buffer than it
can hold. If the buffer is designed to contain 10 bytes of data but receives 20
bytes, the extra data can overflow into adjacent buffers, corrupting or overwriting
the valid data they contain. This can allow attackers to execute arbitrary code.
● Prevention: Use safe functions that limit the amount of data written to buffers.
For example, use strncpy() instead of strcpy(). Employ modern programming
languages that manage memory more safely (e.g., Java, Python) and use tools
like Address Space Layout Randomization (ASLR) and stack canaries.
2. SQL Injection
● How it works: An attacker manipulates a standard SQL query to exploit
non-validated input vulnerabilities in a database. This can allow the attacker to
view, modify, or delete database information that they should not be able to
access.
● Prevention: Use prepared statements and parameterized queries which ensure
that the input data can't be interpreted as SQL commands. Validate and sanitize
all user inputs.
3. Cross-Site Scripting (XSS)
● How it works: XSS attacks occur when an attacker manages to inject malicious
scripts into content that other users see. When the malicious content is delivered
to users’ browsers, it can execute and access cookies, session tokens, or other
sensitive information retained by the browser, or it can rewrite the content of the
HTML page.
● Prevention: Sanitize and validate all user inputs to ensure that they do not
contain executable content. Use frameworks that automatically escape XSS by
design such as the latest versions of React or Angular.
Malicious Software
1. Trojan Horses
● How they work: Trojans are malicious programs that pretend to be useful
software, but when executed, they can give attackers remote administrative
control over the infected computer.
● Differences from other malware: Unlike viruses, Trojans do not replicate
themselves but they pose as legitimate software.
2. Viruses
● How they work: A virus is a malicious executable code attached to another
executable file which can replicate itself and spread to other systems.
● Differences from other malware: Viruses need a host file to spread and
typically require user interaction to execute.
3. Worms
● How they work: Worms are self-replicating malware that replicate themselves to
spread to other computers over a network, usually causing harm by consuming
bandwidth and possibly carrying payloads.
● Differences from other malware: Unlike viruses, worms do not require a host
file or user interaction to spread.
4. Rootkits
● How they work: Rootkits are designed to hide the existence of certain processes
or programs from normal methods of detection and allow continued privileged
access to a computer.
● Differences from other malware: Rootkits are specifically designed to hide
themselves and other malware in the system.
PRIVACY
Concept of Anonymity:
Anonymity in statistical databases ensures that the individuals who are the subjects of the
records cannot be identified. It involves methods and techniques designed to protect personal
data from being linked to specific individuals, thus maintaining their privacy.
● Data Masking: Altering data so that the privacy of subjects is preserved. This can
involve methods like data shuffling or replacement with artificial data.
● Data Perturbation: Adding noise to the data or modifying the data in a way that the
resulting statistical analysis remains useful but the individual data points cannot be
trusted to be exact.
● Anonymization: Removing personally identifiable information where the data cannot be
associated with a particular individual. Techniques include:
● Generalization: Reducing the granularity of the data, e.g., modifying an exact
age to an age range.
● Suppression: Removing sensitive data altogether.
● k-Anonymity: Ensuring that each individual is indistinguishable from at least k-1
others who share similar attributes in the data set.
Network Anonymity
Onion Routing: