The easiest solution is the "representative direction" method, though it's not accurate when it comes to energy conservation (overall, it will be too bright, especially for large sphere), etc... but is still a good place to get started :)
* First calculate the reflection direction like you would for Phong specular (R = reflect(V,N)).
* Form a ray originating from the surface and traveling along this reflection direction.
* Find the closest point on the sphere to this ray (or: find closest point on the ray from the center of the sphere, then the closest point on the sphere to that first point).
*^ If the ray intersects the sphere, the answer is either of the intersection points between the ray and the sphere!
* Create a new "representative reflection direction", which is the direction from the surface to this point on the sphere.
* Run your specular code as usual (for a point light), but use this "representative reflection direction" as the lighting direction.
With a zero-sized sphere, the representative direction will always be equal to the original lighting direction, so you get the same results as a point light.
With larger spheres, the lighting direction gets shifted a little bit so that every surface is getting lit by a slightly different point light -- one that's placed somewhere on the surface of your sphere, to give the impression that there's actually a sphere-light in your scene :D