glReadPixels(GL_UNSIGNED_INT) does not place the color value in the 8 LSBs are you propose, it places them in the 8 MSBs.
It does neither.
I’ll assume that you are using the default framebuffer (you never say). Therefore, your framebuffer has no more than 8 bits of red, and is an unsigned normalized format.
When you send an unsigned integer color to OpenGL via glColor*, OpenGL interprets this as unsigned normalized. That is, you want to set the color to a value between 0 and 1, and you are using integer values to represent that. The integer MAX_INT represents the value 1, and the integer 0 represents the value 0.
Therefore, the first thing OpenGL does is convert the integer you give it to a floating-point value. That value will be:
(67108864/(2^32-1)) ~= 0.015625.
Now, when OpenGL goes to write this color to the framebuffer (after whatever rasterization operations have happened), OpenGL realizes that the framebuffer’s values are stored as unsigned normalized 8-bit integers. Thus, it must first clamp and convert the floating-point value to an unsigned, normalized 8-bit value. This is done simply by multiplying the float by 2^8-1 and rounding the decimal:
round(0.015625 * 2^8-1) = 4.
When you go to read that value, first OpenGL must convert the 8-bit unsigned normalized value back into a floating-point value. This is done as above:
(4 / (2^8 - 1)) ~= 0.01568627.
After that, it must be converted into your destination format. Since your destination format was a normalized unsigned 32-bit integer, it must convert this float into a 32-bit unsigned integer:
(0.01568627 * (2^32 - 1)) = 67372036
It’s a simple matter of lack of precision. Just because you send a 32-bit number doesn’t mean it’s always a 32-bit number. Especially when your framebuffer only tells you that you have only 8-bits of precision.
If you are serious about getting accurate integer values in and out of images, you must create integral image formats, with the proper precision, and use FBOs to render to them. You could use GL_RUI32 with a renderbuffer, for example.