Alejandro Dominguez had given the visitors a 29th-minute lead in torrential rain at the Stadium of Light and the Greek side clung onto their lead until seven minutes from time when Cardozo struck.
The result leaves both teams locked together on four points in the group having both overcome Anderlecht and been well beaten by group leaders Paris St Germain in their opening games.
Olympiakos went into the game on a high on the back of five straight wins in all competitions but it was the hosts who started better with Cardozo seeing a third-minute free-kick tipped round the post by keeper Roberto Jimenez.
Luisao headed over on five minutes before Kostas Mitroglou, who scored a hat-trick in the 3-0 win at Anderlecht at the start of the month, had the first chance for Olympiakos with a shot from a tight angle which was well saved by Artur Moraes.
Mitroglou missed the target with a header from a David Fuster cross in the ninth minute as the game showed few signs of settling down after a frantic start.
Mitroglou forced a save out of Jimenez from long-range and set up the opener for Dominguez when his neat through-ball sent the Argentinian through to coolly slot the opener past Moraes.
As the weather worsened at the start of the second half, Benfica pressed for an equaliser with Lima bending a free-kick round the post and Nemanja Matic inches from connecting to a Nicolas Gaitan corner in front of goal.
Fuster might have increased Olympiakos' lead when his scuffed shot in the box was clogged up in the heavily waterlogged pitch, while the home side resorted to hopeful punts towards the visitors' box.
Benfica's efforts were finally rewarded seven minutes from time when Cardozo nudged the ball home after good work from Luisao in the box.
There was still time for the Greek side to come close to regaining their lead, but defender Jose Holebas fired a good chance wide in injury-time.