GL_ARB_texture_swizzle and GL_ARB_texture_buffer_object are supported in the drivers, though they aren't listed in the extension string. I became a little suspicious after the latest driver for my AMD FirePro card also didn't list GL_ARB_texture_swizzle but claimed GL4.2 support and properly supported it, so I decided to recheck the HD4000. The shader with samplerBuffer compiled without incident, and the glTexBuffer API entry point was found. Swizzling also works properly ( glTexParameter(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_RGBA) ).
Don't forget: OpenGL versions are not defined by extensions. It is perfectly legitimate for an implementation to say "3.3" and not support ARB_texture_swizzle or any other 3.3 core extension. It advertises support for 3.3, therefore it supports all of 3.3, and texture swizzling is a part of it.

So I would say that using extensions to somehow "verify" core support for an advertized version is not a reliable mechanism.