If it weren't for that darn Internet Explorer 6 and 7, you could just have a float hanging out.
However if Haslayout is tripped in any little way on the grey box, you're stuck.
So more likely you'll have to rel-po the grey box and abso-po the blue one. Or possibly you could get away with just rel-po-ing the blue box. The idea is, the grey box would need to have a set (limited) height and overflow: hidden. Positioning the blue box lets you give it a z-index and that may let you overcome the overflow: hidden (now I'm not sure, I haven't done that in a long time... if plain z-index can't work then blue box will have to be abso-po'd which will take it completely out of the document flow and the parent's overflow settings definitely can't stop it).
Or, I am assuming the grey box is a real box. if it's not, but just a fixed-height background image, then do that. The box containing the blue box doesn't have to have a background colour. It can be transparent and still hold the grey background image.
If you'd like to see code examples of what I mean, let me know.