Any online dictionaries I can find agree on a /ʃ/ across any standard dialects they cover. I don't remember encountering the other pronunciation myself.
I suspect that you are looking at an example of (possibly non-phonological) lenition in non-standard dialects. While lenition can be an obligatory and phonologically crisp phenomenon in some languages, it is less prominent in English. You could describe non-phonological lenition as an "easier" pronunciation of the same phoneme, as its realization which is half way on the road to its swallowing (disappearance). One of the typical examples of lenition is a change of a voiceless, intensely articulated consonant to the corresponding shorter, voiced, less intense one, especially in an intervocalic position like the one in your example; lenition could either shorten the voiceless fraction of the sibilant, or eliminate it altogether at which point it would be fair to transcribe the sound as /ʒ/. The same speaker might however use /ʃ/ when striving to be understood: this is what I mean by labelling such pronunciation as non-phonological within their idiolect.
There were, and are, dialects of English with lenition which got phonologized. The most obvious example is the merged pronunciations of "writer" and "rider" in American English.
Another noteworthy one is Southern English Fricative Voicing, also called Southern English Fricative Weakening: Old English did not distinguish voiced and voiceless fricatives in any context, while Middle English dialects already generally did. But this sweeping development involved dialectal developments spanning a millennium. You might be able to find the last generation of speakers who'd pronounce "six" as /ziks/ in South-Western England even today. However:
- If this dialectal feature still exists, it is restricted to word-initial segments and so it cannot cover your example.
- "caution" didn't evolve from Old English, it arrived from Old French, where the segment's voicing was already firmly distinctive. (Thanks to user8078 for a correction, it was specifically /tsj/ in Old French, a precursor to later /ʃ/ in Middle English "caucioun" meaning "security" ("pledge" or "bond" or "pawn").