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.

Built With

Share this project: