Either side could have settled the game within 90 minutes. But first Ferjani Sassi missed a spot kick for Tunisia and six minutes later in the 81st minute, Henri Saivet failed to hit the target with his penalty.
In the first period of extra time Dylan Bronn put through his own net to give Senegal the advantage.
Tunisia thought they had a way back in six minutes from the end when the referee Bamlak Tessema Weyesa whistled for a penalty after the ball had hit Idrissa Gana Gueye's hand.
But following Senegalese protests, Weyesa consulted the video assistant referee and eventually overturned the decision.
It sparked fury among the Tunisia players but the second decision stood.
Despite Tunisia’s onslaught for the closing minutes, Senegal held firm to advance to their first final since 2002.