Rizwan and Irfan both suffered hamstring injuries in the third match in Rawalpindi, where a second-string New Zealand side won by seven wickets to level the five-match series 1-1
Mahmudullah was 26 not out after the visitors lost only one wicket in the morning session when new cap Andile Phelekwayo bagged his first test scalp.
A sharp diving catch from wicketkeeper Quinton de Kock snared Tamim Iqbal for 39, edging a ball from the medium-pacer down the leg side.
Bangladesh, who were 127-3 overnight, trail South Africa by 278 runs. The home side declared on the second day on 496 for three.