One big problem of smart contract platforms is that there is no way to block creating malicious contracts. Any contract can use existing method signatures of well known token standard and reimplement the methods to do something completely unexpected.
Binance Smart Chain has started verifying that token contracts emit expected events when standardized methods are called. If the event is not emitted, the virtual machine will throw an exception and the user will be notified that the transaction will not go through.