If you use a mesh collider, then you have access to RaycastHit.triangleIndex. Highlighting the selected face could still have some difficulty, though. Unless you're sure that every single vertex in the mesh is split, it would probably be easier to construct a new mesh that consists of a single face, and position it in the same spot as the selected face.