Moses headed home a corner in the fourth minute of stoppage time to put Chelsea level on seven points with Shakhtar at the top of Champions League Group E.
Chelsea took the lead through Fernando Torres after six minutes but were second best to the Ukraine champions for long periods.
Torres profited from the first of two mistakes by goalkeeper Andriy Pyatov when he charged a clearance down and the ball went straight into the net but Shakhtar were level three minutes later when Willian side-footed home from close range.
Chelsea, without the injured Ashley Cole and Frank Lampard and with John Terry on the bench, went 2-1 up five minutes from halftime when Oscar took advantage of another Pyatov error to score into an unguarded net from long range.
Shakhtar levelled again two minutes after the break when Willian planted the ball home after another excellent build-up.
The group is evenly poised with Chelsea, Shakhtar and Juventus (six points) battling it out to reach the last 16 with two matches remaining. Nordsjaelland (one point) appear to be out of contention.
The match began at a blistering pace with both teams producing half-chances in the opening few minutes, before Torres enjoyed a rare stroke of luck in front of goal charging down a clearance by Pyatov and reeling away in joy as the ball flew into the net.
Three minutes later Fernandinho, one of four Brazilians in the visiting team, powered his was through the gaps on the left of the Chelsea defence and cut the ball back for his compatriot Willian who slotted in the equaliser in off Petr Cech from close-range.
After a long period of Shakhtar domination, a rush of blood to Pyatov\'s head cost the visitors dear.
With plenty of time to clear a bouncing through ball from outside of his area going nowhere five minutes before halftime, he instead headed the ball straight to Oscar standing just outside the centre-circle 35 metres from goal.
Oscar scored with a perfect shot that flew back over Pyatov and into the back of his net for a 2-1 lead.
But Shakhtar were level two minutes after halftime when Fernandino sent a perfect angled pass through to Darijo Srna whose pass found Willian who scored with a similar goal to his opener to make it 2-2.
The woodwork saved Chelsea five minutes after that when Razvan Rat hit the bar but Shakhtar escaped at the other end in the 65th minute when John Obi Mikel\'s header from a freekick was disallowed for offside.