Does anyone know how secure garbage collection is in perl?

I am specifically thinking of:
1. CGI Environment on shared servers (perl 5.00503/5.6.1/5.8 on linux/freebsd)
2. perl gui app on windows (i.e. wxperl)

Can perl's garbage collection leave sensitive data hanging around in memory long after the program (i.e. CGI environment) has finished execution? If so, would a paranoid DESTROY routine which fills in this data with same-length junk before undefining the object be sufficient to stop that from happening?

I know you can probably snoop on a running program, my question is about after it's been run whether memory or disk might have wrongly persisting copies of variables. Presumably perl depends on the OS to reuse memory?

Consider WinPT, a GPG windows frontend. I'm guessing they have taken care of this issue from the start. But it might be quite difficult to write a simplified frontend in perl since even if you could remove perl variables from memory completely the C-based gui libraries might I suppose be less kind. Looked for memory scanners but just found something for games.


In reply to security of garbage collection by mattr

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.