I get that 4,6,5,7 is valid and scores 4 points.
If it was a run that goes past the four cards played, e.g. 4,6,5,7 then a 3 is played and then a 2.
Do the 3 and 2 continue the run and score 5 points and then 6 points?
Yes. Each card that makes a run during play scores the run.
Similarly, if anyone lays a card such that with the three or more preceding cards, a run can be constructed, the number of cards which would make up that run are scored. e.g. suppose cards were laid in the following order: 8,6,4,5,7. The fourth card would score 3 points, the fifth card would score five points.
See for more: http://cribbagecorner.com/node/536