Hello,
AFAIK there is no generic method to bypass gcc stack protector (canary
protection). However there are some twist and turns which might help
in practical scenarios, for eg. a given procedure stack will have
canary protection only if there is atleast 1 char buffer by default
unless -fstack-protector-all is used (which is not the case by default
for most distros). If a given function only declares int, and not char
type buffer, then that particular stack won't be protected by
canaries.
Normally people who need to write practically useful exploit targets
application specific data structures like function pointers, function
parameters etc. and other meta-information which can be controlled to
alter the legitimate program control flow.
-abhisek