Let us follow the way that density is proven: obviously simple non-negative functions are dense (simple means finite linear combination of indicatrix functions of sets with finite measure) in non-negative $L^2$ functions. Then the matter is reduced to the approximation of $\mathbf 1_E$ for a Borel set $E$ with finite measure. Then you can use that for any positive $\varepsilon$, there exists $K$ compact and $\Omega$ open with $$ K\subset E\subset \Omega, \quad \mu(E\backslash K)<\varepsilon. $$ Then you can indeed construct a function in $C^\infty_c(\Omega)$$C^\infty_c(\Omega;[0,1])$ which is 1 on $K$: the latter construction goes explicitly by convolution of $\mathbf 1_{K+\delta}$ by a standard mollifier which can be chosen as non-negative.