There's nothing particularly special about FD 47. At least, nothing standard.
When a file descriptor is opened, a flag can be set indicating if it should be closed or not on an exec() call to another program. Most programs ignore any open file descriptors above the first 3 (and sometimes 4), so if something left one open and marked it to stay open across exec, it could stay open through multiple programs. Very likely, it was left open by mistake; this is a file descriptor leak bug. It might be tricky to trace it back to what left it open, especially considering what left it open may not be running anymore.
You might not see it open from a shell in a terminal because some shells meticulously close all extraneous open file descriptors in the interests of cleaning up as part of their initialization. Leaking file descriptors unintentionally could be a security vulnerability, as the leaked FD could carry data that could be leaked unintentionally to another program.
This would be especially dangerous when changing users, so it makes sense for sudo to close anything extra.