A 29-year-old surfer has suffered serious injuries in a rare shark attack off the Oregon coast. Joseph Tanner, of Portland, was bitten as he sat on his board waiting for waves off Indian Beach in Ecola State Park, northern Oregon.

One witness reported seeing a large dorsal fin in the water behind Tanner and estimated the shark to be 8-feet (2.4m) long. He said it may have been a great white, though authorities are still investigating.

"He kind of just lurched real funny," fellow surfer and witness Steve Gehrig told KOIN-TV.

"It looked like he had slipped off his board but a little more violently than you would see someone slip and I was like, 'Did he just slip or was that something different?'"

A local volunteer firefighter said that Tanner fought back during the encounter Monday (10 October), reportedly punching the shark in its face.

After fighting off the big fish Tanner managed to climb back on his board and shouted a warning to other surfers. He was helped to shore by others. He suffered serious bites to his upper thigh and lower leg.

Tanner, who is a nurse, "directed his own first aid, what needed to be done, he asked us a lot of questions: what we were seeing, if we saw spurting blood," witness and helper Jeff Rose told KGW.

Rose described Tanner's injuries as "pretty gruesome." Along with others, Rose used Tanner's surfboard leash to make a tourniquet to staunch the bleeding.

"Mr. Tanner was stabilised on scene and was transported via air ambulance to Legacy Emanuel Medical Centre in Portland with serious injuries," Oregon State Police said in a news release.

Tanner underwent surgery shortly after the attack. The bites severed no major artery and he was expected to keep his leg.

A home-made sign was quickly posted on Indian Beach warning of a shark attack.

The shark attack is the first incident on the Oregon coast to occur since 2013. Of the 27 previous unprovoked attacks, all have involved great white sharks. Only one has been fatal.