Masked gunmen publicly shot dead six suspected collaborators with Israel at a large Gaza City intersection, before dragging one of the corpses through the streets in a motorcycle convoy.
People screamed: "Spy! Spy!" as the corpse was dragged by. A mob formed around the other five bodies, stomping and spitting on the remains.
The Hamas military wing, the Ezzedine al-Qassam Brigade, claimed responsibility in a large handwritten note attached to a nearby electricity pole. Hamas said the six were killed because they gave Israel information about fighters and rocket-launching sites. Hamas did not provide proof of the allegations.
The killing came on the seventh day of an Israeli military offensive that has killed more than 130 Palestinians, both militants and civilians, as well as five Israelis. Israel has launched hundreds of air strikes, targeting rocket-launching sites, weapons caches and homes of Hamas activists, in response to repeated Hamas rocket attacks on Israeli cities. Hundreds of Palestinian rockets have rained down on Israel in the past week.
In selecting its targets for airstrikes, Israel relies on unmanned spy planes, or drones, but also on a network of Palestinian collaborators who feed information to their handlers from Israel's domestic Shin Bet security service.
Israeli defence officials say Palestinian informers have been recruited ever since it captured the West Bank, the Gaza Strip and East Jerusalem in the 1967 war in the Middle East.
Some are recruited with promises of work permits or money, while others are blackmailed into collaborating.
There is broad consensus among Palestinians that informers for Israel deserve harsh punishment, and it is rare to hear someone speak out against killings of alleged collaborators. Such public killings have been carried out in the West Bank and Gaza since the first intifada - or uprising - against Israeli occupation in the late 1980s.
Human Rights Watch and other international rights groups have condemned such extrajudicial killings, as has the Palestinian Centre for Human Rights, a Gaza City-based group. Human Rights Watch says Hamas has also tortured suspected collaborators.
Tuesday's killings took place in Gaza City's Sheik Radwan neighbourhood.
Witnesses said a van stopped at the intersection, where four masked men pushed the six accused informers out of the vehicle. Salim Mahmoud, 18, said the gunmen ordered the six to lie face down in the street and then shot them dead.
Another witness, 13-year-old Mokhmen al-Gazhali, said the informers were killed one by one, as he mimicked the sound of gunfire.
They said only a few people were in the street at first - most Gazans have been staying indoors because of the Israeli air strikes - but the crowd quickly grew after the killings. Eventually, several hundred men pushed and shoved to get a close look at the bodies, lying in a jumble on the ground.
"They should have been killed in a more brutal fashion, so others don't even think about working with the occupation," said one of the bystanders, 24-year-old Ashraf Maher.
One body was then tied by a cable to the back of a motorcycle and dragged through the streets. A number of gunmen on motorcycles rode along as the body was pulled past a house of mourning for victims of an Israeli air strike.
In Israel's last major Gaza offensive four years ago, 17 suspected collaborators who fled after their prisons were hit in air strikes were later shot dead.
Tuesday's killings brought to eight the number of suspected informers that have been shot dead in public since the current Israeli offensive began. On Friday, the body of one alleged informer was found in a garbage bin, and another was shot dead in the street. Hamas claimed responsibility for both killings.