The 31-year-old former Germany midfielder has been at Leverkusen since 2005 and his contract was due to run out in June.
"The mix of experienced players and young talented ones is just right at the club and I want to play my part so we can achieve things in the future," Rolfes said in a statement.
Leverkusen are third in the Bundesliga, a point behind second-placed Borussia Dortmund. Bayern Munich are 17 points clear at the top.
"He will continue playing an important role for us," said Leverkusen sports director Rudi Voeller.
Voeller's club travel to eighth-placed Mainz on Saturday.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.