I bet there are several ways to do this. One we've used in the past is to create a contact field (a checkbox called "in nurturing" or something like that) and set the field to 1 when they enter such a campaign, and set it back to 0 when they leave. Then put a decision rule at the beginning of each campaign which excludes anyone with the field set to 1.
Does that make sense?
I don't think you can update the value of a field in the Campaign Canvass, but you can make a simple one-step program in Program Builder that sets the field to 1, and another that sets it to 0, and just add prospects to these programs as needed from the campaign canvass.