HoneyTrap

Team Name

Honeycomb

Timeline

Fall 2023 – Spring 2024

Students

  • Jair Rea
  • Hugo Mendoza
  • Raed Ali
  • Joshua Catalan
  • Praisy Daniel

Sponsor

Magnus Opus LLC

Abstract

In the digital age, platforms like Facebook increasingly serve as hotspots for fraudulent activities, with the elderly frequently falling victim. These activities range widely, from personal information deception to money theft. Such scams can lead to significant financial losses and emotional turmoil for those impacted. To address this growing concern, the HoneyTrap AI chatbot was initiated. The objective of the project is to minimize scam incidents by allowing the AI chatbot to engage with potential scammers, identify scam patterns, look out for specific keywords that may flag the conversation as suspicious, and provide a real time database of scammer lists to shield the users. The AI chatbot is designed to continuously learn and adapt its identification methods based on what the chatbot learns from the potential scammers and evolving its scam detection radar.

Background

In response to the alarming rise in online scams targeting vulnerable individuals, particularly widows like our sponsor’s great aunt, our project takes a proactive approach. We aim to tackle this issue head on by creating a fictitious Facebook account posing as a vulnerable widow, designed to attract and engage with scammers. Drawing from the experiences of our sponsor’s great aunt, who fell victim to such scams, we understand the sophisticated tactics employed by these fraudsters, including psychological manipulation and the extraction of personal and financial information.

Additionally, we are developing a chatbot that will automatically post and message potential scammers. Through this interaction, we intend to gather details that indicate that they are in fact a scammer and put them on a scammer database that will be displayed on our project’s website. By strategically employing techniques like misinformation and insincere technological difficulties, we aim to turn the tables on these criminals and prevent further victimization. Our ultimate goal is to raise awareness, protect vulnerable
individuals, and contribute to the dismantling of online scam networks.

Project Requirements

List highest priority requirements here (top 10)

  1. Making our a chatbot that replies to messages when sent to it
  2. Making a system to store the chat logs of each user by their Facebook ID
  3. Connecting our chatbot code to Selenium
  4. Tuning our chatbot to act like a vulnerable elderly widow
  5. Use AI to generate Facebook posts of the widow talking about our day
  6. Automate the process of posting those generated posts to Facebook to attract scammers
  7. Tweaking our AI to recognize scammers and to flag those scammer’s user id as scammers
  8. Making the database to hold the records of all the confirmed scammers
  9. Making the website that will hold our scammer data base while also spreading awareness of our issue
  10. Use the chat logs supplied to us by our sponsor to train our AI to act like a more genuine and human widow

System Overview

Below we have our sub-system diagram

  • The chatbot control is basically the main code that connects everything together. It calls the script to run the LLM code for our bot to reply to direct messages and accept friend requests every 6 hours. It calls another script to run our code to make a new Facebook post and it does this every 24 hours.
  • The LLM code is what connects chatgpt to our code. We use chatgpt to make the messages we send to people who message the bot. We also use chatgpt to determine if a user is acting like a scammer. We are also training the bot in the LLM portion by using the chat logs supplied to us by our sponsor of his great aunt being scammed, we train our bot to act similar to his aunt and look for scammers who act similar to the people she was talking to.
  • The communication code is used to send the messages we generated with chatgpt to the people messaging the bot. It’s also used to detect messages and friend requests.
  • The account profile is the page run by our bot. It includes all the posts we made with the account, the description of our profile, and the profile picture we set.
  • The report system, now we still are working on this, but after chatgpt has flagged a user, later in the code we will add that user to the scammer database we have on Firebase.
  • The web scraping code, now we could have given this a better name, but this part of the code is mostly the things Selenium does. We used selenium to read the messages that were sent to our account. This is done by using selenium to scrape the page for messages on the page. It is also here where the Facebook posts are posted from, we originally used chatgpt to generate a post for the day earlier in the code and this part of the code takes that generated post and posts it with Selenium.

Results

Demo Video

Results

Above we have some of the AI-generated Facebook posts we made to attract the attention of scammers

  • Our bot interacting with an actual scammer
  • Below we have the chat log file for that user where it was logged by our code that he was a scammer at the end of the link
  • Below is the AI-generated image we used to represent our widow on Facebook
  • Sometimes our Facebook selenium code stops working due to updates. However, if you wish to interact with our bot’s AI we separated the chatbot’s AI into one replit environment (link). You would just need a replit account and log in to run the code. You enter your name 1st and there will be a chat log file created for that name or if it’s an already existing name it’ll read through the previous logs. And the widow will reply to your messages.
  • Here’s also the link to the Facebook account we made for this project (Profile Link)
  • Below is our website which stores our scammer database

Future Work

In the future, we plan to add a fake obituary entry for the fake deceased husband for our fake widow. If we were to do this, we may have more people contacting our fake widow. Also since Facebook is constantly updating we will need to update our selenium code in order to maintain the code. The selenium code basically searches for certain paths in the XML, since Facebook is always updating the structure and paths in the code can change and thus we will have to change the selenium code slightly to adapt to these changes in the Facebook code. We also have to put our website on the internet, right now it’s just running locally.

Project Files

Project Charter (link)

System Requirements Specification (link)

Architectural Design Specification (link)

Detailed Design Specification (link)

Poster (link)

References

Selenium WebDriver. (n.d.). Selenium. [Software], Midjourney[Software], Firebase,

OpenAI. (2023). OpenAI Python Library (Version 0.27.8). [Software Library]. Richardson, L. (n.d.). BeautifulSoup. [Software Library]

Requests. (n.d.). Requests: HTTP for Humans. [Software Library].

Firebase. (n.d.). Firebase. [Backend-as-a-Service Platform].

MidJourney. (n.d.). MidJourney: Framework. [Algorithmic & Creative Solutions].

pxd1360