The trick is that your local clock does not not need to be accurate, it just needs to be consistently in error (i.e. short term change isn't much). That is OK for a typical quartz oscillator.
So lets go with four satellites. Assume that you are trying to solve for three position values (X, Y, Z - say from the centre of the earth, Earth Centered Earth Fixed). However your position measurements are in actually time measurements (time from transmission at each satellite to reception at your receiver), so they are all in error by your local clock error. However since you have a fourth measurement, you can resolve that error (which is common across your four time / distance measurements).
So if you know when each signal was "sent" (timestamped by the satellite, which has a highly accurate clock set), and you know your local reception time (with a constant bias error), you can calculate the four unknowns (X, Y, Z and dt).