The 23-year-old Lapierre had 18 points in 53 games last season for Montreal. He'll make $575,000 the first year and $800,000 in 2009-10.
"Maxim is part of our core of young players who contribute to the success of our team," Canadiens GM Bob Gainey said. "The determination, grit and energy he brings to the ice are important assets that we are looking for in our young players."
He has 30 points and 84 penalty minutes in 100 NHL games.
The Canadiens selected him in the second round of the 2003 draft.