Cybersecurity: Crash Course Computer Science #31

CrashCourse
11 Oct 201712:29

Summary

TLDREl guión de este episodio de CrashCourse en Ciencias de la Computación explora la importancia de la ciberseguridad, comparándola con el Orden Jedi que busca la paz en el cyber-espacio. Se discuten los tres objetivos principales: confidencialidad, integridad y disponibilidad, y cómo se enfrentan los ataques a estos. Se introducen conceptos como modelos de amenaza, autenticación y control de acceso, y se enfatiza la necesidad de múltiples factores de autenticación y el aislamiento de programas para minimizar daños en caso de compromiso. El guión invita a los espectadores a fortalecer sus contraseñas y a tener precaución con los enlaces en correos no solicitados.

Takeaways

  • 🌐 La interconexión de las computadoras permite comunicaciones instantáneas a nivel mundial, pero también presenta riesgos de seguridad cibernética.
  • 🔒 La ciberseguridad es esencial para proteger los sistemas y datos de amenazas, similar a cómo las medidas de seguridad físicas protegen el mundo real.
  • 🤖 Las computadoras no tienen ética; requieren especificaciones formales para resolver problemas y pueden ser manipuladas para actos maliciosos o benignos.
  • 🌟 La ciberseguridad se asemeja a la Orden Jedi, buscando mantener la paz y la justicia en el ciberespacio.
  • 🔑 La ciberseguridad se enfoca en proteger la confidencialidad, integridad y disponibilidad de los sistemas y datos frente a amenazas.
  • 🚨 Los ataques a la confidencialidad, como las filtraciones de datos, afectan la privacidad de la información de las personas.
  • 🛡️ La integridad se ve comprometida cuando los atacantes modifican datos o sistemas sin autorización, como enviar correos electrónicos falsificados.
  • 🚫 Los ataques a la disponibilidad, como los Denial of Service, impiden el acceso a los sistemas y datos a los usuarios autorizados.
  • 🎯 Los expertos en seguridad utilizan modelos de amenaza para identificar y prepararse contra enemigos específicos y sus métodos de ataque.
  • 🔑 La autenticación es el proceso por el cual las computadoras identifican a los usuarios, y se puede basar en lo que conoces, lo que tienes o lo que eres.
  • 🔒 Los métodos de autenticación, como contraseñas, tokens o datos biométricos, tienen ventajas y desventajas y pueden ser comprometidos de diversas maneras.
  • 🔐 La autenticación de múltiples factores aumenta la seguridad al requerir que el usuario demuestre más de una forma de identificación para acceder a un sistema.
  • 📋 Los controles de acceso, como las listas de control de acceso (ACL), especifican qué permisos tienen los usuarios sobre archivos, carpetas y programas.
  • 🛂 El modelo Bell-LaPadula es una técnica de control de acceso que evita la lectura de información clasificada más alta y la escritura de información clasificada más baja.
  • 🛠️ La seguridad de un sistema también depende de la confiabilidad del hardware y software que ejecutan los programas de autenticación y control de acceso.
  • 🔍 La verificación y validación independientes, a través de auditorías de código por expertos, ayuda a reducir la probabilidad de errores y vulnerabilidades.
  • 🏰 El aislamiento de aplicaciones mediante 'sandboxing' o máquinas virtuales limita el daño en caso de que un programa sea comprometido.

Q & A

  • ¿Qué es la ciberseguridad y por qué es importante?

    -La ciberseguridad es un conjunto de técnicas para proteger la confidencialidad, integridad y disponibilidad de los sistemas informáticos y datos frente a amenazas. Es importante para minimizar el crimen y el daño en el mundo virtual, al igual que la seguridad física lo hace en el mundo real.

  • ¿Cuáles son los tres objetivos principales de la ciberseguridad mencionados en el guion?

    -Los tres objetivos principales de la ciberseguridad son la confidencialidad (accesibilidad solo para personas autorizadas), la integridad (modificación solo por personas autorizadas) y la disponibilidad (garantizar el acceso continuo a los sistemas y datos).

  • ¿Qué es un modelo de amenaza y cómo ayuda a proteger los sistemas?

    -Un modelo de amenaza es una especificación abstracta del 'enemigo', que perfila a los atacantes en términos de sus capacidades, objetivos y posibles medios de ataque. Ayuda a prepararse contra amenazas específicas en lugar de estar abrumados por todas las formas en que los hackers podrían acceder a los sistemas y datos.

  • ¿Cómo se define la autenticación y cuáles son sus tres tipos principales?

    -La autenticación es el proceso por el cual una computadora entiende con quién se está interactuando. Los tres tipos principales son: lo que sabes (como una contraseña), lo que tienes (un token secreto como una llave) y lo que eres (autenticación biométrica).

  • ¿Qué es un ataque de fuerza bruta y cómo pueden protegerse las contraseñas contra este tipo de ataques?

    -Un ataque de fuerza bruta es cuando un computadora intenta todas las combinaciones posibles de una contraseña o PIN hasta encontrar la correcta. Las contraseñas se pueden proteger haciendolas más largas y complejas, utilizando una mezcla de mayúsculas, minúsculas, números y símbolos.

  • ¿Por qué es recomendable el uso de dos o más formas de autenticación para cuentas importantes?

    -El uso de dos o más formas de autenticación, conocido como autenticación de dos factores o multi-factor, hace que sea mucho más difícil para los atacantes obtener acceso a una cuenta, ya que tendrían que comprometer múltiples factores en lugar de solo uno.

  • ¿Qué son los permisos o listas de control de acceso (ACL) y cómo funcionan?

    -Los permisos o ACL describen qué acceso cada usuario tiene a cada archivo, carpeta y programa en una computadora. Definen si un usuario puede leer, escribir o ejecutar un archivo, y son esenciales para garantizar la confidencialidad, integridad y disponibilidad de la información.

  • ¿Qué es el modelo Bell-LaPadula y cómo ayuda a proteger la información clasificada?

    -El modelo Bell-LaPadula es un enfoque de control de acceso que evita que las personas lean archivos de mayor clasificación de la que están autorizadas (no leer hacia arriba) y que las personas con la clasificación más alta no modifiquen archivos de menor clasificación (no escribir hacia abajo).

  • ¿Qué es un 'núcleo de seguridad' y cómo contribuye a la seguridad del sistema?

    -Un 'núcleo de seguridad' o 'base de cómputo confiable' es un conjunto mínimo de software del sistema operativo que se acerca a ser probablemente seguro. Ayuda a reducir la cantidad de código y, por lo tanto, las posibilidades de errores de implementación que podrían resultar en vulnerabilidades.

  • ¿Qué es la verificación y validación independientes y cómo ayudan a mejorar la seguridad del software?

    -La verificación y validación independientes es un proceso en el que el código es auditado por un grupo de desarrolladores con enfoque en la seguridad. Esto ayuda a encontrar y solucionar problemas de seguridad que podrían no haber sido identificados por los creadores originales del código.

  • ¿Qué es la técnica de aislamiento y cómo se utiliza para proteger los sistemas informáticos?

    -El aislamiento es un principio que consiste en limitar y contener el daño en caso de que un programa sea comprometido. Se puede lograr el aislamiento 'sandboxeando' aplicaciones, corriendo múltiples máquinas virtuales o asignando bloques de memoria separados para cada aplicación en un sistema operativo.

Outlines

00:00

🌐 Seguridad Cibernética Básica

El primer párrafo presenta la introducción a la seguridad cibernética, destacando la importancia de proteger los sistemas de computación contra actividades maliciosas. Se compara con la seguridad física y se enfatiza que, al igual que en el mundo real, es necesario proteger la confidencialidad, integridad y disponibilidad de los datos y sistemas. Se menciona la necesidad de un modelo de amenaza para prepararse contra ataques específicos y se describen los tres objetivos principales de la seguridad cibernética: la confidencialidad, la integridad y la disponibilidad.

05:00

🔑 Métodos de Autenticación

El segundo párrafo se centra en los métodos de autenticación, que son esenciales para diferenciar a los usuarios autorizados de los no autorizados. Se discuten tres tipos principales de autenticación: lo que conoces (como contraseñas), lo que tienes (como tokens o llaves) y lo que eres (autenticación biométrica). Cada método tiene sus ventajas y desventajas, y se sugiere el uso de múltiples factores de autenticación para mayor seguridad. También se explora el concepto de control de acceso a través de permisos y listas de control de acceso (ACL), que definen qué usuario tiene acceso a qué recursos.

10:02

🛡 Modelos de Control de Acceso y Seguridad del Software

El tercer párrafo profundiza en los modelos de control de acceso, como el modelo Bell-LaPadula, y cómo estos garantizan la integridad y confidencialidad de la información. Se discute la importancia de la reducción de errores de implementación mediante la reducción de código y la verificación formal de la seguridad del código. Se menciona la validación y verificación independientes, el uso de núcleos de seguridad y la sandboxing de aplicaciones para limitar el daño en caso de compromiso de seguridad. Finalmente, se advierte sobre los riesgos de hacer clic en enlaces de correos no solicitados y se invita a fortalecer las contraseñas y habilitar la autenticación de dos factores.

Mindmap

Keywords

💡Ciberseguridad

Ciberseguridad se refiere a la serie de técnicas y prácticas destinadas a proteger los sistemas y datos de computadoras contra amenazas. Es el tema central del video, que cubre su importancia en un mundo donde los ordenadores están interconectados y vulnerables a ataques maliciosos. Ejemplos del guión incluyen proteger la confidencialidad, integridad y disponibilidad de la información.

💡Confidencialidad

La confidencialidad, también conocida como la privacidad de los datos, es una de las tres metas fundamentales de la ciberseguridad mencionadas en el guión. Se refiere a la capacidad de restringir el acceso a la información a solo las personas autorizadas, como se ejemplifica con los datos de tarjetas de crédito en los casos de filtraciones de datos.

💡Integridad

La integridad se refiere a la garantía de que solo las personas autorizadas puedan modificar o utilizar los sistemas y datos. Es crucial para evitar que los hackers, por ejemplo, usurpen la identidad de alguien enviando correos electrónicos con una contraseña comprometida, como se menciona en el guión.

💡Disponibilidad

La disponibilidad es la capacidad de garantizar que las personas autorizadas puedan acceder a sus sistemas y datos cuando lo necesiten. El guión ilustra este concepto con los ataques de denegación de servicio (DoS), donde los hackers sobrecarguen un sitio web con peticiones falsas, haciendo que sea lento o inalcanzable.

💡Modelo de amenaza

Un modelo de amenaza es una representación abstracta del 'enemigo' en términos de sus capacidades, objetivos y métodos de ataque. Ayuda a los expertos en seguridad a prepararse contra amenazas específicas, como se describe en el guión con ejemplos de cómo proteger el acceso físico a un portátil contra diferentes tipos de amenazas.

💡Autenticación

La autenticación es el proceso mediante el cual un ordenador identifica a un usuario. Es fundamental para la ciberseguridad y se divide en tres tipos según el guión: lo que sabes (como una contraseña), lo que tienes (un token de seguridad) y lo que eres (autenticación biométrica). Ejemplos en el guión incluyen el uso de contraseñas y PINs, así como tokens físicos.

💡Contraseña

Las contraseñas son una forma de autenticación basada en 'lo que sabes'. Son ampliamente utilizadas pero también son vulnerables a ataques de fuerza bruta, donde un ordenador intenta todas las combinaciones posibles, como se describe en el guión. Se sugiere el uso de contraseñas más complejas y memorables para incrementar la seguridad.

💡Autenticación de dos factores

La autenticación de dos factores, o multi-factor, implica el uso de dos o más formas de autenticación para proteger cuentas importantes. El guión sugiere que aunque un atacante pueda adivinar una contraseña o robar un teléfono, es mucho más difícil lograr ambas cosas, incrementando así la seguridad.

💡Control de acceso

El control de acceso se refiere a la especificación de qué acceso un usuario tiene a los archivos, carpetas y programas de una computadora. Se ejemplifica en el guión con permisos de 'lectura', 'escritura' y 'ejecución', y es crucial para mantener la confidencialidad, integridad y disponibilidad de la información.

💡Modelo Bell-LaPadula

El modelo Bell-LaPadula es un método para control de acceso que busca prevenir la divulgación no autorizada de información, siguiendo las reglas 'no leer arriba' y 'no escribir abajo'. Fue formulado para la política de seguridad multinivel del Departamento de Defensa de EE. UU. y se menciona en el guión como un ejemplo de cómo se puede controlar el acceso a diferentes niveles de información.

💡Aislamiento

El aislamiento es el principio de separar procesos o aplicaciones para que un problema en uno no afecte a los demás. El guión lo ejemplifica con la metáfora de un niño en un sandbox, y se logra técnicamente mediante 'sandboxing' de aplicaciones o el uso de máquinas virtuales, lo que ayuda a contener y limitar el daño en caso de un ataque.

Highlights

Cybersecurity is essential to protect computer systems and data against threats, similar to physical security measures in the real world.

Computers lack ethics and can be used for both beneficial and malicious purposes, highlighting the importance of cybersecurity.

The three main goals of cybersecurity are to ensure the secrecy, integrity, and availability of computer systems and data.

Secrecy, or confidentiality, is violated in data breaches where sensitive information like credit card details are exposed.

Integrity refers to the protection against unauthorized modification of systems and data, such as when hackers impersonate users to send emails.

Availability ensures that authorized users have consistent access to their systems and data, which is threatened by Denial of Service Attacks.

A threat model is a conceptual framework that profiles potential attackers and their capabilities, helping to prepare against specific threats.

The security of a system depends on the threat model it is designed to protect against, such as a nosy roommate or a mischievous sibling.

Authentication is the process of verifying the identity of a user, which is crucial for determining access rights to systems and data.

There are three types of authentication: what you know, what you have, and what you are, each with its own advantages and disadvantages.

What you know authentication, such as passwords, is vulnerable to brute force attacks where computers systematically guess combinations.

Increasing the complexity of passwords and PINs can significantly increase the difficulty of brute force attacks.

What you have authentication involves the use of a physical token, like a key, which is less susceptible to remote attacks but can be compromised physically.

Biometric authentication, or what you are, uses unique physical characteristics for verification but has issues with reliability and irreversibility.

Two-factor or multi-factor authentication combines multiple forms of authentication to enhance security by making it harder for attackers to compromise multiple factors.

Access Control involves specifying permissions for users to determine what they can access, modify, or execute on a computer system.

The Bell-LaPadula model is an access control model that prevents 'read up' and 'write down' to ensure information security within hierarchical systems.

Security kernels or trusted computing bases aim to minimize code to reduce the likelihood of implementation errors and vulnerabilities.

Independent Verification and Validation involves auditing code by external developers to identify and rectify potential security flaws.

Isolation is a principle in computer security that involves containing the damage of a compromised program to prevent it from affecting other systems.

Sandboxing applications is a method of isolation that prevents a compromised application from affecting the entire system by confining it to a restricted environment.

Virtual Machines provide a form of isolation by running programs in simulated environments, limiting the impact of any single program's compromise.

The video concludes with practical cybersecurity advice, emphasizing the importance of strong passwords, two-factor authentication, and caution with unsolicited emails.

Transcripts

play00:03

Hi, I’m Carrie Anne, and welcome to CrashCourse Computer Science!

play00:05

Over the last three episodes, we’ve talked about how computers have become interconnected,

play00:10

allowing us to communicate near-instantly across the globe.

play00:12

But, not everyone who uses these networks is going to play by the rules, or have our

play00:17

best interests at heart.

play00:18

Just as how we have physical security like locks, fences and police officers to minimize

play00:22

crime in the real world, we need cybersecurity to minimize crime and harm in the virtual

play00:27

world.

play00:27

Computers don’t have ethics.

play00:29

Give them a formally specified problem and they’ll happily pump out an answer at lightning

play00:33

speed.

play00:34

Running code that takes down a hospital’s computer systems until a ransom is paid is

play00:36

no different to a computer than code that keeps a patient's heart beating.

play00:40

Like the Force, computers can be pulled to the light side or the dark side.

play00:44

Cybersecurity is like the Jedi Order, trying to bring peace and justice to the cyber-verse.

play00:48

INTRO

play00:57

The scope of cybersecurity evolves as fast as the capabilities of computing, but we can

play01:02

think of it as a set of techniques to protect the secrecy, integrity and availability of

play01:06

computer systems and data against threats.

play01:09

Let’s unpack those three goals:

play01:11

Secrecy, or confidentiality, means that only authorized people should be able to access

play01:15

or read specific computer systems and data.

play01:18

Data breaches, where hackers reveal people’s credit card information, is an attack on secrecy.

play01:22

Integrity means that only authorized people should have the ability to use or modify systems

play01:27

and data.

play01:28

Hackers who learn your password and send e-mails masquerading as you, is an integrity attack.

play01:32

And availability means that authorized people should always have access to their systems

play01:36

and data.

play01:37

Think of Denial of Service Attacks, where hackers overload a website with fake requests

play01:42

to make it slow or unreachable for others.

play01:44

That’s attacking the service’s availability.

play01:46

To achieve these three general goals, security experts start with a specification of who

play01:50

your “enemy” is, at an abstract level, called a threat model.

play01:54

This profiles attackers: their capabilities, goals, and probable means of attack – what’s

play01:58

called, awesomely enough, an attack vector.

play02:01

Threat models let you prepare against specific threats, rather than being overwhelmed by

play02:04

all the ways hackers could get to your systems and data.

play02:07

And there are many, many ways.

play02:08

Let’s say you want to “secure” physical access to your laptop.

play02:12

Your threat model is a nosy roommate.

play02:14

To preserve the secrecy, integrity and availability of your laptop, you could keep it hidden in

play02:18

your dirty laundry hamper.

play02:20

But, if your threat model is a mischievous younger sibling who knows your hiding spots,

play02:24

then you’ll need to do more: maybe lock it in a safe.

play02:27

In other words, how a system is secured depends heavily on who it’s being secured against.

play02:31

Of course, threat models are typically a bit more formally defined than just “nosy roommate”.

play02:36

Often you’ll see threat models specified in terms of technical capabilities.

play02:40

For example, “someone who has physical access to your laptop along with unlimited time”.

play02:44

With a given threat model, security architects need to come up with a solution that keeps

play02:48

a system secure – as long as certain assumptions are met, like no one reveals their password

play02:52

to the attacker.

play02:53

There are many methods for protecting computer systems, networks and data.

play02:56

A lot of security boils down to two questions: who are you, and what should you have access to?

play03:02

Clearly, access should be given to the right people, but refused to the wrong people.

play03:06

Like, bank employees should be able to open ATMs to restock them, but not me… because

play03:10

I’d take it all... all of it!

play03:12

That ceramic cat collection doesn’t buy itself!

play03:14

So, to differentiate between right and wrong people, we use authentication - the process

play03:18

by which a computer understands who it’s interacting with.

play03:22

Generally, there are three types, each with their own pros and cons:

play03:25

What you know.

play03:26

What you have.

play03:26

And what you are.

play03:27

What you know authentication is based on knowledge of a secret that should be known only by the

play03:31

real user and the computer, for example, a username and password.

play03:35

This is the most widely used today because it’s the easiest to implement.

play03:38

But, it can be compromised if hackers guess or otherwise come to know your secret.

play03:42

Some passwords are easy for humans to figure out, like 12356 or q-w-e-r-t-y.

play03:48

But, there are also ones that are easy for computers.

play03:51

Consider the PIN: 2580.

play03:53

This seems pretty difficult to guess – and it is – for a human.

play03:56

But there are only ten thousand possible combinations of 4-digit PINs.

play04:00

A computer can try entering 0000, then try 0001, and then 0002, all the way up to 9999...

play04:08

in a fraction of a second.

play04:10

This is called a brute force attack, because it just tries everything.

play04:14

There’s nothing clever to the algorithm.

play04:16

Some computer systems lock you out, or have you wait a little, after say three wrong attempts.

play04:20

That’s a common and reasonable strategy, and it does make it harder for less sophisticated

play04:25

attackers.

play04:25

But think about what happens if hackers have already taken over tens of thousands of computers,

play04:29

forming a botnet.

play04:30

Using all these computers, the same pin – 2580 – can be tried on many tens of thousands

play04:35

of bank accounts simultaneously.

play04:37

Even with just a single attempt per account, they’ll very likely get into one or more

play04:41

that just happen to use that PIN.

play04:43

In fact, we’ve probably guessed the pin of someone watching this video!

play04:46

Increasing the length of PINs and passwords can help, but even 8 digit PINs are pretty

play04:50

easily cracked.

play04:51

This is why so many websites now require you to use a mix of upper and lowercase letters,

play04:55

special symbols, and so on – it explodes the number of possible password combinations.

play05:00

An 8-digit numerical PIN only has a hundred million combinations – computers eat that

play05:04

for breakfast!

play05:05

But an 8-character password with all those funky things mixed in has more than 600 trillion

play05:10

combinations.

play05:11

Of course, these passwords are hard for us mere humans to remember, so a better approach

play05:15

is for websites to let us pick something more memorable, like three words joined together:

play05:19

“green brothers rock” or “pizza tasty yum”.

play05:22

English has around 100,000 words in use, so putting three together would give you roughly

play05:27

1 quadrillion possible passwords. Good luck trying to guess that!

play05:31

I should also note here that using non-dictionary words is even better against more sophisticated

play05:35

kinds of attacks, but we don’t have time to get into that here.

play05:38

Computerphile has a great video on choosing a password - link in the dooblydoo.

play05:42

What you have authentication, on the other hand, is based on possession of a secret token

play05:45

that only the real user has.

play05:47

An example is a physical key and lock.

play05:49

You can only unlock the door if you have the key.

play05:52

This escapes this problem of being “guessable”.

play05:54

And they typically require physical presence, so it’s much harder for remote attackers

play05:58

to gain access.

play05:59

Someone in another country can’t gain access to your front door in Florida without getting

play06:02

to Florida first.

play06:03

But, what you have authentication can be compromised if an attacker is physically close.

play06:08

Keys can be copied, smartphones stolen, and locks picked.

play06:11

Finally, what you are authentication is based on... you!

play06:14

You authenticate by presenting yourself to the computer.

play06:17

Biometric authenticators, like fingerprint readers and iris scanners are classic examples.

play06:22

These can be very secure, but the best technologies are still quite expensive.

play06:26

Furthermore, data from sensors varies over time.

play06:29

What you know and what you have authentication have the nice property of being deterministic

play06:33

– either correct or incorrect.

play06:35

If you know the secret, or have the key, you’re granted access 100% of the time.

play06:40

If you don’t, you get access zero percent of the time.

play06:42

Biometric authentication, however, is probabilistic.There’s some chance the system won’t recognize you…

play06:48

maybe you’re wearing a hat or the lighting is bad.

play06:50

Worse, there’s some chance the system will recognize the wrong person as you – like

play06:54

your evil twin!

play06:55

Of course, in production systems, these chances are low, but not zero.

play06:59

Another issue with biometric authentication is it can’t be reset.

play07:02

You only have so many fingers, so what happens if an attacker compromises your fingerprint data?

play07:07

This could be a big problem for life.

play07:09

And, recently, researchers showed it’s possible to forge your iris just by capturing a photo

play07:13

of you, so that’s not promising either.

play07:15

Basically, all forms of authentication have strengths and weaknesses, and all can be compromised

play07:20

in one way or another.

play07:21

So, security experts suggest using two or more forms of authentication for important

play07:26

accounts.

play07:27

This is known as two-factor or multi-factor authentication.

play07:29

An attacker may be able to guess your password or steal your phone: but it’s much harder

play07:33

to do both.

play07:34

After authentication comes Access Control.

play07:36

Once a system knows who you are, it needs to know what you should be able to access,

play07:40

and for that there’s a specification of who should be able to see, modify and use what.

play07:45

This is done through Permissions or Access Control Lists (ACL), which describe what access

play07:49

each user has for every file, folder and program on a computer.

play07:52

“Read” permission allows a user to see the contents of a file, “write” permission

play07:57

allows a user to modify the contents, and “execute” permission allows a user to

play08:00

run a file, like a program.

play08:02

For organizations with users at different levels of access privilege – like a spy

play08:05

agency – it’s especially important for Access Control Lists to be configured correctly

play08:10

to ensure secrecy, integrity and availability.

play08:13

Let’s say we have three levels of access: public, secret and top secret.

play08:17

The first general rule of thumb is that people shouldn’t be able to “read up”.

play08:20

If a user is only cleared to read secret files, they shouldn’t be able to read top secret

play08:24

files, but should be able to access secret and public ones.

play08:28

The second general rule of thumb is that people shouldn’t be able to “write down”.

play08:31

If a member has top secret clearance, then they should be able to write or modify top

play08:35

secret files, but not secret or public files.

play08:38

It may seem weird that even with the highest clearance, you can’t modify less secret files.

play08:42

But, it guarantees that there’s no accidental leakage of top secret information into secret

play08:47

or public files.

play08:48

This “no read up, no write down” approach is called the Bell-LaPadula model.

play08:52

It was formulated for the U.S. Department of Defense’s Multi-Level Security policy.

play08:57

There are many other models for access control – like the Chinese Wall model and Biba model.

play09:01

Which model is best depends on your use-case.

play09:03

Authentication and access control help a computer determine who you are and what you should

play09:08

access, but depend on being able to trust the hardware and software that run the authentication

play09:12

and access control programs.

play09:14

That’s a big dependence.

play09:15

If an attacker installs malicious software – called malware – compromising the host

play09:20

computer’s operating system, how can we be sure security programs don’t have a backdoor

play09:24

that let attackers in?

play09:25

The short answer is… we can’t.

play09:27

We still have no way to guarantee the security of a program or computing system.

play09:31

That’s because even while security software might be “secure” in theory, implementation

play09:35

bugs can still result in vulnerabilities.

play09:37

But, we do have techniques to reduce the likelihood of bugs, quickly find and patch bugs when

play09:42

they do occur, and mitigate damage when a program is compromised.

play09:46

Most security errors come from implementation error.

play09:49

To reduce implementation error, reduce implementation.

play09:52

One of the holy grails of system level security is a “security kernel” or a “trusted

play09:57

computing base”: a minimal set of operating system software that’s close to provably secure.

play10:02

A challenge in constructing these security kernels is deciding what should go into it.

play10:06

Remember, the less code, the better!

play10:08

Even after minimizing code bloat, it would be great to “guarantee” that code as written

play10:12

is secure.

play10:13

Formally verifying the security of code is an active area of research.

play10:17

The best we have right now is a process called Independent Verification and Validation.

play10:22

This works by having code audited by a crowd of security-minded developers.

play10:26

This is why security code is almost always open-sourced.

play10:28

It’s often difficult for people who wrote the original code to find bugs, but external

play10:32

developers, with fresh eyes and different expertise, can spot problems.

play10:36

There are also conferences where like-minded hackers and security experts can mingle and

play10:40

share ideas, the biggest of which is DEF CON, held annually in Las Vegas.

play10:44

Finally, even after reducing code and auditing it, clever attackers are bound to find tricks

play10:48

that let them in.

play10:49

With this in mind, good developers should take the approach that, not if, but when their

play10:53

programs are compromised, the damage should be limited and contained, and not let it compromise

play10:57

other things running on the computer.

play11:00

This principle is called isolation.

play11:01

To achieve isolation, we can “sandbox” applications.

play11:04

This is like placing an angry kid in a sandbox; when the kid goes ballistic, they only destroy

play11:09

the sandcastle in their own box, but other kids in the playground continue having fun.

play11:14

Operating Systems attempt to sandbox applications by giving each their own block of memory that

play11:19

others programs can’t touch.

play11:20

It’s also possible for a single computer to run multiple Virtual Machines, essentially

play11:24

simulated computers, that each live in their own sandbox.

play11:27

If a program goes awry, worst case is that it crashes or compromises only the virtual

play11:31

machine on which it’s running.

play11:33

All other Virtual Machines running on the computer are isolated and unaffected.

play11:37

Ok, that’s a broad overview of some key computer security topics.

play11:41

And I didn’t even get to network security, like firewalls.

play11:43

Next episode, we’ll discuss some specific example methods hackers use to get into computer

play11:46

systems.

play11:47

After that, we’ll touch on encryption.

play11:49

Until then, make your passwords stronger, turn on 2-factor authentication, and NEVER

play11:53

click links in unsolicited emails!

play11:56

I’ll see you next week.

Rate This

5.0 / 5 (0 votes)

Etiquetas Relacionadas
CiberseguridadConfidencialidadIntegridadDisponibilidadAutenticaciónControl de AccesoThreat ModelBotnetMulti-factorSandboxDEF CON