A teenager was raped and strangled to death by another migrant as the boat they were on sank in the Mediterranean, according to horrified witnesses.

The man had just seen his daughter and wife drown when he carried out the unspeakable attack against the helpless 16-year-old, Italian media reported, citing surviving eyewitnesses. A police investigation claimed the rape and murder, which was committed by an unidentified 27-year-old Iraqi man, happened in full view of the young girl's mother, AGI news agency reported.

The man, who was counted among the survivors, has been arrested on suspicion of murdering the teen. She is understood to also have been from Iraq and was travelling to Europe with her mum. The distraught mother survived the ship's sinking and reported the murder to the police on arrival to shore.

Out of the 70 people on the ship, two dozen of them children, only 12 were rescued and one of them died after being brought on to dry land. More than half of the bodies have been recovered.

The bodies of some of the 64 migrants are removed from a rescue boat (
Image:
AP)

Police said the sailing boat had been adrift off the coast of Italy when the man "vented his aggression on a 16-year-old Iraqi girl, the daughter of another survivor, leading to her death by suffocation". The survivors have since relayed the perilous journey. They told charity workers they "were travelling without life jackets and that some boats did not stop to help them".

It's understood that the boat's engine exploded, setting it adrift with pictures showing it completely submerged and its mast just breaching the water's surface. The surviving passengers were taken to the port of Roccella Ionica.

A major operation then set about retrieving the bodies, with 35 corpses recovered from the water, according to local authorities. The official current death toll is thought to be 36, with 15 of them children. It's understood that the migrants were travelling from Iran, Syria and Iraq, according to the UN refugee agency UNHCR, the International Organisation for Migration and UN children's agency UNICEF. The ship departed from Turkey and was wrecked around 120 nautical miles off Italy's southern coast. The man arrested on suspicion of murder and rape is in custody in Catanzaro, the capital of Calabria, according to police.

Earlier this month, a cruise ship rescued 68 migrants and discovered five bodies in a wooden dinghy drifting off the Canary Islands in the Atlantic Ocean, according to Spain's maritime rescue agency.

The agency confirmed that an oil tanker travelling from northwestern Spain to Brazil spotted the drifting boat on Wednesday afternoon about 815 kilometres (506 miles) south of Tenerife, one of the seven islands in the Canaries archipelago. Spanish authorities redirected the Insignia, a cruise ship, to rescue the migrants. The crew of the Insignia also recovered three of the five bodies on the dinghy.

Due to bad weather, the remains of two people were left at sea. A spokesperson for the maritime rescue, speaking anonymously under departmental rules, said it is unusual for cruise ships to make rescues of migrants on the Atlantic route, but the dinghy "was a long way out and they could be in danger," Steve Dilbeck, a passenger on the cruise ship from Huntington Beach, California, said they were not informed about the dead.