Sorry if I misinterpret the question.
To get a vector perpendicular to the surface (the normal) of a hit object, you just have to add the impact normal to the impact point. As far as I understand the reason why is because the impact normal is a direction vector, so it could describe any number of parallel surfaces.
Below I make a little blueprint showing how using the hit result of an initial trace, a second trace can be done parallel to the normal at the impact position.
The result:
Hope this helps.