Well this is intuitively clear, and a hand-wavy approach would be to say that if f(x) were to rise above 0 at any point, it would make the integral greater than zero in that local region, and since f(x) is non-negative there's no way to balance out the overall integral to zero, therefore f(x) = 0 in [a,b].

A more rigorous approach might involve the intermediate value theorem.. not sure, I'd have to think about it more.