Using a DC Power Analyser properly
Of course, it could be an hardware design problem and I won't omit this possibility but obtaining 5+ mA while my MCU is in sleep mode 


One problem may be the UART TX lines. They are HIGH in idle, and could power the GPS or GSM module via ESD diodes. Standard pin drive is ~6mA, btw.

To avoid this problem you could configure the pins back to GPIO in the U(S)ARTx->ROUTE register and drive the GPIO pins low,
or you could enable the TXINV and RXINV bit to negate the UART logic while the modules are not powered.