We study the multiplicity of positive solutions for a two-point boundary value problem associated to the nonlinear second order equation u + f (x, u) = 0. We allow x → f (x, s) to change its sign in order to cover the case of scalar equations with indefinite weight. Roughly speaking, our main assumptions require that f (x, s)/s is below λ1 as s → 0 + and above λ1 as s → +∞. In particular, we can deal with the situation in which f (x, s) has a superlinear growth at zero and at infinity. We propose a new approach based on the topological degree which provides the multiplicity of solutions. Applications are given for u + a(x)g(u) = 0, where we prove the existence of 2 n − 1 positive solutions when a(x) has n positive humps and a − (x) is sufficiently large.