CSCI-UA.9480 Introduction to Computer Security
Session 0
Introduction and Threat Modeling
- Prof. Nadim Kobeissi
Introduction to Computer Security Session 0 Introduction and Threat - - PowerPoint PPT Presentation
CSCI-UA.9480 Introduction to Computer Security Session 0 Introduction and Threat Modeling Prof. Nadim Kobeissi 0a Introduction Welcome! 2 CSCI-UA.9480: Introduction to Computer Security Nadim Kobeissi Welcome to your new course! Open
Session 0
Introduction and Threat Modeling
Welcome!
2
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Welcome to your new course!
Open discussions.
more on practical work.
class. Important notes.
course: demanding assignments, packed sessions, strict grading.
give you invited talks.
class.
3
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
About me.
applied cryptography as a passion.
computer security and applied
formally verifying cryptographic protocols.
4
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Goals of this course.
○ Computer security. ○ Cryptographic constructions underlying modern computer security.
○ Design secure systems. ○ Write secure code. ○ Exploit insecure code.
○ Applied cryptography. ○ Designing and breaking secure systems. ○ Operating system security. ○ Network security. ○ Web security. ○ Security economics.
5
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Course layout.
○
○
○
○
○
○ Class participation (10%) ○ Three problem sets (20%) ○ Two practical assignments (20%) ○ Midterm exam (25%) ○ Final exam (25%)
https://computersecurity.paris
6
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Course guidelines.
when asked.
succeed.
7
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
doctor’s note or similar.
yawning in class is considered rude in France.” No problem in my class: please yawn and go to the bathroom all the time.
guidelines.
8
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
“Cybersecurity, computer security or IT security is the protection of computer systems from theft
electronic data, as well as from disruption or misdirection of the services they provide.” – Wikipedia.
9
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
“Security engineering is about building systems to remain dependable in the face of malice, error,
tools, processes and methods needed to design, implement and test complete systems, and to adapt existing systems as their environment evolves.” – Ross Anderson.
10
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
“Applied cryptography is the science and practice
systems that derive their practical security guarantees primarily from mathematically ‘hard’ foundations, and only miscellaneously from access control.” – Me? I hope this is accurate.
11
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Today’s reality.
There’s a lot of buggy software out there… …and bugs don’t sell for cheap.
12
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Today’s reality.
There’s a lot of buggy software out there… …and bugs don’t sell for cheap.
13
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Can you think of any types of attacks?
On these platforms? Or on these?
14
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Example: WannaCry Ransomware
15
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
The bird’s eye view.
16
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Kerckhoff’s principle.
Originated in cryptography…
the secrecy of the key and not on the secrecy of the cipher.
military encryption machines could be stolen by the enemy, leading to decryption. …but can be generalized to security systems.
○ Access control. ○ Authentication. ○ Ability to modify the system, etc.
17
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Threat model for a bank.
Threats to consider for a bank.
bookkeeping is petty theft by bankers (1% get fired each year for this.)
handle authentication? Prevent tampering? Secure communications?
18
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Threat model for a bank.
Some more threats to consider.
to trickery (phishing) or could have their account hijacked by exploiting bugs in the bank’s web applications or in their browser (XSS.)
communications, regularizing balances between branches, etc.
19
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Threat model for a bank.
Let’s talk about “security theater.”
“security theater” (Bruce Schneier most notably).
20
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
ATMs were the first large-scale commercial deployment of cryptography and helped establish a number of standards.
21
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Threat model for a military base.
Threats to consider for a military base.
while jamming theirs.
priority.
22
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Test your knowledge!
23
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
What is the better way to protect nuclear weapons from unauthorized access?
☐ A: Store them in a secret location. ☐ B: Require multiple authentication methods spread across multiple people. ☐ C: Dismantle the weapons, thereby removing the need to protect them.
Test your knowledge!
24
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
☐ A: Store them in a secret location. 🗺 B: Require multiple authentication methods spread across multiple people. ☐ C: Dismantle the weapons, thereby removing the need to protect them.
What is the better way to protect nuclear weapons from unauthorized access?
Threat model for a military base.
Why not A?
Why not C?
requirements.
25
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Threat model for a home.
Let’s try to come up with one.
impact? Now that you have your threat model, you can reason about the systems you must design and implement.
26
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
An overview to get you started.
27
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
“Systems?”
Now that you have your threat model, you can reason about the systems you must design and implement.
28
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
“Alice and Bob?”
In protocols, we reason about:
forward secrecy…
29
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
“Application Security.”
In applications and many user-facing systems, we reason about:
impersonation, phishing…
hacks…
30
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Link each icon to the correct label.
31
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Application Protocol Primitive Operating System
AES
Link each icon to the correct label.
32
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
Application Protocol Primitive Operating System
AES
Each layer is exposed to different attacks.
○ Access control violations. ○ Privilege escalation. ○ Memory corruption.
○ Side channels. ○ Cryptographic breaks. ○ Implementation errors.
○ Implementation errors. ○ Design errors. ○ Outdated specifications. ○ Active attacks.
○ User error or manipulation. ○ Bugs in the code.
33
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
End of introductory session.
I hope you now have a clear picture of what
concepts.
it from an attacker’s perspective.
ethics’ role in security.
34
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi
The building blocks of modern security systems.
35
CSCI-UA.9480: Introduction to Computer Security – Nadim Kobeissi