An overcrowded ferry with more than 100 passengers capsized after being battered by big waves in the northeastern Philippines, drowning at least 23 people and leaving 33 missing, officials said Monday.

The wooden-hulled ferry, Maejan, was approaching its destination in Aparri town in Cagayan province after an eight-hour journey from Calayan islands in the Luzon Strait when it overturned near the mouth of the Cagayan River on Sunday evening, said Senior Inspector Alex de los Santos.

He said passengers jumped into the cold water after strong waves broke the ferry's bamboo outrigger, causing it to bob wildly.

"They panicked and grabbed anything like water containers that will keep them afloat then jumped off the boat," de los Santos told The Associated Press by telephone.

He said most of the 46 survivors swam to shore in Aparri, about half a mile (kilometer) away, where police and villagers found them shivering close to midnight.

The dead — including a 1-year-old boy and a town councilor — were taken to funeral parlors, where relatives gathered to identify them.

He said no one recognized the dead boy. "There were no relatives. Most probably his parents perished with him."

De los Santos said coast guard and navy vessels joined the search for 33 people still missing, but bad weather was hampering the effort.

Coast guard chief Vice Adm. Wilfredo Tamayo said criminal charges will be filed against the owner and surviving crew members of the 28-ton Maejan, which was authorized to carry only 50 people.

Hours before the ferry capsized, three children fell into the sea as the vessel was lashed by huge waves, Calayan Mayor Joseph Llopis said. Two of the children were plucked alive, but it was not clear if they survived the final capsizing, said Llopis, who lost 10 of his relatives in the disaster.

The accident was especially tragic because many of the passengers from his town of 17,000 people were traveling to Aparri to buy food and other goods ahead of Christmas, Llopis said.

"There'll be no festive mood," Llopis told The AP. "Many of the dead were breadwinners."

Last month, a cargo ship sank in rough seas north of Cagayan, and passing vessels plucked 16 of 20 people from shark-infested waters. Weeks earlier, separate storms capsized two passenger boats in the central Philippines, drowning more than 50 people.

Sea accidents are common in the Philippine archipelago because of tropical storms, badly maintained boats and weak enforcement of safety regulations.

In December 1987, the ferry Dona Paz sank after colliding with a fuel tanker, killing more than 4,341 people in the world's worst peacetime maritime disaster.

The state weather bureau over the weekend warned of an approaching storm from the Pacific with winds of up to 60 miles per hour.

Tropical Storm Dolphin could become a typhoon before getting closer to the eastern Philippines in the next few days, according to forecasts.