The drownings occured on Friday after the boys, aged between 13 to 16 years, went jogging along the river bank in Segamat district, local police chief Mohamad Kamil Sukarmi told AFP.
Three bodies were retrieved on Friday while the remaining five were pulled out late Saturday, he added.
Describing the incident, Mohamed Kamil said one of the boys went for a swim in the river, close to where sand mining activities were being carried out, but got into difficulties.
''Upon seeing their friend in trouble, the other seven boys jumped in to save him. Unfortunately all eight drowned,'' he said.
Mohamed Kamil said there was a ''sea of sadness'' sweeping the nearby housing estate where the boys were from and where many residents are casual workers.
''This is a shocking tragedy. It should not have happened,'' he said.
Drowning incidents in rivers are rare in the state.
Mr Kamil said some 130 rescue personnel including divers were involved in the two day rescue operation adding that all the bodies have been buried in the nearby cemeteries.