How do I get rid of the unexpected shadows that appear inside the holes of objects using Glossy BSDF?
You need to increase the number of glossy bounces in render settings > Light paths. These "black surfaces" are caused by rays which enter the cup and then bounce back and forth between the sides until they hit the limit of bounces they are allowed to do, and then return nothing (as defined by the max bounces and glossy bounces values).

By increasing the number of allowed bounces, the rays get more of a chance of gradually working their way over to a spot where they can bounce around to someplace else. 

With only 4 glossy bounces:



With a lot more:



Another things that can help is adding a bit of scattering (roughness) to make  paths more random and less likely for rays to get trapped going back and forth for large numbers of bounces:



Note that in some ways this is realistic, as this kind of thing happens in the real world too. In the real world, there is an infinite number of bounces, but light does diminish in intensity at each bounce. So eventually light bouncing around would be absorbed completely, and the surface would appear black.