touch
can change the access and modify times. Try something like (untested):
find /path/to/source_files -exec touch --reference={} /path/to/dest/{} \;
This could work if the destination path (copied files) is named as a superset of the path of their original location. If the relationship is more complicated, you will need to do some manipulation of the paths.
Regarding the ctime, this is from info touch
:
Although 'touch' provides options for changing two of the times--the
times of last access and modification--of a file, there is actually a
third one as well: the inode change time. This is often referred to as
a file's 'ctime'. The inode change time represents the time when the
file's meta-information last changed. One common example of this is
when the permissions of a file change. Changing the permissions
doesn't access the file, so the atime doesn't change, nor does it
modify the file, so the mtime doesn't change. Yet, something about the
file itself has changed, and this must be noted somewhere. This is the
job of the ctime field. This is necessary, so that, for example, a
backup program can make a fresh copy of the file, including the new
permissions value. Another operation that modifies a file's ctime
without affecting the others is renaming. In any case, it is not
possible, in normal operations, for a user to change the ctime field to
a user-specified value.