The Australian, second on the starting grid, passed world champion Sebastian Vettel for the lead after 30 of the 71 laps when his team mate was apparently wrestling with a gearbox problem.
German Vettel, who wrapped up his second title last month with four races to spare, finished second -- 16.9 seconds behind -- and ahead of McLaren's Jenson Button.
The win was Webber's first since Hungary in August 2010, 26 races ago, and the seventh of his career.
Image: Red Bull driver Mark Webber of Australia celebrates on the podium after winning the Brazilian Formula One Grand Prix at the Interlagos race track in Sao Paulo, Brazil, Sunday Nov. 27, 2011.
Images: APMore on Formula One