You can do that on Android 4.3 using App Ops.
However, App Ops only denies the access for you (E.g, return a null pointer or empty list to the app.)
In a lot of cases, the apps would crash. (Sometimes I wonder if the app developers are intended to do so)
If you want fake instead of "null", then...