The challenge states that the image includes shades of gray, #000000 to #F5F5F5. Since all of the pixels are gray, all three bytes of each color will be identical, so only one needs to be considered.
#000000-#F5F5F5 leaves shades 0-245 possible, significantly more than the 50 shades the challenge includes. Dividing these possible shades up evenly, it can be reasonably assumed that each shade is 5 apart.
Next, I wrote a simple Javascript program which would find each possible shade in the image. The shade that is not found is clearly the missing one.
Source for this program below. (Comments after the fact)