Recently the senate and house passed legislation allowing internet service providers to sell customer data. We wanted to see what kind of data this was so we created this tool to allow the users to see what data they are broadcasting to the world.
What it does
The program reads all of the packets that the computer is sending and determining who is receiving the packets and what programs are sending them. The user then can see what IP addresses are receiving the most packets from their computer and what programs are sending the most packets.
How we built it
The GUI is built using the Qt Framework while the backend uses WinPcap to perform the packet capture and analysis.
Challenges we ran into
Determining what process is sending data is fairly difficult because the ports opened for the sending of many programs are short-lived and closed before we are able to determine what program had opened that port. We also initially encountered problems synchronizing with git due to issues with dependencies.
Accomplishments that we're proud of
We are proud of getting a functional product that does almost everything that we had originally envisioned.
What we learned
We learned how to use Qt and its associated IDE. We also learned that dealing with Windows specific APIs can be fairly difficult to do. WinPcap also has a steep learning curve as it also requires knowing how packets work on the byte level.
What's next for NetPriv
Cleaning up and making the UI look more modern. Adding additional functionality to show the hostnames of the IP addresses and to better determine what programs are sending data.