Derbyshire produced a spirited fightback - claiming the last four Surrey wickets for just two runs - to leave the match at the Kia Oval finely poised after Day Two.
The visitors claimed three wickets in the opening session, but a 96-run stand between Vikram Solanki - who top scored with 93 - and Zander de Bruyn (40) put the hosts in a strong position on 220-5 at tea.
But in an extraordinary final hour of play, Mark Footitt (4-50) – who picked up two wickets in as many balls – and Matt Higginbottom (2-66) ripped through the hosts' tail, claiming the final four wickets inside three overs to dismiss Surrey for 289, a lead of 70.
Openers Ben Slater and Paul Borrington navigated the final seven overs to close on 13-0 and will resume Day Three trailing by 57 runs with 10 wickets still in hand.
Mark Footitt trapped Arun Harinath (1) lbw in his first over to give the visitors the perfect start to the second day in London.
The left-arm paceman bowled with good pace and accuracy during his opening spell, and duly got his reward when he had world number one Test batsman Hashim Amla caught at third slip by Peter Burgoyne for 16.
And the visitors completed a good morning when Burgoyne trapped Rory Burns lbw for 24 to reduce Surrey to 97-3 at lunch.
The hosts, however, fought back in the afternoon session thanks to a stand between Solanki and de Bruyn. Together they moved the hosts to within 40 runs of Derbyshire’s first innings total before David Wainwright (3-46) finally broke the partnership trapping de Bruyn lbw for 40.
Former England international Solanki produced a fine innings, striking six fours and a six in his 141-ball innings, before he was finally dislodged by Wainwright to top score with 93.
Some late runs from Gareth Batty (35) and Steven Davies (29) seemed to have put Surrey in a very strong position on 287-6 – but a fantastic spell with the new ball from Footitt and Higginbottom claimed the last four wickets for just two runs.
During a dramatic period of play, Higginbottom removed both Batty and George Edwards (0), while Footitt claimed two wickets in as many balls – and will start the second innings on a hat-trick – to dismiss the hosts for 289.
© 2015 Derbyshire County Cricket Club
The 3aaa County Ground, Grandstand Road, Derby DE21 6AF. Tel: 01332 388 101
Website design by: www.thisismedia.co.uk