meaning "taking advantage of hidden opportunities". "Cunning" is more negative, meaning "good at deceiving people" (though in the past it used to be equivalent to "cute"!). "Sly" is about the same as "cunning".