indentification Flashcards
1 reason why does a service provider need to track the identity of users requesting its services
the user identity is a parameter in access control decision
user identities aren’t always necessary to access control
2nd reason why does a service provider need to track the identity of users requesting its services
the user identity is recorded when logging security relevant events in an audit trail
identities are more useful in audit logs, for accountability
entity authentication
process where one party is assured on the identity of a second party in protocol
objectives of entry authentication
- honest participant A can successfully authentication itself to the verifier B
- Transferability: B can’t re-use A’s identification to impersonate A to another party
- the probability that a third party C, distinct from A, playing the role of A, can cause B to accept A’s identity is negligible
what is a relay attack
alice pays bob, bob thinks he’s sending alice’s payment info to alice, but really he’s sending it to chloe, who’s impersonating alice (relays authentication credentials) . Chloe sends that shit to dennis, the menace. Like, chloe? Chloe.
what is a relay attack also called
also called a mafia fraud attack
what is WEAK and SIMPLE authentication
password based
unilateral, meaning one entity proves its identity to the verifier
proves knowledge of the secret by giving up the secret
what is strong authentication
- Involves mutual authentication; both parties take both the roles of claimant and verifier:
- Challenge-response protocols: sequence of steps to prove knowledge of shared secrets.
- Prove knowledge of secret WITHOUT giving up the secret
salting
Salt is random data that is used as an additional input to a one-way function that “hashes” a password. Salts are used to safeguard passwords in storage. The primary function of salts is to defend against dictionary attacks. basically its a nonce.
Password storage security relies on a cryptographic construct called one-way function
A one-way function 𝒇𝒇 is a function that is
relatively easy to compute but hard to
reverse.
• Given an input 𝑥𝑥 it is easy to
compute 𝑓𝑓(𝑥𝑥), but given an output 𝑦𝑦
it is hard to find 𝑥𝑥 so that 𝑦𝑦 = 𝑓𝑓(𝑥𝑥)
Hash functions are an example of one-way function: • A hash function 𝑓𝑓 takes an input 𝑥𝑥 of arbitrary length, and produces an output 𝑓𝑓(𝑥𝑥) of fixed length.
Suppose H is a hash function. We say H satisfies:
Pre-image resistant if given a hash value 𝑦𝑦, it is computationally infeasible to find 𝑥𝑥 such that 𝐻𝐻(𝑥𝑥) = 𝑦𝑦.
Collision resistant if it is computationally infeasible to find a pair (𝑥𝑥, 𝑦𝑦) such that 𝑥𝑥 ≠ 𝑦𝑦 and 𝐻𝐻(𝑥𝑥) = 𝐻𝐻(𝑦𝑦).
fucking dumb storing plaintext passwords
• Passwords stored in plaintext.
• Claimant’s password is checked against the
database of passwords.
• No protection against insider (system admin) or
an attacker who gains access to the system.
Hence dispute is possible!
why are hashed and encrypted passwords good
• Passwords are encrypted, or hashed, and only
the encrypted/hashed passwords are stored.
• Claimant’s password is hashed/encrypted, and
checked against the database of
hashed/encrypted password.
• Some degree of protection against
insider/attacker
passwords at the application level, why might it be eksies
passwords may be temporarily held in intermediate storage locations like buffers, caches or web pages
The management of these storage locations is normally beyond the control of the user; a password may be
kept longer than the user has bargained for
what are the attacks on passwords
offline guessing attacks like exhaustive attacks and dictionary attacks
phishing and spoofing
what is an offiline guessing attack
attack where attacker obtains the hashed passwords, then attempts to guess the passwords
This is a plausible threat, due to:
many incidents of stolen (hashed) passwords as a consequence of hacks on servers.
usage of the same passwords across different accounts; so compromise of a password for one account
affects other accounts.
what is a brute force attack
Brute force guessing attack against passwords tries to guess password
by enumerating all passwords and their hashes in sequence, and check whether they match the target hashes.
A measure against brute force attack is to increase the space of possible passwords, e.g., longer passwords, allowing more varieties of symbols (alphabets, numerals, signs).
A measure of the strength of passwords against brute-force attack is based on what thing
the concept of entropy from information theory.
it’s log2 of the search space.
so er, like, “ Suppose the set of passwords 𝑋𝑋 is drawn from any 5 character strings, each character
ranges from ‘a’ to ‘z’.=, then search space is 26^5. so entropy is log2(26^5) which is 23.5. I guess bring a calculator.
erm, somehow, the approximate number of guesses needed is 2^23.5. okay I guess mathwise that makes sense when you consider the log
how to prevent brute force attack
choose password with high entropy
why do we suck at preventing brute force attack
However, hashed passwords, especially for human-generated passwords, are still vulnerable to dictionary attack.
This exploits weakness in human-chosen passwords, which tend to derive from words in natural languages.
what is the pre computed hash table strategy for cracking hashed passwords
A strategy for cracking hashed passwords is to pre-compute a hash table, containing pairs of passwords and
their hashes.
• If we have 𝑘𝑘 password candidates and each hash has 𝑛𝑛 bit, then we have a table of size 𝑘𝑘 × 𝑛𝑛.
• This may not be practical if 𝑘𝑘 is large.
- Hash tables are often represented using a data structure called rainbow table.
- Not all hashes are stored; some will be computed from the stored hashes.
- Not all hashes are represented.
- Tradeoff between space requirement and query time
Salting describe more pl0x
• To reduce the effectiveness of offline attacks using
pre-computed hashes, a salt is added to a password
before applying the hash function.
• A salt is just a random string.
• Each password has its own salt.
• The salt value is stored along with the hash of password+salt.
• So the salt is not secret.
• For a salt of 𝑛𝑛-bit, the attacker needs to precompute 2𝑛𝑛 of hashes for the same password.
password policies rap
set a password a mass of words dont let it age
limit the logins and don’t default to basic (preset) names
then tell the user of who(is) trying to get his name
he’s gotta change he’s gotta make up a passphrase
or draw on a interface or he’ll pick some dogs outofa picture frame
pause
then tell he’s got an OTP
what’s an OTP
just one time just tell me
alt forms of passwords rap
he’s gotta change he’s gotta make up a passphrase
or draw on a interface or he’ll pick some dogs up outta a picture frame
then tell he’s got an OTP
what’s on OTP
just one time just tell me