A one-dimensional version where the random additions are generated inside NestList
dR[a_, b_, r_, w_] := r + a*b*w;
rSim[a_, b_, w_, r_] = r + dR[a, b, r, w];
NestList[rSim[a, b, RandomReal[], #] &, r0, 3]
With FoldList you can provide a list of externally generated random additions:
randomWList = RandomReal[{0, 1}, 3];
FoldList[rSim[a, b, #2, #1] &, r0, randomWList]