If you leave aside the instances where Admiral Marcus or Luther Sloan wore their conventional Starfleet uniforms (and even those incorporated black and grey in the times we saw them), Section 31 maintains a fairly consistent color scheme of solid or accented black or dark grey outfits —though sometimes with a lighter color in the chest and midsection, like on their USS Vengeance uniforms— across three centuries. They also do a lot of trenchcoats and faux leather tunics, and even the black sleeves, chest panels, and raised collars of the Vengeance uniforms kind of give them a trenchcoat look, albeit cut off at the waist.
While not specifically a spy practice, there is some precedent for undercover and plain-clothes police officers to wear a particular
"Color of the Day" in order to prevent friendly fire incidents or accidentally arresting an undercover cop during a bust if they're not prepared for that to happen. Of course, wearing similar colors for three hundred years kind of cancels out the effectiveness of such programs, but if one suspends their disbelief a bit maybe that's part of the rationale for the black/grey uniform colors and the black badges, besides looking intimidating.
Starfleet personnel of insufficient rank probably just assume the black badges are some special forces or Starfleet Intelligence unit they don't have need-to-know clearance for and thus avoid asking too many questions lest they get reprimanded.
(click to enlarge)