The Islanders had set a 122-run target for the Bismah Maroof-led side after opting to bat first.
Achini Kulasuriya defended nine runs in the last over to help Sri Lanka beat Pakistan by a run in the last over thriller.
Kulasuriya was handed the ball in last over when Pakistan needed nine runs with in-form Nida Dar and Aliya Riaz at the crease. Kulasuriya conceded just seven runs to lead Sri Lanka to victory.
Set to chase 123 runs, Pakistan’s openers provided a quick start by scoring 31 runs in three overs. Muneeba scored 18 runs off 10 balls in 31-runs opening partnership.
Bismah Maroof rescued Pakistan after a couple of wickets fell quickly. She scored 42 off 41 balls laced with four boundaries.
Nida Dar stayed till the last but her run-a-ball 26 didn’t help Pakistan complete the run-chase.
Inoka Ranaweera bagged two wickets while Sugandika Kumari and Kavisha Dilhari bagged a wicket each.
Earlier, Harshitha Samarawickrama scored 35 off 41 to help Sri Lanka post 122-6 in 20 overs. Pakistan bowlers had a great time led by Nashra Sandhu who bagged three wickets.
Aiman Anwer, Nida, and Sadia Iqbal shared a wicket apiece.
Sri Lanka will now meet India in Women’s Asia Cup final on October 15.