I think this exact question answered in Theorem 1 of §8.1 of William Fulton's "Young Tableaux". Lazy as I am, I am unsure whether I have ever read the proof, but the answer is the following (unless I got Fulton's notations wrong): Whenever $p$ is a filling of the Young diagram of $\lambda$ **with vectors in $V$**, we can define an element $x_p$ of $S^{\lambda}\left(V\right)$ by taking, for each $i=1,2,...,\lambda_1$, the wedge product $w_i$ of the elements of the $i$-th column of $p$ (from top to bottom), and then taking the tensor product $w_1\otimes w_2\otimes ...\otimes w_{\lambda_1}$ of these $w_i$, and projecting this tensor product onto $S^{\lambda}\left(V\right)$. Now, letting $e_1,e_2,...,e_n$ be a basis of $V$, we can construct, for every Young tableau $T$ of shape $\lambda$ over the alphabet $\left\lbrace 1,2,...,n\right\rbrace $, an element $e_T$ of $S^{\lambda}\left(V\right)$ by $e_T = x_{p_T}$, where $p_T$ is the filling of the shape $\lambda$ in which every cell filled with a letter $j$ in $T$ is filled with the basis vector $e_j$. Then, Fulton's Theorem 1 claims that the $e_T$ with $T$ ranging over all **semistandard** tableaux over the alphabet $\left\lbrace 1,2,...,n\right\rbrace $ form a vector space basis of $S^{\lambda}\left(V\right)$.

Nota bene: This is only canonical with respect to a **totally ordered** basis.

Related results exist for so-called "bitableaux" (and probably contain the above result for tableaux?); see Doubilet-Rota-Stein Foundations IX and the subsequent papers by Rota, Désarménien, Kung, de Concini, Procesi and others.