The Herald newspaper reported Tafadzwa Kachere and his 11-year-old son Tapiwa were trying to cross a river on Christmas eve when the crocodile attacked the boy.
It reported that Kachere jumped onto the crocodile's back and tried to force open its jaws, beating at its head with his fists and poking at its eyes with reeds.
The crocodile released the child and turned on Kachere who wrestled free of its grasp.
The newspaper says the child lost a leg and his father's arm was severely gored. Both survived.