At least five people were killed when militants wearing suicide vests and disguised as policemen attacked the office of a senior political official in north-western Pakistan.

Meanwhile, in the south-west, thousands of Shi'ite Muslims protested for a second day after a massive bombing targeting the minority sect in which 84 people died. The protesters have refused to bury victims until the authorities take action against the militants who were responsible.

The target of yesterday's attack in Peshawar was the office of the top political official for the Khyber tribal area, a major militant sanctuary in the country.

Four militants opened fire on the policemen protecting the compound and managed to get inside, said senior tribal policeman Sajad Hussain. Once inside, the attackers detonated their suicide vests, he said.

The bodies of five people killed in the attack were taken to hospital, along with seven others who were injured, said hospital spokesman Jamil Shah.

The dead included four tribal policemen and one elderly civilian, police said.

An eyewitness said the militants struck when a van carrying prisoners arrived at the compound, and the militants tried to free the prisoners from the van.

The compound is open to members of the public on Mondays, and it was filled with dozens of people who became trapped inside.

Soldiers and police responded, and those trapped were later freed.

Local TV footage showed them walking out of the compound with their hands raised as they were led to an area for screening.

Shi'ite organisations also protested over the attack in Pakistan's largest city, Karachi. Much of the city was shut down as groups complied with a call to hold a strike to demonstrate against the bombing.