Besides the above mentioned security softs, you can do it also with Kaspersky IS.
But the best way, IMHO, is with NoVirusThanks EXE Radar Pro (use the free beta version), because of the flexibility. This is particularly important with cmd.exe. A lot of apps use it. With NVT ERP, you can whitelist command lines to allow it where you need it, and still block it where you do not.
The truth is, you can do this with Comodo Firewall, too, if you use the HIPS. But not everyone loves Comodo.
And yes, mshta.exe is a good addition, although from what I have read, it usually will call one of the other main script interpreters, so you will still catch the malware activity early enough.
EDIT: ReHIPS also gives you control over these processes, and by default it will usually alert you if they want to run. But I don't understand well enough how it works in ReHIPS. Maybe someone else can explain.