At least 23 people have been killed and more than a hundred injured in a twin suicide bombing outside Iran's embassy in Beirut, an attack that was claimed by a group linked to al-Qaeda.

The first explosion targeted the embassy gates and was caused by a suicide attacker on a motorcycle. A much larger second blast, caused by a suicide attacker in a 4x4 vehicle, struck yards away minutes later as people rushed to the scene.

The blasts ripped the facades from surrounding buildings, leaving the streets strewn with rubble and broken glass and stained with blood.

Footage from local channels showed charred bodies, and flames rising from several vehicles. Aid workers and residents carried away some of the victims on blankets.

"The sheer scale of the destruction is an indication as to how powerful the explosives were," reported Al Jazeera's Zeina Khodr from near the site shortly afterwards. "Over five buildings are damaged by the blasts. People are roaming the streets looking for loved ones. The scene is chaotic."

Iranian embassy sources told Al Jazeera that five security guards and the cultural attache, Ebrahim Ansari, were among the dead.

Blame game

The official Iranian news agency, IRNA, quoted a foreign ministry spokesman as saying the bombings were "an inhuman crime and spiteful act done by Zionists and their mercenaries." Israel denied any links.

Syria's government said the attacks "reek of petrodollars" - a reference to oil-rich Gulf Arab countries such as Saudi Arabia and Qatar that back the rebellion against Damascus.

However, the Abdullah Azzam Brigades, a group linked to al-Qaeda that has previously fired rockets at Israel from Lebanese territory, said it carried out the bombing.

"This is a double-martyrdom operation carried out by two heroes from the heroic Sunnis of Lebanon," Sirajeddin Zreikat, a member of the group, wrote on Twitter.

"Operations will continue in Lebanon until two demands are met: first, withdrawing Hezbollah members from Syria; second, release our prisoners from jails of injustice in Lebanon."

Fighters from the Shia group Hezbollah fought alongside Assad's forces in several strategic battles in Syria against mainly Sunni Muslim rebels. Iran has been bank-rolling Assad's fight, and also supports Hezbollah in Lebanon.

Ali Mikdad, a Hezbollah politician, told the local Lebanese staion, Al-Mayadeen TV: "We tell those who carried out the attack, you will not be able to break us. We got the message and we know who sent it and we know how to retaliate."

There have been several bomb attacks in Beirut and the northern city of Tripoli linked to the two-and-a-half-year conflict in neighbouring Syria.