Inspiration

We were inspired by the malware analysis class at our school. Because we liked the class so much, we would sometimes try talking to others about the class, but it was sometimes difficult to explain the concepts. To reduce this struggle, we wanted to create a hands-on way for people to engage with malware analysis. We had a lot of fun studying malware analysis and hope to make this field more accessible for others.

What it does

This is a web application designed to challenge people on their static analysis skills. Users are able to upload potentially malicious files and review key features of the file to determine whether it is malicious or benign. After making their choice users can review some malware analysis knowledge to make a better decision next time.

How we built it

This application is built with a Flutter front end and a Flask back end. We used the vt-py package to access the VirusTotal API for the malware sample summaries. We also used the MOTIF dataset to find samples of malware to use to test the software. These files are defanged, so they will not cause harm to the user. However, we still run the program and host the dataset on a Kali virtual machine since that its best practice.

Challenges we ran into

We ran into challenges with formatting the data obtained from the VirusTotal API in a way that works well with how we wanted to display the information in Flutter.

Accomplishments that we're proud of

We are proud of our prototype. We were able to include most of the features we originally planned, and a few additional bonus features.

What we learned

We learned a lot about REST APIs and creating HTTP requests, as well as how to combine a front end with a back end.

What's next for Malware Mayhem!

These are the features we would like to add:

  • Point system for correct answers
  • Host the web app online
  • Include a database to reduce API calls
  • Add tailored feedback for malware samples
  • Include more malware information

Built With

Share this project:

Updates