In a chase of 175, Gujarat are 67 for three and need to bat cautiously to score the remaining runs while Mumbai would go all out to remove the seven remaining batsmen to move to the knockout stage.
Beginning the day at 76 for four, Mumbai scored 273 to set a 175-run target for the hosts.
Akshar Patel denied Shah (48) a half-century but Pravin Tambe played a significant knock of 42 runs and then Shardul Thakur (22) and Javed Khan (23) came up with useful knocks to shore up the Mumbai second innings total.
Jasprit Bumrah (4/68) and Askhar Patel (3/71) shared seven wickets between them for Gujarat.
More From This Section
Mumbai then put Gujarat on shaky ground by dismissing Smit Patel (6), Samit Gohel (0) and skipper Parthiv Patel (5) cheaply, with Abdulla removing both the openers.
Brief Scores:
Mumbai: 154 and 273 in 103.3 overs. (Hiken Shah 48, Pravin Tambe 42; Jasprit Bumrah 4/68, Askhar Patel 3/71).
Gujarat: 253 and 67/3 in 22 overs.(Askhar Patel 25 batting; Iqbal Abdulla 2/11).