The STM32 has is a SAR ADC. When this type of ADC samples the input signal, it connects its internal sampling capacitor to the input, which pulls current to charge the capacitor. This causes a glitch on the input signal.
You can find the sampling capacitor's value in the datasheet, along with the aperture time (or sampling time) which is how long the sampling switch remains closed.
To get an accurate reading, the signal source impedance should be such that voltage on the sampling capacitor settles to 1LSB of target within the sampling time.
If source impedance is too high, this may mean you have to add a buffer, but this opamp should also settle to 1LSB of target within the sampling time. If it's a slow opamp, that doesn't finish settling when the sampling window closes, it will be inaccurate. Another option if the signal is slow is to filter it with a cap. The sampling cap will pull an amount of charge from the filter cap, and q=CV, so if we want voltage on the filter cap to change by less than 1LSB then it has to be greater than the sampling cap multiplied by \$ 2^{nbits} \$. Then, sampling frequency should be low enough that the average current pulled by charging the sampling cap doesn't disturb the input by more than 1LSB, taking into account source impedance. This takes a lot of text to explain, but it's pretty simple, and you need a filter anyway.
Your other ADC is also a SAR, so the same rules apply depending on source impedance.
It is connected to the same input so both ADCs will see the glitch created by the other ADC.
The simplest solution is to not sample both ADCs at the same time.