Malaga had the better early exchanges as the game started at a fast and furious pace with first Enzo Maresca then Rondon shooting high and wide from good positions in the opening minutes.
Malaga’s Argentine centre-half Demichelis then met a corner with a bullet header that had to be acrobatically saved by Julio Cesar in the Granada goal, before the home team started to create some danger of their own.
First Carlos Martins tried from long range on 36 minutes then again on 52 minutes with Malaga goalkeeper Willy Caballero quick to push both efforts wide.
Granada were now on top and on 57 minutes came the opening goal, man of the match Carlos Martins found Mikel Rico who crossed from the right for Ighalo to head home.
Malaga fought back and levelled 11 minutes later when Seba Fernandez played Nacho Monreal through with a delightful flick that allowed the overlapping full-back to cross for the waiting Rondon who had an easy finish for 1-1.
Demichelis headed just wide from a free-kick on 75 minutes and Malaga seemed the likely winners until Lopez’s goal 6 minutes later.
Caballero could not hold a Guilhermo Siquiera shot and it was the centre-half Lopez who was the quickest to pounce on the rebound to the delight of the partisan home crowd.
Demichelis was sent-off for a wild challenge on Franco Jara before the final whistle to signal Granada’s second consecutive win since the arrival of new coach Abel Resino.
The defeat denied Malaga the chance to go sixth while Granada will welcome the points that lifts them to 14th spot, three points clear of the relegation zone.