The racing driver urged broadcasters to shun the 91-year-old and said someone who supported “killing” people should not be given a platform.
Interviewed on ITV’s Good Morning Britain on Thursday, Mr Ecclestone described the Russian president as a “first-class person” and appeared to downplay his invasion of Ukraine.
“What he’s doing is something that he believed was the right thing he was doing for Russia,” he said.
“Unfortunately, he’s like a lot of business people, certainly like me, we make mistakes from time to time.
“I’d still take a bullet for him. I’d rather it didn’t hurt, but if it does I’d still take a bullet, because he’s a first-class person.”
Mr Ecclestone added the war could have been averted if Ukraine’s president, Volodymyr Zelensky, made “a big enough effort” to speak to Mr Putin.
Hamilton, a seven-time Formula 1 world champion, argued Mr Ecclestone was an “older voice” who no longer represented the sport.
“We don’t need any more of it, to hear from someone that believes in the war, and the displacement of people and killing of people, and supporting that person (Putin) is beyond me,” he said.
“I cannot believe I heard that. This is going to put us back decades, and we have yet to see the real brunt of the pain.
“Why? We do not need to be supporting that but looking into the future.
“If you don’t have anything positive to contribute, don’t give them any space.”
F1 also moved to distance itself from the remarks of its former boss, who ruled the sport for four decades until departing in 2017.
A spokesperson said: “The comments made by Bernie Ecclestone are his personal views and are in very stark contrast to the position of the modern values of our sport.”