Sure, you can pick up the pixel's uv with UV and you can get the time with TIME.
You can use a hashing function to make white noise:
float hash (vec2 st) {
return fract(sin(dot(st.xy, vec2(12.9898,78.233))) * 43758.5453123);
}
I recommend these exact magic numbers as they avoid constructive and disruptive wave interference (which makes non-random patterns) as far as possible.
Or if you want "hilly noise" for a landscape you can make OpenSimplexNoise in the editor and just pick it up in the shader. This is also possible to compute in the shader but you have to loop your hashes. Best just to google an optimum solution, no need to reinvent the wheel.