The Maharlika II ferry, was carrying at least 84 people before it lost control and was carried away by the current and waves, forcing those onboard to abandon ship off the island of Leyte, the National Disaster Risk Reduction and Management Council said in a statement.
Three ships, including a foreign-registered liquefied petroleum gas carrier, rushed to the area and were able to pick up 55 survivors, the council told the AFP news agency.
"Rescue boats had trouble reaching them because the waves were really huge," spokeswoman Mina Marasigan said.
The ferry had reported "problems with steering" and had also been buffeted by heavy rains, worsened by Typhoon Kalmaegi which is approaching the northern Philippines, she said.
A coast guard report earlier said that the vessel was stricken 680km south of Manila.
Although only 84 passengers and crew were listed on the manifest, it is feared that many more may have been on board.
Accidents at sea are common in the Philippine archipelago because of frequent storms, badly maintained boats and weak enforcement of safety regulations.
In 2008, the ferry MV Princess of the Stars capsized during a typhoon in the central Philippines, killing nearly 800 people.