How do I add an emergency stop button over Micro USB?
The most effective way to effectuate an emergency stop is to pull the plug or turn the printer off. An alternative is a software stop using a print server program like e.g. OctoPrint.
Indeed M112 is capable of stopping the printer:

M112 is the fastest way to shut down the machine using a host, but it may need to wait for a space to open up in the command queue. Enable EMERGENCY_PARSER for an instantaneous M112 command.

In order to use emergency stop functionality, you need a firmware capable of doing an emergency stop by having this enabled in the Configuration_adv.h printer configuration file, otherwise it will have to await the queue to be emptied first. I doubt if this is standard enabled in your default firmware (the Marlin default is disabled).
From Marlin's Configuration_adv.h:
/**
 * Emergency Command Parser
 *
 * Add a low-level parser to intercept certain commands as they
 * enter the serial receive buffer, so they cannot be blocked.
 * Currently handles M108, M112, M410, M876
 * NOTE: Not yet implemented for all platforms.
 */
//#define EMERGENCY_PARSER

Please note that this might not be implemented; it has not been implemented for all platforms.
An earlier question &quot;Can G-code scripts be run automatically on inserting an SD card when using Marlin Firmware?&quot; has an answer that hints to changing the sources on SD card insertion. In your case the USB needs to be monitored, and it a signal is detected the printer stopped.
So, since:

I use default firmware and don’t plan to change it

without modification of your firmware it is not possible to do what you want. But, there are perfectly viable options mentioned and available to do what you want (executing an emergency stop). Alternatively you could even use a (n Arduino powered) relay to cut the power based on the signal you want to send.