Let $M,N$ be smooth manifolds, $\pi:E\to M$ a smooth rank $r$ vector bundle, $f:N\to M$ a smooth map. We define $$ f^*E=\{(p,v)\in N\times E: f(p)=\pi(v)\}, $$ which has a natural structure of a vector bundle over $N$. Consider a section $\sigma\in\Gamma(E)$. Then $$ f^*\sigma:p\mapsto (p,\sigma\circ f(p)) $$ defines a smooth section of $f^*E$. I want to show that $\Gamma(f^*E)$, the space of smooth sections of $f^*$E, is generated as a $C^\infty(M)$-module by sections of the form $f^*\sigma$ with $\sigma\in\Gamma(E)$ (in other words: $\Gamma(f^*E)=f^*\Gamma(E)\otimes_{f^*C^\infty(M)}C^\infty(N)$).
Let's first show this locally. Consider a local trivilisation $\phi:E\vert_U\tilde\to U\times\mathbb R^r$. Let $\sigma_i\in\Gamma(E\vert_U)$ correspond to the constant section $p\mapsto (p,e_i)$ of $U\times\mathbb R^n$, where $e_i$ is the $i$-th standard basis vector of $\mathbb R^r$. In other words: $\sigma_i:p\mapsto\phi^{-1}(p,e_i)$. Since $f^*E\vert_{f^{-1}(U)}\cong f^{-1}(U)\times\mathbb R^k$, we see that $f^*\sigma_i$ corresponds under that identification to $p\mapsto (p,e_i)$. It's clear that any section of $f^*E\vert_{f^{-1}(U)}$ is a linear combination of $f^*\sigma_i$.
For the global case, I am thinking of invoking the result that there exists a finite cover $\{U_\alpha\}$ of $M$ and trivialisations $\phi_\alpha: E\vert_{U_\alpha}\tilde\to U_\alpha\times\mathbb R^r$. However, what I would like to do first is extend the previously defined $f^*\sigma_i$ to a global pull-back of a section. I do know it's possible to extend sections locally using a partition of unity argument, but I don't know how to achieve this in such a way that the global extension is still the pull-back of a finite number of sections...
So my question is: given a local section $\sigma\in\Gamma(E\vert_U)$ ($U\subset M$ open), we have a section $f^*\sigma\in\Gamma(f^*E\vert_{f^{-1}(U)})$; how can this section be extended to a section of the form $\sum_{i=1}^k f_i f^*\sigma_i$, $f_i\in C^\infty(M),\sigma_i\in\Gamma(E)$?
Could someone help me out?
I've been given the following hint in the chat: if $U_i$ is an open cover, then there exists(*) an open cover $V_i$ over the same index set such that $\overline{V_i}\subset U_i$. I think I can work it out with this result; I'll post my solution tomorrow.
(*) Existence of a specific refinement of an open cover on a manifold
See Ng Chikeung's answer for a nice short argument.