As it is well known that QKD systems are prone to simple MITM attacks… what authentication techniques are being used in QKD to prevent those attacks in practice?
The standard answer in the research literature is to use information-theoretically secure message authentication codes, typically universal hashing (aka Carter-Wegman authenticators). Of course, you could use computationally-secure message authentication codes, like CMAC or HMAC, if you wanted, though that would partly defeat one of the reasons for using QKD.
That said, in practice QKD is a bit silly. QKD solves a problem that most people don't have, so it is basically a fancy useless toy (albeit a very expensive one). If you're considering using QKD in some practical deployment, my advice is: skip the QKD, and just use a TLS or IPSec VPN. There, I saved you $50,000; don't spend it all in one place!