1. Introduction

Origin of hacking

It's the creative use of the computer system and softwares.
Do not use computer systems/software are what they are intended for.

White hat, grey hat and black hat

Computer Security Problem

Vulnerable application being exploited

Pasted image 20230911095807.png

Case Study

Problem 1

Zoom launching the client from the web browser from a url

The web browser sends a http request to a local web server hosted by local zoom client listens on a local port
This process does not require a dialog to happen.

Implication

Any malicious websites can send the request to the local web server to join the meeting without the user's knowledge

Problem 2

Zoom disable MacOS hardened runtime which is to defend against code injection, library hijacking and process memory space tampering
Once user gives Zoom access to camera and mic, MacOS ensures that entire application code does not change

Zoom disables library validation, it can be attacked as follows

Ken Thompson's clever Trojan

What can we trust?

Can we trust the login program of Linux distribution

Solution

Recompile the login program from the source code

Can we trust the source code?

No

Solution

We can inspect the code and recompile

Can we trust compiler

No

compile(s){
	if(match(s,'login-program')){
		compile('login-backdorr');
		return
	}
	/* regular compilation*/
}

This code compiles a login program with a backdoor does not matter what the source code is

Solution

inspect compiler source code and then recompile the compiler
but what if the compiler binary have backdoor

compile(s){
	if(match(s,'login-program')){
		compile('login-backdorr');
		return
	}
	if(match(s,'compiler-program')){
		compile('compiler-backdorr');
		return
	}
	/* regular compilation*/
}

This still gives a corrupted compiler

what can we trust again

Order a laptop, what can go wrong?

Trusted Computing Base (TCB)

Assume some minimal part of the system is not compromised and slowly build a secure environment on top of that

2. Network Models
3. Mac Address and ARP Protocol