Senegal reached the Africa Cup of Nations final for the second time as Tunisia defender Dylan Bronn’s extra-time own goal gave them victory.
Both sides had penalties saved in normal time before Bronn inadvertently headed the only goal of the game.
Mouez Hassen tipped Sadio Mane’s free-kick on to Bronn’s head as Senegal – who face Algeria in Friday’s final – moved closer to a first Afcon title.
Tunisia had a late penalty award overturned by VAR.
After Salif Sane’s headed clearance ricocheted off Idrissa Gueye’s elbow, the referee initially pointed to the spot before overturning his decision after reviewing video footage.
Senegal dominated the first half, producing seven shots to Tunisia’s two, with Mane spurning their best opportunity when he missed an open goal.
Tunisia improved after the interval and were awarded a penalty when Ferjani Sassi’s effort struck Kalidou Koulibaly’s arm, but Sassi’s spot-kick lacked power and direction and was saved by Alfred Gomis.
Four minutes later Senegal were given a penalty of their own when Ismaila Sarr was brought down by Bronn, but Henri Saivet’s shot was kept out by Hassen.
The Tunisia goalkeeper then inadvertently gifted victory to Senegal, who will be without influential captain Koulibaly for the final as he is suspended.