Skip to content

Commit 17543d4

Browse files
feat: Add support for more platforms and enhance scam detection
This commit expands the social media analyzer tool to support a wider range of platforms and enhances scam detection capabilities. The following platforms have been added: - Viber - Signal - Badoo - Binance The changes include: - Updating the platform list in `main.py`. - Adding legitimate domains and updating suspicious URL patterns in `heuristics.py`. - Adding platform-specific advice for the new platforms in `fake_profile_detector.py`. - Enhancing email analysis advice with Gmail-specific tips. - Adding Forex-related keywords to the scam detection engine to improve its effectiveness against financial scams.
1 parent 1417aee commit 17543d4

File tree

4 files changed

+32
-5
lines changed

4 files changed

+32
-5
lines changed
278 Bytes
Binary file not shown.

social_media_analyzer/fake_profile_detector.py

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,28 @@
107107
"Carefully examine the sender's email address for any misspellings or unusual domains.",
108108
"Be suspicious of emails that create a sense of urgency or pressure.",
109109
"Never click on links or download attachments from unsolicited or unexpected emails.",
110-
"Check for generic greetings like 'Dear Customer' instead of your name."
110+
"Check for generic greetings like 'Dear Customer' instead of your name.",
111+
"In Gmail, look for the 'verified sender' checkmark for well-known brands."
112+
],
113+
"viber": [
114+
"Be wary of messages from unknown numbers, especially those containing links or asking for money.",
115+
"Check the profile of unknown contacts for any suspicious information.",
116+
"Viber will never ask for your personal information or login details in a message."
117+
],
118+
"signal": [
119+
"Be cautious of message requests from people you don't know.",
120+
"Signal is end-to-end encrypted, but that doesn't protect you from scams if you interact with a scammer.",
121+
"Do not share your PIN or personal information with anyone."
122+
],
123+
"badoo": [
124+
"Be wary of users who immediately ask to move the conversation to another platform.",
125+
"Look for the 'verified user' badge on profiles.",
126+
"Be cautious of profiles that seem too good to be true or have professional-level photos."
127+
],
128+
"binance": [
129+
"Be suspicious of anyone asking for your API keys, passwords, or 2FA codes.",
130+
"Double-check the domain name of the Binance website before logging in (binance.com).",
131+
"Binance support will never ask you to send them cryptocurrency."
111132
]
112133
}
113134

social_media_analyzer/heuristics.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@
2626
"vk": ["vk.com"],
2727
"reddit": ["reddit.com", "old.reddit.com"],
2828
"email": [],
29+
"viber": ["viber.com"],
30+
"signal": ["signal.org"],
31+
"badoo": ["badoo.com"],
32+
"binance": ["binance.com"],
2933
"general": ["google.com"]
3034
}
3135

@@ -59,7 +63,9 @@
5963
"guaranteed", "risk-free", "earn money fast", "work from home easy",
6064
"investment opportunity", "high return", "get rich quick",
6165
"inheritance", "unclaimed funds", "nigerian prince",
62-
"free followers", "pro account for free", "verified badge" # Social media specific
66+
"free followers", "pro account for free", "verified badge", # Social media specific
67+
"forex", "fx trading", "guaranteed profit", "trading signal", "forex robot",
68+
"metatrader", "mt4", "mt5", "copy trading", "pamm"
6369
]
6470

6571
# Generic greetings/salutations that can be suspicious in unsolicited contexts
@@ -115,8 +121,8 @@
115121
# These patterns aim to catch URLs that impersonate legitimate domains.
116122
SUSPICIOUS_URL_PATTERNS = [
117123
# Impersonation using subdomains or hyphens
118-
r"https?://(?:[a-z0-9\-]+\.)*(?:facebook|fb|instagram|whatsapp|tiktok|tinder|snapchat|wechat|telegram|twitter|pinterest|linkedin|line|discord|teams|zoom|amazon|alibaba|youtube|skype|vk|reddit)\.com\.[a-z0-9\-]+\.[a-z]+",
119-
r"https?://(?:[a-z0-9\-]+\.)*(?:facebook|fb|instagram|whatsapp|tiktok|tinder|snapchat|wechat|telegram|twitter|pinterest|linkedin|line|discord|teams|zoom|amazon|alibaba|youtube|skype|vk|reddit)-[a-z0-9\-]+\.[a-z]+",
124+
r"https?://(?:[a-z0-9\-]+\.)*(?:facebook|fb|instagram|whatsapp|tiktok|tinder|snapchat|wechat|telegram|twitter|pinterest|linkedin|line|discord|teams|zoom|amazon|alibaba|youtube|skype|vk|reddit|viber|signal|badoo|binance)\.com\.[a-z0-9\-]+\.[a-z]+",
125+
r"https?://(?:[a-z0-9\-]+\.)*(?:facebook|fb|instagram|whatsapp|tiktok|tinder|snapchat|wechat|telegram|twitter|pinterest|linkedin|line|discord|teams|zoom|amazon|alibaba|youtube|skype|vk|reddit|viber|signal|badoo|binance)-[a-z0-9\-]+\.[a-z]+",
120126
# Common URL shorteners
121127
r"https?://bit\.ly",
122128
r"https?://goo\.gl",

social_media_analyzer/main.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ def main():
66
print("--- Social Media Analyzer ---")
77
print("This tool helps you analyze social media profiles and messages for potential scams.")
88

9-
platforms = ["facebook", "instagram", "whatsapp", "tiktok", "tinder", "snapchat", "wechat", "telegram", "twitter", "pinterest", "linkedin", "line", "discord", "teams", "zoom", "amazon", "alibaba", "youtube", "skype", "vk", "reddit", "email"]
9+
platforms = ["facebook", "instagram", "whatsapp", "tiktok", "tinder", "snapchat", "wechat", "telegram", "twitter", "pinterest", "linkedin", "line", "discord", "teams", "zoom", "amazon", "alibaba", "youtube", "skype", "vk", "reddit", "email", "viber", "signal", "badoo", "binance"]
1010

1111
while True:
1212
print("\nSelect the social media platform you want to analyze:")

0 commit comments

Comments
 (0)