The assault early Sunday killed nine American soldiers and wounded 15 in the deadliest attack against U.S. forces in Afghanistan in three years.
The insurgent assault was launched from multiple sides and was a "concerted attempt" to overrun the small base, said a NATO military official who spoke on condition of anonymity because he wasn't authorized to release the information.
The attack on the relatively new outpost near the village of Wanat in the northeastern province of Kunar, a mountainous region that borders Pakistan, began at 4:30 a.m. Sunday and lasted throughout the day.
A huge wave of insurgents attacked the outpost and an unknown number of militants got inside, the reason the fighters were able to inflict such high casualties, said a second military official, who also spoke on condition of anonymity.
After the breach, U.S. troops pushed back against the invading militants, and attack helicopters swooped in. The second official said more than 40 insurgents were killed in the fighting.
Militants fired machine guns, rocket-propelled grenades and mortars from homes and a mosque in the village, NATO's International Security Assistance Force said in a statement.
It was the deadliest attack for U.S. troops in Afghanistan since June 2005, when 16 American troops were killed - also in Kunar province - when their helicopter was shot down by a rocket-propelled grenade.
Those troops were on their way to rescue a four-man team of Navy SEALs caught in a militant ambush. Three SEALs were killed, the fourth was rescued days later by a farmer.
More than 2,300 people - mostly militants - have died in insurgency-related violence this year, according to an Associated Press tally of official figures.
The chairman of the joint chiefs has repeatedly spoken of the need to get more U.S. troops into Afghanistan and his advisers say that means eventually drawing down troops in Iraq, reports CBS News correspondent Kimberly Dozier.
Nearly 53,000 troops from 40 nations serve in the NATO-led force in Afghanistan.
In other developments: