Younis Khan and Misbah-ul-Haq produced fighting half centuries for Pakistan to lead Zimbabwe by 90 runs with six wickets in hand in the second innings after three days of the first test on Thursday.
Younis was 76 not out and Misbah hit 52 as Pakistan, having conceded a 78-run first-innings lead, kept a disciplined Zimbabwe bowling effort at bay to reach 168-4 in its second innings. Asad Shafiq was the other not out batsman on 15.
Younis and Misbah came together at 23-3 after Zimbabwe new-ball bowler Tinaesh Panyangara grabbed two quick wickets at Harare Sports Club.
The pair batted cautiously during the 116-run, fourth-wicket stand that lasted 48.4 overs, and it was only a lapse in concentration that resulted in its end.
Misbah reached his half century with an on-driven four off Shingi Masakadza to move from 47 to 51 but failed to rotate the strike for a long time. He managed only one run in the next 20 deliveries before playing a lazy shot to Masakadza and was caught by Vusi Sibanda in the covers.
Misbah could hit only four fours off 157 deliveries while Younis struck seven fours off 174 deliveries.
For Zimbabwe, Panyangara struck once on both sides of the lunch break to leave Pakistan tottering.
The pace bowler trapped both opener Khurram Manzoor and Azhar Ali leg before wicket even as Tendai Chatara chipped in with the wicket of Mohammad Hafeez.
Earlier, Pakistan offspinner Saeed Ajmal finished with 7-95 but could not prevent Zimbabwe from stretching its lead.
Zimbabwe, 281-7 overnight, scored 46 more runs in the morning session to total 327 in reply to Pakistan's first innings of 249.
Overnight batsman Elton Chigumbura did most of the good work for the home side as he scored 29 more runs before being dismissed for 69 by Ajmal.
Chigumbura continued to bat confidently on Thursday, striking nine fours during his third half century in 10 tests. He was caught by Azhar Ali at short leg off bat and pad.
Ajmal, who had four wickets on the second day, took all three remaining wickets to finish with his eighth five-wicket haul in 27 tests.