Question: A long-time client has asked us to help screen their work machines for pornography. They're worried about liability if sensitive materials were found. Their main concerns (for obvious reasons) are video, audio, and image files. If possible, they'd also like to scan text-based documents for inappropriate content. They have a hierarchy of not-for-work content starting with blatantly illegal (I don't have to list details), moving down to obviously offensive, and also including things that may be offensive to some - think lingerie ads, joke cards featuring butt cracks, and anything related to Howie Mandel.

My questions are:

* Is this ethical? I think it is since every employee legally agrees that their work machine belongs to the company and is subject to search. The screenings are not to occur on personal machines brought to work.
* Is it feasible? I've done a lot of image processing/indexing but this seems like a whole new world of complexity.
* Any references to successful techniques for discovering porn?
* Is it appropriate for me to archive the results when something is discovered?

Answer: 
You can do this with 90% [Headology](http://wiki.lspace.org/mediawiki/index.php/Headology), 10% software.

Firstly, quietly scan employees computers, build a database of files and sizes for each employee.

Then leak a memo that all PC's will be scanned for questionable content, i.e. The bosses have a [Shazam](http://itunes.apple.com/ie/app/shazam/id284993459?mt=8) like program that can identify porn etc.

Then a couple of days later, scan the computers for files and sizes again. Look at any deleted files, are they movie or image files? Then those are the employees you need to keep an eye on. 

Routinely scan those employees PC's for images and movies, and manually check them for questionable content.
This is an obvious neural network task. First you need a large training set of images selected by experts in your company.....

A more effective solution is to announce that you will be checking everyones machine for porn NEXT week/month/whatever, then write a simple app that just exercises the disk. I guarantee that the machines will have been cleaned by then.

---

ps - A couple of 'serious' points - you actually **don't** want to find anything. 

If you do find a couple of images in a browser cache then perhaps they hit a bad link or a dodgy popup - remember the teacher fired over whitehouse.com? If you fire/discipline them for this then there is going to be a backlash from workers/union. How would your company work if every click had to be submitted to legal for approval before your workers researched a question or checked a price online?

If you find a stack of porn on a machine how are you going to prove it was put there by that employee? Do you have the sort of security and audit systems that would stand up in court? Do you use (or even know of) an OS where a system admin couldn't put them there and make it look like the user's files? 

Plus in my experience the most common locations for porn stashes are on the laptops of CxOs and senior VPs.

It's much better to just arrange for the files to just vanish ahead of time.