khan rohail wrote: > Hi > Is it possible to check for open ports through NMAP > (yes) and put the results into a database, through any > script or tool.
How about a Perl script? nmap produces very human-readable output, which can then be regexp'd and stuffed into a database. Consider the following fragment of code: --------------------- #!/usr/bin/perl use DBI; my $data_source = "dbi:DriverName:[EMAIL PROTECTED]:2727"; my $username = "foo"; my $password = "password"; # Connect to the database; my $dbh = DBI->connect( $data_source, $username, $password ) || die $DBI::errstr; # Process nmap's output while( <STDIN> ) { my $line = $_; if( $line =~ /(\d+)\/(\w+)\s+open\s+(\w+)/ ) { my $port = $1; my $protocol = $2; my $service = $3; print "Port $port ($service) open for $protocol\n"; # Make insertion (assumes a table def of: # INT id NOT NULL AUTO_INCREMENT # INT port # VARCHAR protocol # VARCHAR service my $rows_deleted = $dbh->do( q{ INSERT INTO table VALUES( NULL, $port, '$protocol', '$service' ) }, undef, "DONE" ) || die $dbh->errstr; } # if (open port found) } # while (eating STDIN) # Disconnect cleanly $dbh->disconnect(); --------------------- I do not claim that the DBI stuff is right, as I did not feel like installing the MySQL client stuff just for this exercise. ;) -- Josh Glover <[EMAIL PROTECTED]> Associate Systems Administrator INCOGEN, Inc.