[PUBLISHER] upload files #83

* PUSH NOTE : 01. Security Introduction.md

* PUSH ATTACHMENT : is-01-cryptosystem.png
This commit is contained in:
2023-09-11 19:42:12 +09:00
committed by GitHub
parent 373065f71c
commit 6f87afe83c

View File

@@ -20,9 +20,9 @@ attachment:
> Every program has at least two purposes: the one for which it was written, and another for which it wasn't. - Alan J. Perlis > Every program has at least two purposes: the one for which it was written, and another for which it wasn't. - Alan J. Perlis
# Security Overview ## Security Overview
## Security ### Security
**Security** may mean different things. **Security** may mean different things.
- Emotional security - Emotional security
@@ -43,7 +43,7 @@ In internet security, we assume that:
- Everything on the network can be an attack target. - Everything on the network can be an attack target.
- Every transmitted bit can be tapped (eavesdropped). - Every transmitted bit can be tapped (eavesdropped).
## Modeling in Network Security ### Modeling in Network Security
- Basically, we have a sender and a receiver, and they communicate through the internet. - Basically, we have a sender and a receiver, and they communicate through the internet.
- **Sender and receiver want to communicate *securely***. - **Sender and receiver want to communicate *securely***.
@@ -56,11 +56,11 @@ In internet security, we assume that:
- Alice and Bob for the two parties participating in the communication. - Alice and Bob for the two parties participating in the communication.
- Eve (or Mallory, Oscar) for the adversary. - Eve (or Mallory, Oscar) for the adversary.
# Security Attacks ## Security Attacks
This is only an overview, so the attacks are introduced briefly. This is only an overview, so the attacks are introduced briefly.
## Computer/Network Attacks ### Computer/Network Attacks
- Malware: malicious software - Malware: malicious software
- virus, worm, Trojan, spyware, ransomware - virus, worm, Trojan, spyware, ransomware
@@ -99,9 +99,9 @@ There are two types of attacks in security attacks
- Ex. eavesdropping, port scanning (idle scan secretly scanns). - Ex. eavesdropping, port scanning (idle scan secretly scanns).
- *Detection* is important since passive attacks are a danger to *confidentiality*. - *Detection* is important since passive attacks are a danger to *confidentiality*.
# Security Services and Mechanisms ## Security Services and Mechanisms
## CIA Triad ### CIA Triad
What kind of security services do we want? The basic network security services must support the following. These are also known as the **CIA triad**. What kind of security services do we want? The basic network security services must support the following. These are also known as the **CIA triad**.
@@ -120,7 +120,7 @@ Additionally, we also need:
- Integrity: modification, masquerading, replaying, repudiation - Integrity: modification, masquerading, replaying, repudiation
- Availability: denial of service - Availability: denial of service
## More Security Services ### More Security Services
- **Access control**: controlling privileges to access assets - **Access control**: controlling privileges to access assets
- identification, authentication (credential validation), authorization - identification, authentication (credential validation), authorization
@@ -131,7 +131,7 @@ Additionally, we also need:
- **Privacy**: keeping data safe in transit and in storage - **Privacy**: keeping data safe in transit and in storage
- **Digital forensics**: recovering data from digital devices - **Digital forensics**: recovering data from digital devices
## Security Mechanisms ### Security Mechanisms
There are many ways of achieving security. There are many ways of achieving security.
@@ -147,13 +147,13 @@ There are many ways of achieving security.
- **Append-only server**: keeps track of all modifications, good for auditing - **Append-only server**: keeps track of all modifications, good for auditing
- Blockchain is a kind of append-only data structure - Blockchain is a kind of append-only data structure
# Cryptography ## Cryptography
> **Cryptography** is the study of mathematical techniques for securing digital information, systems, and distributed computations against adversarial attacks.^[J. Katz, Introduction to Modern Cryptography] > **Cryptography** is the study of mathematical techniques for securing digital information, systems, and distributed computations against adversarial attacks.^[J. Katz, Introduction to Modern Cryptography]
**Cryptanalysis** is the study of methods for obtaining the meaning of encrypted information without access to the key. **Cryptanalysis** is the study of methods for obtaining the meaning of encrypted information without access to the key.
## Basics of a Cryptosystem ### Basics of a Cryptosystem
![is-01-cryptosystem.png](../../../assets/img/posts/Lecture%20Notes/Internet%20Security/is-01-cryptosystem.png) ![is-01-cryptosystem.png](../../../assets/img/posts/Lecture%20Notes/Internet%20Security/is-01-cryptosystem.png)
@@ -174,7 +174,7 @@ There are two criteria for classifying cryptosystems.
- **Block cipher** - **Block cipher**
- **Stream cipher** - **Stream cipher**
## Kerckhoffs' Principle ### Kerckhoffs' Principle
There are two choices to achieve the security of a cryptosystem. There are two choices to achieve the security of a cryptosystem.
@@ -197,7 +197,7 @@ Why? Here are some of the arguments in favor of Kerckhoffs' principle.
- *Standardization* of schemes is possible, supporting compatibility between different users. - *Standardization* of schemes is possible, supporting compatibility between different users.
- It is beneficial to use strong schemes that have gone through public scrutiny. - It is beneficial to use strong schemes that have gone through public scrutiny.
# Threat Modeling ## Threat Modeling
What should we consider when we are building secure systems? We should consider what attacks are possible. **Threat modeling** is the process of systematically identifying the threats faced by a system. What should we consider when we are building secure systems? We should consider what attacks are possible. **Threat modeling** is the process of systematically identifying the threats faced by a system.
@@ -211,7 +211,7 @@ What should we consider when we are building secure systems? We should consider
We consider the case of a smartphone. We consider the case of a smartphone.
## Identifying Assets ### Identifying Assets
In a smartphone, assets (things of value) would be In a smartphone, assets (things of value) would be
- Saved credentials such as passwords - Saved credentials such as passwords
@@ -220,14 +220,14 @@ In a smartphone, assets (things of value) would be
- Access to sensors such as camera, microphone, network traffic or location - Access to sensors such as camera, microphone, network traffic or location
- The device itself - The device itself
## Attack Surfaces ### Attack Surfaces
- Physically stealing the device - Physically stealing the device
- Tricking the user to install malicious applications - Tricking the user to install malicious applications
- Passive eavesdropping on the network - Passive eavesdropping on the network
- Backdoors in the OS - Backdoors in the OS
## Hypothetical Attackers ### Hypothetical Attackers
For example, For example,
@@ -237,7 +237,7 @@ For example,
|FBI|Lot of things...|Obtain evidence from the device| |FBI|Lot of things...|Obtain evidence from the device|
|Eavesdropper|Observe network traffic|Steal information| |Eavesdropper|Observe network traffic|Steal information|
## Surveying Mitigations ### Surveying Mitigations
Next, we survey how to mitigate the attacks. Next, we survey how to mitigate the attacks.
@@ -250,7 +250,7 @@ Suppose we are mitigating theft. One could:
For blocking eavesdroppers, one could apply HTTPS everywhere or use a VPN. But it's hard to check if apps are actually using HTTPS or not, and VPNs may slow down connection. For blocking eavesdroppers, one could apply HTTPS everywhere or use a VPN. But it's hard to check if apps are actually using HTTPS or not, and VPNs may slow down connection.
## Cost vs. Risk Analysis ### Cost vs. Risk Analysis
- How costly is the mitigation? - How costly is the mitigation?
- Applying strong password is not very costly. - Applying strong password is not very costly.