Our project was inspired by hacking attempts made on modern day devices that people purchase every day.
What it does
Revelio looks up CVE information of products that the user inputs into the UI. They can either enter a serial number or manually choose what the product is from a searchable list.
How we built it
We used python TKinter to make the UI, and python flask to make the server.
Challenges we ran into
When we started the project we wanted to make a desktop web app that could scan product barcodes to get the serial number to then use to locate the CVE. After many hours of working with html and electron to try to get a barcode scanner to work, I had made 0 headway on anything functional to use as a user interface. I discussed with the team what we could do and we decided that our strengths lie in coding with python so we switched to TKinter for the UI. I had never used TKinter before but it was very easy to look up how to use it as it was all in a familiar format of python. Instead of scanning a barcode we switched to a dropdown list where the user can choose what product they are looking for.
Accomplishments that we're proud of
We are proud that we could get a python server running and that we could access the server from Nova Scotia to Texas. We are also proud that we could run commands off the server and use output in our own separate programs.
What we learned
We learned how to use python TKinter to make UI and how to run a python server using flask.
What's next for Revelio!
We would definitely want to try to implement the barcode scanner in the future so people can use the product in store and check items before they buy them. We might want to switch it to a mobile app so people can scan barcodes using their phones as well.
Some additional features that we wanted to fully implement into this project was automatically detecting the serial number and detecting devices from network scans.
As for automatically detecting the serial number, we wanted to associate it with the proper manufacturer to receive the make and model of the device, but due to time constraints and product availability we could only incorporate functionality for netgear devices.
The network detection of devices posed a large issue as we had initially used MAC addresses to try and figure out the type of device, but we were limited to only knowing the manufacturer of the network adapter used. We had looked into using the device name to try and detect the type of device, but we concluded that a lot of devices would not display their make and model under their device name so it would not be a reliable method. Without the time to research other methods we ultimately dropped development for this version of the product.