Hafeez fell to a low catch in the slips by Tim Southee off paceman Trent Boult as Pakistan were 0-1 at lunch after BJ Watling's fighting, unbeaten 77 took New Zealand to 274 all out in their first innings.
Fellow opener Imam-ul-Haq was unbeaten on nought as Pakistan trailed by 274 runs with nine wickets intact as both teams fight for a series-clinching win.
The three-match series is tied at 1-1.
During his five-and-a-half-hour knock Watling, when on 66, passed 3,000 runs in his 56th Test.
Watling and debutant Will Somerville kept Pakistan's bowlers at bay, adding 45 runs for the eighth wicket before off-spinner Bilal Asif took all three final wickets to finish with 5-65, his second five-for in five Tests.
In all he batted for five hours and 32 minutes, hitting four boundaries.
Asif bowled Somerville without any addition to his overnight score of 12, then had Ajaz Patel caught for six before bowling Boult for one.
The current record has stood for 82 years after Australia's Clarrie Grimmett reached 200 wickets in 36 Tests in 1936. (AFP) ATK
(This story has not been edited by Devdiscourse staff and is auto-generated from a syndicated feed.)