After interviewing some 50 people in both north African enclaves that neighbour Morocco, the group said migrants who arrived there had at times experienced police abuse, and vulnerable people such as homosexuals or victims of domestic violence were not given adequate protection.
Spain's interior ministry did not comment on the report.
Ceuta and Melilla are favoured entry points for African migrants seeking to get to Europe, who attempt to climb over complex border systems made of high fences which they sometimes hang on to for hours, or swim along the coast.
Spanish and Moroccan authorities have been cooperating to prevent migrants crossing from the African side of the borders into the enclaves.
“There are videos where you can see how Moroccan police hit (migrants)… make them fall and send them away,” Amnesty said, adding that Spanish officers turned a blind eye.
Once in Spanish territory, migrants are taken to temporary detention centres used to hold people while officials decide whether or not they will be deported, but the journey is far from over.
“The majority of people asking for asylum, except those of Syrian nationality, find themselves blocked in the limbo that is Ceuta and Melilla,” said Esteban Beltran, director of Amnesty International Spain.
The interior ministry said more than 11,600 migrants and refugees arrived in Ceuta and Melilla last year, the majority from Syria – a 55 percent increase from 2014. The combined population of the two enclaves is just over 170,000.
Syrians' asylum requests are usually acted upon immediately, as they do not have to prove that they are in danger – their country being in the midst of conflict.
Other nationalities have a tougher time, says Amnesty, and asylum procedures are not always respected.
As an example, the group said, “the red, asylum-seeker card should allow freedom of movement in all Spanish territory, but this right is not respected in Ceuta and Melilla”.
Amnesty said the detention centres also failed to protect the most vulnerable, such as homosexuals.
In Melilla's centre, at least 60 people have asked for asylum for being persecuted in their home countries for their sexual orientation, and some have been waiting between six months and a year.
Amnesty said they had suffered discrimination from other people in the centre, threats and even assaults.
Amnesty called for Spain to guarantee the immediate transfer to the peninsula of those who are particularly vulnerable, and stop cooperating on migration control with neighbouring Morocco, which it accused of violating refugees' rights.
By AFP's Michaela Cancela-Kieffer