The collision occurred as the warship was heading back to its base, VG says, citing military spokesperson Vegard Finberg.
The Navy fears that the frigate will slip off the rocks and sink, with tugboats trying to keep it in place under the watchful eye of several Navy vessels.
The collision occurred in a western Norway fjord as the KNM Helge Ingstad was returning from North Atlantic Treaty Organisation exercises, with 137 people aboard.
Seven people were lightly injured in the collision in the Hjeltefjord near Bergen in the early hours of Thursday, rescuers say.
Eirik Walle, with the rescue center, told Norwegian news agency NTB that the collision caused an opening in the frigate's hull and "it is taking in more water than they can pump out". The coastal water where the stricken vessel lies is normally prone to heavy seas, but unseasonably calm conditions prevail.
The Maltese oil tanker was carrying about 625,000 barrels of crude, but officials said none spilled after Thursday's collision.
The Navy quickly evacuated all the crew except for 10 essential staff members to prevent a possible fuel leak.
Firefighters have also confirmed the frigate is listing as it takes on water.
The Sture terminal is a major tanker port, with nearly 25% of Norway's oil production passing through the facility.
The Sture oil terminal and the Kollsnes gas processing plant were shut down as a precautionary measure.
Norway's Accident Investigation Board said a towboat was also involved in the accident.
The 62,000-tonne tanker sustained only slight damage and is waiting to be towed to a nearby oil terminal.
The 134-metre long frigate, built in Spain in 2009, has a helipad platform on its stern.
The Trident Juncture 18 live drills concluded on November 7 in Norway.
The ship had recently participated in the Trident Juncture exercise, one of NATO's largest training events in recent years.
"According to our assessments, there's no reason to believe that anything, like an accident, could happen with the weapons" on board, he said.