Set a target of 311 after the hosts declared their second innings at 216 for six in the morning, Bengal found themselves in trouble at 100 for four before tea on the fourth and final day at the Karnail Singh Stadium.
Das and Shukla then saw the visitors through the evening session as they added 102 runs for the fifth wicket before the latter fell to Yere Goud.
Das remained unbeaten on a patient 60 that came from 241 balls while Shukla's counter attacking 65 needed only 95 balls and contained 10 fours and a six as Bengal finished at 212 for five before bad light forced early close.
Railways seamers bowled a probing spell with Harvinder Singh (2-64) providing the early breakthrough as he had Nikhil Haldipur caught by J P Yadav for four.
One for six soon became 48-3 as Deep Dasgupta and Rohan Gavaskar were back in pavilion before Devang Gandhi (25) combined with Das to add 52 runs for the fourth wicket.
Yadav then the Bengal skipper caught behind to revive hopes of Railways' win.
Earlier, Amit Pagnis top scored with 89 for Railways who made a sporting declaration one hour into the morning session.
Railways earned two points by virtue of a first innings lead. They now meet Delhi in the next round from Nov 25.