CS4203 Flashcards

1
Q

Asset Definition

A

Anything the computer system controls

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
1
Q

How do buisnesses measure risk?

A

risk = expected cost x probability

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Why does risk = expected cost x probability not work?

A
  • cannot always estimate cost of something happening
  • cannot always estimate probability
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is a qualitative way of measuring risk?

A

Create categories for hazards e.g. negligible, minor, major, survivable, existential.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is a threat actor?

A

Could be company, state, hacker, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is a threat model?

A

Points of attack against a system. prioritised by risk, vulnerabilities and countermeasures.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is an attack?

A

The execution of a threat using an attack vector by a threat actor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is a threat?

A

A way in which the system could be comprimised.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is Identity?

A

Who you are.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is an attack vector?

A

A specific vulnerability in the system that can be used in an attack against the system.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is agency?

A

The things that you are allowed to do. (connected to identity)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is privacy?

A

The requirement that information only be seen by those who have permission to see it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is authentication?

A

Proving a claim to an identity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is Anonymity?

A

Prevent something from being associated with an identity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Can scripts act as users?

A

Yes and in fact it is very hard to distinguish between a person and a bot (sciprt acting as a user)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is non-repudiation?

A

The inability to deny that you did something.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is trust?

A

A combination fo agency and identity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is reputation?

A

Trust in an agent migrates from one system to another.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is a vulnerability?

A

Aspects of a system that provide a mechanism for a threat.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is a security model?

A

A precise statement of the rules that the system should implement and the properties it should maintain.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Why do you need a security model?

A

Security is a whole system issue, therefore everyone needs awareness of the risks, policies and warning signs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

List some consequences of being attacked?

A
  • Locked out of systems
  • Damage, time take to re-build and check integrity
  • Reputation damage to the company
  • Fines
  • Lawsuits
  • GDPR violation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Why can new technology be a bad idea?

A
  • users will use it incorrectly unless they have training
  • users will have to change their behaviour which they will resist
  • extra security measures will not be liked and will be circumvented where possible
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What are some criticisms of security models?

A
  • might describe policies you cannot enforce
  • cannot identify every threat this way
  • cannot list every system component
  • how do you introduce new components
  • how do policies map to files and permissions?
  • does the OD provide the needed service
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What is the military model for information access?

A

Individuals and assets have a sensitivity level which describes their permissions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What are some pros and cons of the military information model?

A

Cons:
- Might be forced to fragment documents as people need access to parts but not other sections
Pros:
- Easy to move people/documents to different sections, so fewer mistakes when changing security levels

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

What are ACLs?

A

Access Control Lists - to each asset associate a list of users and their permissions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Pros and cons of ACLs?

A

Cons:
- relies on identity
- looks at assets independantly (how do you make sure everything is consistent?)
- What is the difference between write and append?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

What is RBAC?

A

Role-Based Access Control - A user is given a role, permissions are associated with roles and not users.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

What are some pros and cons of RBAC?

A

Cons:
- basic form is just like ACLs
- Can build very general structures but these could get too complicated to maintain
- need ways to move between roles
- what if a role is revoked
Pros:

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

What are NIST’s five functions?

A

Identify
Protect
Detect
Respond
Recover

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

What are some critiques of NISTs five functions?

A
  • Focus on the process rather than the mechanism
  • Lots of mechanisms could be used in each of the functions
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

What are some features of cryptography other than encryption and decryption?

A
  • can be used to authenticate someone (public-private key)
  • therefore provides non-repudiation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

What is the goal of encryption?

A

Make some data computationally
infeasible to read in an appropriate interval

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

What are the cipher styles and what are they suited to?

A

Stream (data encrypted as it is generated) - suited to network transmissions
Block (data encrypted all in one go) - suited to files

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

Why should you use open source ciphers?

A
  • creating a cipher is very specialised
  • if you make your own you are almost guaranteed to program in weaknesses that will be exploited
  • best algorithms are open source anyway so there is no need
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

What are the pros and cons of symmetric key encryption?

A

Pros:
- Use the same key to talk to different people
- very fast
Cons:
- Don’t know exactly who sent the message if lots of people
use the same key
- How do we get the keys in the first place?
- Can we remove a key from someone?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

What is a keyserver?

A

A repository for public keys

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

Pros and cons of asymmetric encryption?

A

Pros:
- Message can’t be read unless attacker gets access to
receiver’s private key
- Key distribution is easy
- can be used to authenticate users
Cons:
- Orders of magnitude more complex than symmetric-key
encryption

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

What is signing in the context of encrypted messages?

A

Use a private key to encrypt a message or a seperate section of text, which can then be decrypted with your public key in order to check that you are who you say you are.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

How could a keyserver be attacked?

A

Replace someone’s key woth your own.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

What makes passwords insecure?

A
  • They need to be used by humans and therefore both memorable and unpredictable.
  • if you use words then lower entropy because of the english language and the likelyhood of two letters being next to each other
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

What is entropy?

A

The measure of disorder of a system.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

What is Shannon entropy?

A

The number of bits needed to transmit a message X of lenght n. Used for error-correction codingg and compression.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

What us a replay attack?

A

If you get the password once then you can use it against the service you want to attack.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

What is reuse?

A

People use the same password on multiple services.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

What is a key logger?

A

Records all of the keys a user enters.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

Why do policies need to take into ccount human limitations?

A

People can only remember so much. Don’t mandate that they cannot write down passwords and then force them to remember 5 passwords each with 25 random alphanumeric characters

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
47
Q

Pros and cons of biometrics?

A

Pros:
- cannot forget it (always with you, part of you)
- Hard to fake
Cons:
- needs to be stable enough for authentication
- needs to be unintrusive
- lookalikes
- fake fingerprints
- hold the person to the camera/fingerprint reader
- once compromised, very hard to regain security (valid person cannot change their biometrics)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
48
Q

Draw the OS structure.

A

Layers:
- Processes (accessing library and standard library) (multiple)
- Library (multiple)
- Standard Library
- Kernel
- Drivers
- Firmware
- Hardware

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
49
Q

What is kernel space?

A

Has unrestricted access to everything. Root/admin privilages.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
50
Q

What is user space (userland)?

A

Access resources through the kernel. User privilages, all privilaged operations through the kernel.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

What are the points of vulnerability in an OS?

A
  • Accessing other running processes
  • Accessing data inappropriately
  • Accessing hardware resources inappropriately
  • Where did that library come from?
  • What does that driver do?
  • What does that hardware do?
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
52
Q

What is isolation?

A

Processes are kept seperate, with their own memory and list of open files.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
53
Q

What security does isolation provide?

A

A fault in one
program can’t corrupt the memory of another.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
54
Q

How can processes interact even with isolation?

A

Explicity through pipes, sockets or shared blocks of memory.
Implicitly by changing files they both have access to.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
55
Q

What are the responsibilities of thekernel and the user?

A

User:
- All of the programs and the languages
- trust the kernel to isolate from malicious code
Kernel:
- The data structures and functions that need to be standardised for all users and processes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
56
Q

What are traps?

A

Mechanism for crossing the trust boundary into kernel space.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
57
Q

What is a kernel-beneath-the-kernel?

A

A security microkernel:
- Hold sensitive data securely,
potentially even from the kernel
- Sometimes provides checks as to
what software can be loaded,
including kernels
- Isolate security features into as small as possible a code
footprint – which can then be checked extensively

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
58
Q

How does Unix describe permissions?

A

Create groups to describe permissions, each user can be in multiple groups.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
59
Q

What is Security-Enhances Linux?

A

An extension to ordinary Linux that adds better RBAC in place of/alongside groups and file
permissions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
60
Q

What are common services?

A

Anything the OS provides is available to all processes “as standard”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
61
Q

What is full-disk encryption?

A

Use crypto as standard so that all files are encrypted at rest, with no user involvement.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
62
Q

Two virtual machines running on the same physical machine have some differences. What are they?

A

Each has its own kernel and therefore potentially a different operating system and a different sets of users, groups, permissions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
63
Q

What manages the virtual machines running on a host?

A

The hypervisor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
64
Q

What is a container?

A

An isolated userland, instead of a VM. Same kernel, but different libraries, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
65
Q

What is the virtual upgrade problem?

A

Updating the host doesn’t
upgrade the VMs or containers. May end up with outdated, security-compromised software running, and may not even know it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
66
Q

What are the challenges of digital cash?

A
  • No double spending
  • No duplication
  • No repudiation
  • Paying for the infrastructure
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
67
Q

How does bitcoin keep transactions secure?

A
  • cryptographic hash
  • nonce is found which makes it hash to a specific value (0)
  • now if transaction is altered the nonce and hash won’t map to 0.
  • even if you can change one block, each block is connected to another block which will now not match up
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
68
Q

Are you anonymous when using bitcoin?

A

Technically yes, your public identity is just your wallet. However might be able to identify you based on your transactions or if your identity is mapped to your walet then all of your transactions are visible. Also moving crypto into a bank means it will be linked to you.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
69
Q

How does accessing remote machines impact security?

A
  • Fundamentally less information about users
  • More points of attack
  • Often more value in a given attack:
    attack the bank rather than just
    one customer
  • Greater anonymity, harder to track
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
70
Q

What is DDoS?

A

A (Distributed) Denial of Service attack. Prevent anyone from accessing the server, attack a router nearby, or flood with fake traffic to prevent the real trafffic from being processed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
71
Q

What are back doors?

A

A way to log-into or control a system other than through the normal secured channels.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
72
Q

When would you want a back door?

A

A vendor or provider needs to
get in when there’s a problem for the usual route. For use in exceptional cases, so should come with exceptional requirements

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
73
Q

What does ssh use for identification?

A

A keypair/certificates

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
74
Q

How can you identify a machine?

A

MAC or IP address

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
75
Q

What is a DNS?

A

Domain Name System - maps structured network and machine names to IP addresses, gives info to anyone who asks.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
76
Q

What is DNS poisoning?

A

Change a DNS entry and all lookups can be sent to a different machine

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
77
Q

What is a Man-in-the-middle attack?

A

Machine sitting between a user and a legitimate server. Pass information on but only after stealing something. Relies on the (in)ability to identify a specific
machine

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
78
Q

What is a suplpy-chain attack?

A

Instead of attacking the target, attack a service that it uses or downloads software from.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
79
Q

What is a DMZ?

A

A Demilitarised Zone of untrusted services. Basically an area between two firewalls, allows some untrusted clients to connect to DMZ, but not through to the intranet.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
80
Q

What is confidentiality in terms of a message?

A

Traffic can only be read by the sender and the indended recipient.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
81
Q

What is anonymity in terms of a message?

A

Only the sender and intended receiver know of the existence of the message

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
82
Q

What is authentication in terms of a message?

A

Both sender and receiver can demonstrate that they are who they say they are.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
83
Q

What is integrity in terms of a message?

A

The message arrives uncorrupted

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
84
Q

What is non-repudiation in terms of a message?

A

The sender cannot deny that they were responsible for the message

85
Q

What is relay protection in terms of a message?

A

The message cannot be copied and reused.

86
Q

What is efficiency in terms of a message?

A

Scheme must be feasible for target devices

87
Q

Whatv are the layers in teh 5-layer internet model?

A

Application, Transport, Network, Link and Physical

88
Q

What is packet switching?

A

Packets are encapsulated as the descend the layers to be moved

89
Q

Name an attack vector for the application layer.

A

The individual flaws in each individual program deployed (including the OS)

90
Q

Name an attack vector for the transport layer.

A

Record and analyse an individual “flow” or exchange of data over TCP/IP and similar protocols

91
Q

Name an attack vector for the network layer.

A

Capture each packet

92
Q

Name an attack vector for the link layer.

A

Compromise the driver
within the OS

93
Q

Name an attack vector for the physical layer.

A

Cut wires, or otherwise access the hardware.

94
Q

What do IP packets reveal?

A

Routing information, (source and destination addresses, who you’re talking to) and the data being communicated.

95
Q

What is tunnelling?

A

Create a secure passageway through an otherwise insecure network, Traffic through the tunnel is visible, but unreadable.

96
Q

What is IPSec?

A

Secure version of IP - encrypt the payloads of the packets.

97
Q

What is transport mode (IPSec)?

A

Encrypt the payload, leave the routing information intact and unchanged

98
Q

What is tunnel mode (IPSec)?

A

Encrypt both the payload and the IP header as well

99
Q

What are the consequencees of VPNs?

A
  • From user perspective traffic is addressed and sent as normal
  • VPN takes packets and tunnels them elsewhere
  • masks a user’s location
100
Q

What is TLS?

A

Transport Layer Security - leave the network layer unchanged, instead encrypt an entire exchange end-to-end in the transport layer.

101
Q

What does onion routing do?

A
  • different packets take different routes through a network
  • Can’t track back from the destination to a source, only to
    the egress node of the onion
102
Q

Give an example of a protocol or service which uses TLS

A

HTTPS, SSH

103
Q

What are session keys?

A

After securing a single exchange then create a symmetric key shared by both sides, used it to secure an exchange. Thrown away when the connection is torn down.

104
Q

What is Diffie-Hellman Key exchange?

A
  • Take a shared basis, which can be public
  • Each side adds some secret element
  • Synthesise a common secret
  • Don’t disclose enough information for the common secret to be retrieved
105
Q

Outline the steps of a Diffie-Hellman exchange.

A
  • Alice and Bob agree two numbers which do not need to be secret (p and g, both should be prime numbers).
  • Alice chooses secret number a and computes A = g^a mod p (Bob does the same with B and b)
  • Alice computes B^a mod p, Bob computes A^b mod p
  • these calculations are equivalent and so they now have a shared secret!
106
Q

What is a certificate?

A

A claim to an identity, possession of the certificate is the claim. They are also (preferably) tied to a specific machine

107
Q

What are certificate authorities?

A

A CA signs certificates to assert the claims they make are genuine

108
Q

What are certificate bundles?

A

Bundle a set of CA public keys and distribute them in a way that has “reasonable” trust

109
Q

What problem does a certificate bundle solve?

A

The key bundle is then available for checking locally, without accessing a key server, which could be compromised at any time. Compromising keys now requires compromising teh update process

110
Q

What are certificate chains?

A

Allow one CA to sign the keys of other CAs or entities that validate certificates

111
Q

How can code be used as an attack vector?

A
  • install malicious code
  • find an unexpected way to get code to run
  • find an expected way to get code to run - but make it malicious
112
Q

What is a buffer overrun?

A

A program has a buffer to receive data and the attacker provides data that’s actually machine code. The attack relies on returning “too much” data and having the extra data overwrite the call stack. Specifically it re-writes the return pointer, so when the function is called the malicious data is run instead.

113
Q

Give one defensive programming reason for languages to have exceptions.

A

So programmers don’t need to remember to check manually everywhere for errors (like buffer overrun, etc.)

114
Q

Why should you sanitise input?

A

You cannot trust that user input will not be malicious and so you need to sanitise it to make sure it doesn’t compromise your program

115
Q

Why is type-safety good for security?

A

Type-safe languages like Java can avoid some subtle attacks:
- run-time will stop you writing off
the end of a buffer (array) of a given length
- stop you treating an integer as a pointer etc
- can’t pass too many parameters to a function (compiler will complain)

116
Q

What is a security API?

A

An API for controlling program’s permissions

117
Q

How do security APIs work?

A

Refer “sensitive” operations to a security monitor

118
Q

What are some issues with Security APIs?

A
  • Potentially very fine-grained
  • Can be hard to specify
  • Requires us to identify what
    is “sensitive” – and check every time
119
Q

What are sandboxes?

A

An isolated “place” for code to run in. Only code and data in the sandbox can be accessed by code in the sandbox

120
Q

Give an example of computing with limited knowledge using passwords.

A

Instead of storing a plaintext password that someone who could access the database could use, instead store a derivative of a password that you can still check against. (There are still issues with this but it’s a bit better)

121
Q

Describe secure distributed computation (secure multi-party computation).

A

Two or more participants with information that only they know and a computation that needs to be performed.
With a trusted party (agent): every participant can send their private info to the agent, who performs the needed computation and returns the result to every participant.
Real world: all participants communicate using some protocol which decides for each participant what they do next.

122
Q

What is the threat model for secure distributed computation (secure multi-party computation)?

A

M gains control of P_i:
- learns x_i and the result
- cannot learn other secrets
- could influence the computation
M gains control of the agent:
- learns all of the secrets- can send any value as the result including different values to different participants

123
Q

What are secret shares?

A

A value s has to be kept secret. A (t, n)-secret sharing divides s into n pieces, such that AANY set of shares whose size is less than t does not reveal any info about s.

124
Q

What are random oracles?

A

A random function which receives a value x, if it has seen x before it returns the same value as last time. Otherwise it computes, remembers and returns a random value. This can be shared between particpants since x alwasy gives the same answer. We don’t know if x is newly generated or remembered.

125
Q

What is oblivious transfer?

A

One party sends two secrets. Another party sends a bit and receives one of the secrets. The sender doesn’t know which secret was received and the receiver doesn’t know the other secret.

126
Q

What is commitment (component)?

A

Sender sends a secret value, later opens the secret which is passed to the receiver. The sender cannot change the secret, only choose to reveal it.

127
Q

What is a zero-knowledge proof?

A

One party (the prover) creates a value x and a public predicate C. Sends C and x to the component. If C(x) == true the component confirms this to the other party (teh verifier) without revealing x. The verifier knows that a solution exists and the prover knows it but not what it is.

128
Q

What is the difference between malicious and semi-honest participants?

A

Malicious participants can do anything, including not follow protocol, whereas semi-honest participants always follow protocol but can pass unexpected or tailored attack values.

129
Q

What are Garbled Circuits?

A

A party P1 wants to compute a value of F(x0, x1) without learning the secret from another participant
P0 and without revealing its own secret.

130
Q

Detail a case of Garbled Circuits with a small domain.

A
  • Agree a symmetric key algorithm E
  • P0 creates a table T of F(x0, x1) for all pairs of values
  • for each possible x0 and x1, construct a random key
  • encrypt every element of T using the keys of both the row and the column, giving E(T)
  • scramble the rows and columns
  • send E(T) amd k(x0) to P1
  • send all keys (that use the value of x0) created to Oblivious Transfer
  • P1 sends x1 to OT and gets appropriate key
  • use symmetric encryption algorithm to retrieve the value of F(x0, x1)
131
Q

Can oblivious transfer actually be built?

A
  • sender sends x0, x1 to OT
  • reciever generates a keypair (kp, ks) and a public key kp’
  • if b=0, send (kp, kp’) to OT, else send (kp’, kp)
  • OT encrypts x0 and x1 with respective keys and returns them
  • sender can only decrypt the one he selected
  • only works if reciever follows the protocol
132
Q

What is intrusion?

A

An unwanted or unauthorised participant in some interaction.

133
Q

What is reconnaissance?

A

Entering a network to scout-out what’s there. Not an attack but is an intrusion.

134
Q

Give some examples of intrusions

A

Take over a machine, observe a connection, take over a connection

135
Q

Detail how to learn about a network topology without compromising a machine.

A
  • Listen to network topology
  • Find the DNS server
  • Query it (always responds)
136
Q

Give a threat of using only TLS to set up a connection.

A

TLS provides confidentiality but not authentication. Mallory can sit in the middle and pass on request, always giving the correct answer.
Can fix this issue by using certificates to authenticate.

137
Q

What are some issues with certificates?

A
  • Need to trust the certificate signing process
  • Need to trust key management of the person you are questioning
138
Q

How could traffic analysis indicate an intrusion?

A
  • connections to weird machines
  • repeated failures to connect to one of the machines
  • open ports where there shouldn’t be any
139
Q

What are the differences between network-based and host-based intrusion detection systems?

A

Network-based looks at traffic while host-based keeps track of important files. However both typically have a rules engine looking for patterns. Network-based looks for patterns in traffic, host-based looks for patterns in log files.

140
Q

What does an IP or TCP level firewall do?

A
  • Examine the packet headers
  • Don’t examine the payloads
141
Q

What does a deep packet inspection firewall do?

A
  • Looks into the payloads
  • only works for unencrypted traffic
142
Q

What is pen testing?

A

A simulated attack against a system, using tools real attackers would use against real vulnerabilities.

143
Q

What are some characteristics of cloud systems?

A
  • usually physically secure
  • exposed to DDoS and remote access
144
Q

What are some characteristics of edge devices?

A
  • more exposed
  • less centeral admin oversight
145
Q

What are some characteristics of endpoint devices?

A
  • often user managed
  • physically vulnerable
146
Q

Why provide edge services?

A
  • closer to endpoints, so often faster
  • fewer network points to attack
147
Q

What gets put on the endpoints?

A
  • Often significant client-side programming
  • Avoid loading servers and incurring delays by
    performing validity-checking, UI, etc, locally
  • Potentially remain available even
    if the network is lost
148
Q

What are the security impacts of placement of edge and endpoint devices?

A
  • Often outwith the control of central admin
  • May adopt different (weaker?) policies
149
Q

How does user interaction with phones change their security needs?

A
  • Phones are expected to allow rapid, short-length interactions which prioritise convenience and speed
  • No hover feature (phishing links)
  • users find 2FA frustrating
  • data opens alongside the phone (biometrics may make it easy to force open)
  • device tracking and partial wipe if data lost are objectionable on personal phones, maybe give out work phones
  • users don’t want to carry around 2 phones
150
Q

What are the features of the cloud?

A
  • Elastic, essentially unlimited computing
  • Physically secure in a data centre
  • Protected by IDS, firewalls, …
  • Has to be accessed over the internet
151
Q

List some attack vectors against the cloud.

A
  • Management needs to happen via the internet so all of the usual issues with remote logins and the hypervisor may expose info to other tenants
  • Provider itself who by definition has root access to all the machines and can probably read all the file systems
  • lots of cooperating services, any one of which could contain an exploit
152
Q

What changes in regards to admin when using cloud computing?

A

Can be automated in the cloud (when they’d usually require a sysadmin)
- spinning up new servers, storage
- deploying new services
- Entirely new services (e.g. automated load balancers)

153
Q

What effect does cloud have on security?

A
  • Hard to get the initial security set-up right (how to get at certificates, suthenticate new instance, etc)
  • disc encryption is only of limited use if the keys are stored online
  • Essentially constructed a man in the middle
154
Q

What is perimeter security architecture?

A

Add defence zones with firewalls between them, assumption being that any traffic within each network zone is there appropriately. No checks on traffic except with the firewalls.

155
Q

Whaat is zero-knowledge storage?

A

Server holds data encrypted without the keys.

156
Q

What is a zero trust architecture?

A

Treat all machines as suspect, evne if deployed by us. Everything authenticates at every exchange.

157
Q

How do you make sure that certificates are only available to the proper machines?

A

Put the management software elsewhere, provide the keys only at run-time when a service spins up

158
Q

Pros and Cons of automating complete re-building on spin-up?

A
  • Easier to ensure consistency: users, keys, roles, etc. Code it once and reuse
  • Can be automated as part of a CI/CD pipeline so that changes to the system automatically deploy it
  • Not all services are easy to use this way
159
Q

What is CI/CD?

A

Continuous integration/Continuous deployment - runs all tests at every major commit, then deploys the newly-coded services automatically when they’re updated

160
Q

What is a virus?

A

Self-propagating software, moves from machine to machine.
A deployment mechanism for a payload (exploit vulnerability to get the payload onto the target machine)

161
Q

What are some attack vectors that a virus could exploit?

A
  • email attachment
  • email link
  • social side (get user to interact)
162
Q

How does access control affect viruses?

A

A virus is executed by a process which is associated with some user, therefore only has the privileges of this user. So the better the access control then the less damage a virus can do (could still be very bad)

163
Q

What are zero-day exploits?

A

Exploits that have never been used before

164
Q

What is a rootkit?

A

A piece of software that lets an ordinary user become an administrator (privilege elevation)

165
Q

What is ransomware?

A
  • Installs rootkit
  • encypts entire disk
  • offers to decrypt disk for ransom
166
Q

What is a botnet?

A

A virus that doesn’t actually attack the target it’s installed on, instead taking control of it and giving it orders.

167
Q

What is a signature in relation to viruses?

A

Identify a pattern within the code of a virus which distinguishes its code from everything else. Look for this signature in files

168
Q

What are polymorphic viruses?

A

Change their code at each spreading event to evade detection: break up code signature, re-write basic blocks, re-arrange them, change jumps, etc.

169
Q

What are some network features that are of interest to sefcurity?

A
  • How are nodes connected to other nodes?
  • How do I “get from” one node to another?
  • Can I always “get” between nodes?
170
Q

What is degree (network)?

A

Degree is the number of immediate neighbours a node has. Maximum degree is N – 1 (cannot have multiple connections to the same node)

171
Q

What is density?

A

Density is the fraction of edges a node has compared to how many it could have

172
Q

What is the degree distribution?

A

pdistribution of degree across network.

k is the probability that a node chosen at random will have degree k

173
Q

Give some properties of ER networks.

A

Degree distribution is a bell curve.
Not very tolerant of failure.
Resilient to attacks.

174
Q

Give some properties of Powerlaw Networks.

A

Degree distribution decreases exponentially quickly.
When routing go for the hubs.
Tolerant of failure.
Not resilient to attacks.

175
Q

What network distribution is the internet?

A

Powerlaw.

176
Q

What is degree centrality?

A

Highest value(s) of k such that pk > 0. (Hubs)

177
Q

What is betweenness?

A

Compute the shortest path between nodes, compute what fraction of those paths goes through each node. High betweenness is being on a lot of short, efficient routes

178
Q

What effect does network have on viruses?

A

Viruses will naturally find their ways to hub and spread a lot easier there (powerlaw is vulnerable)

179
Q

What is operational security?

A

Maintain security as a basic part of operations, integrate into normal activities

180
Q

Why is it hard for people apply security practuises to computers?

A
  • Establishing a habit is hard
  • Computer is mostly less tangible
  • Don’t realise how much valuable data they leave online
  • Still think the attackers are people, rather than bots
  • Some attacks are too complicated to imagine
181
Q

What are side channels?

A

A way to extract or infer information without performing a direct attack or exploiting a
technical weakness or bug

182
Q

Give some example of side channel attacks?

A
  • Who is talking to whom? – even if we can’t read it
  • Has their pattern of communication changed?
  • Has a machine suddenly started using a lot more power?
  • Is an operation suddenly a lot slower?
183
Q

What is a social engineering attack?

A

Get some information changed by persuading someone it’s needed/appropriate/allowed

184
Q

What is social media linkage?

A

People re-use social media handles

185
Q

What is linkage analysis?

A

Know someone and infer their links, identifying one may allow you to identify others based on who they talk to.

186
Q

Whaat are some countermeasures for protecting patterns of sending information in a network?

A
  • mask patterns in movement, make everything look the same.
  • add random traffic
  • add traffic to make other participants look more important than they are
187
Q

What are leaky content types?

A

Some content types in web pages leak information.

188
Q

List some purposes of policies.

A
  • Specify people’s responsibilities
  • Specify guarantees of work standard
  • Specify technologies, or the properties of technologies,
    or the use of standards
189
Q

What are the buisness/legal goals of policies?

A
  • minimise service downtime
  • avoid user data loss
  • devise a set of behaviours that deliver the business while
    complying with necessary restrictions
190
Q

What are the technology goals of policies?

A
  • specify the properties of solutions
  • mandate specific technology
191
Q

Why do you need to be able to enforce policy?

A
  • forces a sense of reality
  • cost/benefit analysis
  • forces prioritisation
  • stops policy demanding the impossible
192
Q

What is operationalisation?

A

The act of taking a policy and turning it into a technological solution

193
Q

What are the different classes of backups?

A

Snapshots: possibly taken every few minutes and probably held locally
Epoch: a complete dump of the data
Dailies: taken every day and diff’ed against the epoch to save space

194
Q

What are some security issues with file synchronisation?

A

Propagates changes in both directions and therefore may propagate attacks like viruses.

195
Q

What is dead storage?

A
  • reduced access from the main systems
  • need a policy for access
  • could conflict with other goals, like allowing people to get old versions of files
196
Q

How can you tell if a file has been corrupted?

A

Store a hash at every legitimate change and periodically check these.
Check if it has been encrypted is harder.

197
Q

What is replication (files)?

A

Keep all data in several independent locations, send all database queries to main and backup servers

198
Q

Describe different replica styles.

A

Hot: if the main server fails the backup takes over transparently
Warm: sysadmins can spin up the backup quickly

199
Q

What are the issues of replicas being located across a DMZ?

A
  • Need to be able to operate with un-timely data (so not completely up to date)
200
Q

How do you deal with re-synchronisation for backups/replica?

A
  • resolve consistancy issues
  • ensure the data is self-consistent
201
Q

What are the different security concerns for session vs stateless APIs?

A

Sessions:
- Alice has an extended identity
- Probably need to keep the
connection secured and open
- open connection may be easier for programmers to use
Stateless:
- Server services a request and
then forgets all about Alice
- Lots of re-authentication
- may be harder to express some operations

202
Q

What are IoT devices?

A

Systems with sensors attached to the internet

203
Q

Why are they migrating to the internet? IoT

A
  • The massive convenience of using IP
  • Available chipsets, libraries, infrastructure, …
  • Leverage other IP-based things, like HTTP
204
Q

What are the characteristics of IoT devices?

A

Typically:
- wireless
- low-power
- physically exposed

205
Q

What are some attacks on IoT devices?

A
  • might use clear communication if encruyption is too power hungry
  • how does it get crypto keys
  • can the hardware be tampered with?
  • replace components
  • contain keys to other services
  • distort recorded data
206
Q

What are some sources of entropy on a desktop/laptop?

A

Keystrokes, network packet
arrival times, disc accesses,
process context switches

207
Q

How is entropy effected with IoT devices?

A
  • Typically have less going on than laptop/computer
  • fewer entropy sources to draw on
  • less variation in random numbers
  • weaker crypto
208
Q

Why are specialised keys helpful?

A

Carve-up access space, allocate one key per role. Limit impact of a stolen key, escpecially important if on a vulnerable device.

209
Q

What are PUFs?

A

Physical Uncloneable Functions - flaws in hardware unique to each instance of a device. Take the flaws and use them to get entropy, this creates a random but repeatable function.

210
Q

Can PUFs be used for challenge/response?

A

Yes - challenge with stimuli and the response is tthe value. Need to be careful of spoofing and replays. This is authentication, not confidentiality.

211
Q

Do consumer devices have good security (IoT)?

A

No. Easily copied, low-security protocols (often not even HTTPS), non-unique keys, standard admin passwords,…