The visitors took the lead after just four minutes through Arjen Robben and made their passage safe with Thomas Muller's goal 12 minutes from time.
The league leaders were joined in the last eight by Eintracht Frankfurt, who put their Bundesliga troubles aside with a morale-boosting 4-2 victory over second division Sandhausen.
Mato Joselu scored the opener after 19 minutes, adding a second from the penalty spot four minutes into the second half.
Sandhausen pulled level with two goals in as many minutes, Sebastian Rode putting through his own net and Simon Tuting equalising, but Vaclav Kadlec restored Eintracht's advantage soon after before Joselu completed his hat-trick in stoppage time.
Wolfsburg were also facing 2.Bundesliga opposition in the third round but needed a late goal from Ivica Olic to see off Ingolstadt 2-1.
The top-flight club trailed for much of the match to Caiuby's 18th-minute opener, but Ronaldo Naldo levelled after 66 minutes with Olic then snatching the win as full-time approached.
Bayer Leverkusen came out on top of their all-Bundesliga tie with Freiburg, winning 2-1 courtesy of goals from Robbie Kruse and Emre Can.
Matthias Ginter netted the only reply for the hosts.