Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Understanding Phishing and Social Engineering
📖 Scenario: You work in a cybersecurity awareness team. Your task is to create a simple program that helps identify phishing attempts and social engineering tactics by analyzing email messages.
🎯 Goal: Build a Python program that stores example email messages, sets a suspicious keyword list, checks each email for these keywords, and flags suspicious emails.
📋 What You'll Learn
Create a dictionary called emails with three example emails as keys and their content as values.
Create a list called suspicious_keywords containing words often used in phishing or social engineering.
Write a loop that checks each email content for any suspicious keyword and stores the result in a dictionary called flags.
Add a final step to count how many emails were flagged as suspicious.
💡 Why This Matters
🌍 Real World
This project simulates how cybersecurity teams detect phishing and social engineering attempts by scanning email content for suspicious signs.
💼 Career
Understanding phishing detection is essential for cybersecurity analysts, IT support, and anyone responsible for protecting users from online scams.
Progress0 / 4 steps
1
Create the emails dictionary
Create a dictionary called emails with these exact entries: 'email1' with value 'Your account has been suspended. Click here to verify.', 'email2' with value 'Meeting agenda for tomorrow attached.', and 'email3' with value 'Urgent: Update your password immediately.'.
Cybersecurity
Hint
Use a Python dictionary with keys 'email1', 'email2', and 'email3' and assign the exact string values.
2
Set suspicious keywords list
Create a list called suspicious_keywords containing these exact words: 'suspended', 'urgent', 'verify', and 'password'.
Cybersecurity
Hint
Use a Python list with the exact words as strings.
3
Flag suspicious emails
Create an empty dictionary called flags. Then use a for loop with variables email_id and content to iterate over emails.items(). Inside the loop, set flags[email_id] to true if any word from suspicious_keywords is found in content (case insensitive), otherwise false.
Cybersecurity
Hint
Use a dictionary to store flags. Convert content to lowercase to check keywords case-insensitively. Use any() with a generator expression.
4
Count flagged emails
Create a variable called count_flagged and set it to the number of emails in flags that have the value true.
Cybersecurity
Hint
Use sum() with a generator expression to count true values in flags.
Practice
(1/5)
1. What is the main goal of a phishing attack?
easy
A. To trick people into giving personal information
B. To physically steal a computer
C. To improve internet speed
D. To update software automatically
Solution
Step 1: Understand phishing purpose
Phishing attacks use fake messages to deceive people.
Step 2: Identify the attack goal
The goal is to steal personal or sensitive information by tricking users.
Final Answer:
To trick people into giving personal information -> Option A
Quick Check:
Phishing = stealing info by tricking [OK]
Hint: Phishing steals info by fake messages [OK]
Common Mistakes:
Confusing phishing with physical theft
Thinking phishing improves technology
Believing phishing updates software
2. Which of the following is a common sign of a phishing email?
easy
A. An email asking for your password urgently
B. An email from a known contact with no links
C. A newsletter you subscribed to
D. A system update notification from your computer
Solution
Step 1: Identify phishing email traits
Phishing emails often create urgency and ask for sensitive info like passwords.
Step 2: Match the option to phishing signs
An email asking for your password urgently shows urgency and password request, a common phishing tactic.
Final Answer:
An email asking for your password urgently -> Option A
Quick Check:
Urgent password request = phishing sign [OK]
Hint: Urgent password requests often mean phishing [OK]
Common Mistakes:
Thinking all emails from contacts are safe
Confusing newsletters with phishing
Assuming system updates ask for passwords
3. Consider this message: "Your account will be locked in 24 hours. Click here to verify." What is the most likely purpose of this message?
medium
A. To warn about a real account issue
B. To update account settings securely
C. To steal login details through a fake link
D. To provide customer support contact
Solution
Step 1: Analyze message content
The message creates urgency and includes a suspicious link.
Step 2: Identify phishing behavior
Fake links are used to steal login details by tricking users.
Final Answer:
To steal login details through a fake link -> Option C
Quick Check:
Urgency + fake link = phishing attempt [OK]
Hint: Urgent messages with links often steal info [OK]
Common Mistakes:
Believing all urgent messages are real
Clicking links without checking URL
Assuming links always lead to safe sites
4. You receive an email that looks like it's from your bank but the sender's address is support@bank-secure.com. What is the best action to take?
medium
A. Reply asking for more details
B. Verify the sender's address and contact the bank directly
C. Click the link to check your account immediately
D. Forward the email to friends to warn them
Solution
Step 1: Check sender's email carefully
The sender's address looks suspicious and not official.
Step 2: Choose safe verification method
Contacting the bank directly using official channels avoids phishing risks.
Final Answer:
Verify the sender's address and contact the bank directly -> Option B
Quick Check:
Verify sender + direct contact = safe action [OK]
Hint: Always verify sender and contact official source [OK]
Common Mistakes:
Clicking suspicious links immediately
Replying to unknown senders
Sharing suspicious emails without checking
5. A social engineer tries to gain access to a company by pretending to be a trusted delivery person. Which of the following is the best way to prevent this type of attack?
hard
A. Share passwords with delivery staff for convenience
B. Allow anyone with a delivery badge inside
C. Ignore all visitors to avoid risk
D. Verify identity and delivery details before granting access
Solution
Step 1: Understand social engineering tactics
Attackers use trust and fake identities to gain access.
Step 2: Identify proper security response
Verifying identity and delivery details prevents unauthorized entry.
Final Answer:
Verify identity and delivery details before granting access -> Option D
Quick Check:
Verify identity = prevent social engineering [OK]
Hint: Always verify before trusting visitors inside [OK]