I've never tried this, but looks fun:
https://www.wikihow.com/Dye-Canvas-Shoes
Looks like your outsoles are darkish rubber, so I wouldn't worry about the dye staining them.
I would remove the laces and insoles first, and you'll want to wash thoroughly after. You probably won't want to wear white socks with them for a while.
You could use a typical natural fiber dye (Rit is the only brand I know, but claims to be all-purpose) or indigo dye. Indigo dying is a bit more involved from what I've heard, but can get much darker and lasts longer.