Kabuto had Orochimaru's DNA and a sacrifice, so why did he not use the Edo Tensei? Or couldn't he have used Anko, like Sasuke did?
Because Orochimaru was never dead. He was just sealed. Well, maybe "sealed" is not the right term. Every curse mark holds some a part of Orochimaru's chakra. And Sasuke reversed the cursed seal on Anko with the flesh from Kabuto to bring him back -
This is from chapter 593.
PS: Almost same thing happened when Sasuke fought Itachi.
Kabuto had Anko for a reason. He knew Orochimaru was inside her and he wanted to absorb his remaining chakra into himself. This is why he led Anko to the graveyard to ambush.