I am currently doing one of the Honeynet.org challenges, specifically the 13th forensic challenge dealing with steganography. Several PNGs have been provided and participants are to find and extract steganographically hidden messages from said files.
Since all files seemed to have been edited with paint.NET, I suspected that a plugin had been used. Further, most of the available plugins seemed to embed messages by changing the least significant bit of the color values. Therefore, I wrote a small Python script. For every pixel in the image, it collects the least significant bits and concatenates them. If the result can be converted into a number that lies in the printable ascii range, it will be converted and is then added to a string. For each image, this string is printed.
Sadly, this didn't yield any results. I could obviously just try different things, for example parsing the image horizontally instead of vertically. To me, this seems like brute force. I'd much rather like to ask, if somebody here could think of a better way to approach this.
However, please refrain from just posting the solution. I know the challenge is already over but IMHO, one should always try to come up with his own solution first.