This has nothing to do with Perl, but I have found nothing better than
Nessus for this kind of comprehensive checking. It is an open source portscanner that will run a very complete set of diagnostics, and can be run from another machine. You get a complete report, with an assessment of how vulnerable you are, and how to fix the exposure.
Please note that this has nothing to do with checking your machine to see if you're already infected. If you do find serious vulnerablities, you may have to assume the worst.