One officer was shot in the face and one in the shoulder, St Louis County police chief Jon Belmar said.
Both suffered “very serious gunshot injuries” but were conscious, he said.
The officers were shot following the resignation of Ferguson’s police chief, Thomas Jackson, after a federal report alleged widespread racial bias in his department.
Protesters had gathered outside Ferguson police headquarters on March 11, in what was initially a relatively low-key demonstration.
Shortly after midnight at least three shots were fired as the crowd of protesters was starting to break up, Jon Belmar said.
He said he was assuming that “these shots were directed exactly at my police officers”, rather than the officers being hit by stray bullets.
One protester, Keith Rose, said he saw an officer “covered in blood”, and that other officers were carrying and dragging him, leaving a trail of blood on the ground.
Police were keeping protesters in the area in order to take witness statements, Jon Belmar said.
Demonstrators were calling for further action to be taken over the federal report, and for more resignations in the police department, Keith Rose said.
Police chief Thomas Jackson was the sixth Ferguson official to be fired or step down. He had initially resisted calls from protesters and some state leaders to resign.
Ferguson’s police department was widely criticized after the shooting of Michael Brown in August and the weeks of demonstrations that followed.
In November, a St Louis County grand jury and the US Justice Department found that Officer Darren Wilson did not break any laws when he shot Brown.
However, Michael Brown’s shooting and the riots that followed spurred a federal investigation, which found overwhelming racial bias in the town’s policing practices.
US Attorney General Eric Holder has said the federal government will “use all power that we have to change the situation”.
That could include dissolving the police force and turning over law enforcement responsibilities to neighboring agencies.
nVTXAKnvsAcThe US House Ethics Committee has voted to release its report on former Republican Representative…
ABC News has agreed to pay $15 million to President-elect Donald Trump to settle a…
South Korea’s parliament has voted to impeach President Yoon Suk Yeol over his failed attempt…
Israeli war planes have carried out more than 100 air strikes in Syria on December…
President-elect Donald Trump has threatened to impose 100% tariffs on the BRICS countries if they…
Syrian troops have withdrawn from the city of Aleppo following an offensive by rebels opposed…