Maharashtra scored 254 for eight in 50 overs and then restricted Saurashtra to 250, securing four points from the match, played at the Madhavrao Scindia ground.
Saurashtra needed nine runs in the final over, with four wickets in hand and a well-set Arpit Vasavada at the crease. But Joseph conceded only five runs as Saurashtra lost four wickets.
Joseph clean bowled Vasavada off the second ball and dismissed Kamlesh Makwana with the last delivery. Dharmendra Jadeja and Jaydev Unadkat were run-out as they attempted to give strike to Makwana.
Vasavada scored 68 off 67 balls, including three fours and a six, while Jaydev Shah (47) and Kuldeep Rawal (44) were the other notable contributors for Saurashtra.
For Maharashtra, Akshay Darekar took three wickets, conceding 45 runs, while Samad Fallah and Joseph grabbed two each.
Earlier, Bawne (64) and Tripathi (62) rescued their team from early damage and because of their half centuries Maharashtra could post a competitive 254 runs.
For Saurashtra, Balkrishna Jadeja bagged three wickets, giving away 71 runs.
Brief score:
Maharashtra: 254 for 8 off 50 overs (Ankit Bawne 64, Rahul Tripathi 62, Balkrishna Jadeja 3-71)
Saurashtra: 250 all out off 50 overs (Arpit Vasavada 68, Jaydev Sah 47, Akshay Darekar 3-45).
Karnataka-Hyderabad in thrilling tie
The South Zone leg match between Karnataka and Hyderabad in Bangalore ended in a thrilling tie.
Put in to bat, Karnataka recovered from an early wobble to post 248 for eight, with captain R Vinay Kumar top-scoring with an unbeaten 47.
Hyderabad seemed on course in their run-chase at 142 for two in the 31st over but suffered a batting collapse, triggered by Vinay Kumar (5-42), and were reduced to 165 for six in the 38th over.
Hyderabad needed 31 runs from the last three overs, with three wickets in hand, and almost pulled it off.
Ashish Reddy (51 not out) kept Hyderabad in the hunt but finally fell short of the target of 249 by one run and the match ended in a tie.
Both teams got two points each.
In other South Zone matches at Alur in Karnataka, Tamil Nadu beat Andhra Pradesh by eight wickets in a low-scoring match while Kerala defeated Goa by three wickets.
Tamil Nadu pacer Yo Mahesh returned with figures of 5 for 31 as Andhra were shot out for just 126 in 41.3 overs.
Tamil Nadu easily chased down the target of 127 in just 30.1 overs on the back of an 84-run opening wicket stand between wicketkeeper-batsman Umashankar Sushil (61 not out) and Murali Vijay (50).
Kerala captain Sachin Baby led from the front with a 100-ball 89 to help his side to victory against Goa with seven balls to spare.
Kerala got all the four points from the victory.
Image: Akshay Darekar
Maharashtra crush Bengal to storm into Ranji Trophy final
Harbhajan to lead Rest of India; Gambhir in squad for Irani Trophy
Ranji final: Karnataka in control despite Jadhav's ton
Ranji Trophy: Fallah rips apart Bengal to put Maharashtra in control
Satish, Rahul dominate as Karnataka take control of Ranji final