Perl interface to processing / querying NIST’s NVD feed

For a work project, I wrote a library in perl that can be used to query the NVD feed that NIST publishes here:

Here’s a snippit from the perldoc:

use NIST::NVD::Query;
# use convert_nvdcve to generate these files from the XML dumps at
my( $path_to_db, $path_to_idx_cpe ) = @ARGV;
my $q = NIST::NVD::Query->new( database => $path_to_db,
                               idx_cpe  => $path_to_idx_cpe,
# Given a Common Platform Enumeration urn, returns a list of known
my $cve_id_list = $q->cve_for_cpe( cpe => 'cpe:/a:zaal:tgt:1.0.6' );
my @entry;
foreach my $cve_id ( @$cve_id_list ){
  # Given a CVE ID, returns a CVE entry
  my $entry = $q->cve( cve_id => $cve_id );
  push( @entry, $entry );
  print $entry->{'vuln:summary'};