0
0
Testing Fundamentalstesting~20 mins

Authentication vulnerability testing in Testing Fundamentals - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Authentication Testing Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Common Weakness in Authentication Systems

Which of the following is the most common authentication vulnerability that allows attackers to bypass login without valid credentials?

ASQL Injection in login form
BCross-Site Scripting (XSS) in user profile
CInsecure Direct Object Reference (IDOR) in file access
DOpen Redirect in logout URL
Attempts:
2 left
💡 Hint

Think about how attackers can trick the system into accepting wrong usernames or passwords.

Predict Output
intermediate
2:00remaining
Output of Authentication Check Code

What is the output of the following Python code simulating a simple password check?

Testing Fundamentals
def check_password(input_password):
    stored_password = 'Pass1234'
    if input_password.lower() == stored_password.lower():
        return 'Access Granted'
    else:
        return 'Access Denied'

print(check_password('pass1234'))
ATypeError
BAccess Granted
CAccess Denied
DSyntaxError
Attempts:
2 left
💡 Hint

Check how the comparison is done with lower() method.

assertion
advanced
2:00remaining
Correct Assertion for Password Length Validation

Which assertion correctly tests that a password string has at least 8 characters?

Testing Fundamentals
password = 'securePass'
# Choose the correct assertion below
Aassert password.size >= 8
Bassert password.length > 8
Cassert len(password) > 8
Dassert len(password) >= 8
Attempts:
2 left
💡 Hint

Remember Python uses len() function and >= means 'at least'.

🔧 Debug
advanced
2:00remaining
Identify the Bug in Authentication Code

What is the bug in this JavaScript authentication snippet?

Testing Fundamentals
function authenticate(userInput) {
  const password = 'Secret!';
  if (userInput === password) {
    return 'Logged In';
  } else {
    return 'Access Denied';
  }
}
console.log(authenticate('Secret!'));
AUses assignment (=) instead of comparison (===) in if condition
BPassword variable is not declared properly
CFunction does not return any value
DConsole.log syntax is incorrect
Attempts:
2 left
💡 Hint

Check the if condition operator carefully.

framework
expert
3:00remaining
Best Practice for Testing Authentication Rate Limiting

Which testing approach best verifies that an authentication system properly limits login attempts to prevent brute force attacks?

ATest password reset functionality for valid email
BManually enter correct password once and verify access
CAutomate rapid login attempts with invalid passwords and check for lockout response
DCheck UI layout of login page on mobile devices
Attempts:
2 left
💡 Hint

Think about how to simulate many wrong tries quickly.