Paolo Guerrero, who at one point wasn't heading to the cup and then was, officially won't be at the tournament after the Court of Arbitration for Sport imposed a 14-month ban on the player.
The 34-year-old forward tested positive for cocaine metabolite benzoylecgonine following his country's World Cup qualifier against Argentina last October.
The news comes as a blow to the Peruvian national team, who are set to play in their first FIFA World Cup since 1982, who had named Guerrero in their provisional squad just yesterday.
Federation Internationale de Football Association later reduced the ban to six months, technically allowing him to play at the World Cup in Russia, but the Court of Arbitration for Sport (CAS) has also received an appeal by WADA which wants to get it back to at least a year, maybe two.
The player and his representatives have claimed he was not taking any drug and was accidentally consumed through tea, according to AS.
CAS heard the case after an appeal from the World Anti-Doping Agency, which had originally requested a 22-month ban.
CAS said Guerrero's ban will now total 14 months and not expire until January.
"The CAS Panel confirmed the existence of an ADRV [anti-doping rule violation] committed by Mr Guerrero, but also accepted that he did not attempt to enhance his performance by ingesting the prohibited substance", the CAS statement read. They reduced the ban in a fast-tracked appeal last December which clearing him to play at the World Cup.
Guerrero had played two games for his Brazilian club Flamengo, scoring in Sunday's 3-2 defeat against Chapecoense in the Brazilian championship, between the end of his original ban and the CAS verdict on Monday.
After the match, Guerrero said: "There is no reason for me to be suspended, I did nothing wrong and I trust the court to make the right decision".