Interestingly, I wrote an application as a theory/framework for probation officers to manage offenders in the earlier part of the 2000s. The application ran on a machine, monitored connections from the machine to the Internet, maintained a thumbnail system that allowed a probation officer to see any image viewed by an offender. Maintained and tracked the cookies stored on a browser, bookmarked pages and forum names used by the offender. It also kept a running list of software installed by an offender and raised alerts at the indication of steganographic and cryptographic applications installed by the user.
It was under 15k and ran under Linux, BSD and Solaris since the individuals I was working with at the time complained their hands were tied as they really didn't understand Unix based operating systems. Once all the data was pulled from the machine, it PGP encrypted it and transferred data over via SSH key using both an MD5 ad SHA1 checksum to ensure it came from Machine X and ONLY machine X.
I had a fully running version that was scrapped because of issues of privacy and the courts never detailing/specifying what was and wasn't allowable. This was almost 10 years ago and I am sure nothing has changed regarding the monitoring of offenders. Hence repeat offenders.