Changeset 87
- Timestamp:
- 11/11/2008 07:13:19 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 7 edited
-
config.txt (modified) (1 diff)
-
docs/CHANGES.txt (modified) (1 diff)
-
nikto.pl (modified) (4 diffs)
-
plugins/db_outdated (modified) (1 diff)
-
plugins/nikto_apacheusers.plugin (modified) (1 diff)
-
plugins/nikto_core.plugin (modified) (4 diffs)
-
plugins/nikto_reports.plugin (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/config.txt
r77 r87 45 45 ######################################################################################################### 46 46 #PROXYHOST=127.0.0.1 47 #PROXYPORT= 808047 #PROXYPORT=3128 48 48 #PROXYUSER=proxyuserid 49 49 #PROXYPASS=proxypassword -
trunk/docs/CHANGES.txt
r85 r87 1 2008-11-11 plugins/nikto_core.plugin nikto.pl plugins/nikto_reports.plugin 2 - Added report phase to plugin runner 1 3 2008-10-09 plugins/nikto_core.plugin nikto.pl 2 4 - Further tunings to authentication code to simplify it. -
trunk/nikto.pl
r84 r87 41 41 42 42 # global var/definitions 43 use vars qw/$TEMPLATES %ERRSTRINGS % VERSIONS %CLI %VARIABLES %TESTS $CONTENT %FILES$CURRENT_HOST_ID $CURRENT_PORT/;44 use vars qw/% REALMS %REALMS_TESTED %NIKTOCONFIG %NIKTO %OUTPUT %SERVER%request %result %COUNTERS $STARTTIME/;43 use vars qw/$TEMPLATES %ERRSTRINGS %CLI %VARIABLES %TESTS $CONTENT $CURRENT_HOST_ID $CURRENT_PORT/; 44 use vars qw/%NIKTO %REALMS %NIKTOCONFIG %request %result %COUNTERS $STARTTIME/; 45 45 use vars qw/%db_extensions %FoF %UPDATES $DIV %TARGETS @DBFILE @SERVERFILE @BUILDITEMS $PROXYCHECKED $http_eol/; 46 46 use vars qw/@RESULTS @PLUGINS/; … … 67 67 require "$NIKTO{plugindir}/nikto_core.plugin"; ### Change this line if your setup is having trouble finding it 68 68 nprint("T:$STARTTIME: Starting", "d"); 69 require "$NIKTO{plugindir}/nikto_reports.plugin"; ### Change this line if your setup is having trouble finding it69 #require "$NIKTO{plugindir}/nikto_reports.plugin"; ### Change this line if your setup is having trouble finding it 70 70 require "$NIKTO{plugindir}/nikto_single.plugin"; ### Change this line if your setup is having trouble finding it 71 71 require "$NIKTO{plugindir}/LW2.pm"; ### Change this line if your setup is having trouble finding it … … 89 89 proxy_setup(); 90 90 91 open_output();91 #open_output(); 92 92 nprint($DIV); 93 93 … … 158 158 test_target(); 159 159 } 160 write_output();160 run_report(); 161 161 } 162 162 } -
trunk/plugins/db_outdated
r73 r87 385 385 "600374","Microsoft_PWS_Mac/","4.0b1","@RUNNING_VER appears to be outdated (current is at least @CURRENT_VER)" 386 386 "600375","Microsoft-HTTPAPI/","1.0","@RUNNING_VER appears to be outdated (current is at least @CURRENT_VER)" 387 "600376","Microsoft-IIS/","6.0","@RUNNING_VER appears to be outdated (4.0 for NT 4, 5.0 for Win2k )"387 "600376","Microsoft-IIS/","6.0","@RUNNING_VER appears to be outdated (4.0 for NT 4, 5.0 for Win2k, current is at least @CURRENT_VER)" 388 388 "600377","Microsoft-Internet-Information-Server/","1.0","@RUNNING_VER appears to be outdated (current is at least @CURRENT_VER)" 389 389 "600378","Microsoft-PWS-95/","2.0","@RUNNING_VER appears to be outdated (current is at least @CURRENT_VER)" -
trunk/plugins/nikto_apacheusers.plugin
r79 r87 50 50 if ($CONTENT !~ /forbidden/i) # Good, it gave an error instead of forbidden 51 51 { 52 add_vulnerability( CURRENT_HOST_ID, "Enumeration of users is possible by requesting ~username (responds with 'Forbidden' for users, 'not found' for non-existent users).", 999999, 637, "GET", "/~root");52 add_vulnerability($CURRENT_HOST_ID, "Enumeration of users is possible by requesting ~username (responds with 'Forbidden' for users, 'not found' for non-existent users).", 999999, 637, "GET", "/~root"); 53 53 } 54 54 } -
trunk/plugins/nikto_core.plugin
r84 r87 173 173 174 174 $TESTS{$CHECKID}{osvdb} =~ s/\s+/ OSVDB\-/g; 175 add_vulnerability($CURRENT_HOST_ID,"$ TESTS{$CHECKID}{method} $request{whisker}{uri}: $TESTS{$CHECKID}{message}",$CHECKID,$TESTS{$CHECKID}{osvdb},"",$uri);175 add_vulnerability($CURRENT_HOST_ID,"$request{whisker}{uri}: $TESTS{$CHECKID}{message}",$CHECKID,$TESTS{$CHECKID}{osvdb},$TESTS{$CHECKID}{method},$uri); 176 176 } 177 177 } … … 590 590 591 591 return; 592 }593 ###############################################################################594 sub badargs595 {596 print("HERE\n");597 my $i;598 for ($i=0;$i<=$#_;$i++)599 {600 print("Argument: $_[$i]\n");601 }602 592 } 603 593 ############################################################################### … … 1422 1412 $pluginhash->{recon_weight}=50 unless (defined $pluginhash->{recon_weight}); 1423 1413 $pluginhash->{scan_weight}=50 unless (defined $pluginhash->{scan_weight}); 1414 $pluginhash->{report_weight}=50 unless (defined $pluginhash->{report_weight}); 1424 1415 push(@PLUGINS, $pluginhash); 1425 1416 nprint("- Loaded \"$pluginhash->{full_name}\" plugin.","v"); … … 1477 1468 nprint("- Running scan for \"$plugin->{full_name}\" plugin","v"); 1478 1469 &{$plugin->{scan_method}}; 1470 } 1471 } 1472 } 1473 } 1474 1475 return; 1476 } 1477 1478 sub run_report 1479 { 1480 nprint("- Entering report phase","v"); 1481 # This is a frig until I can think of a better way of achieving it 1482 foreach my $i (1..100) 1483 { 1484 foreach my $plugin (@PLUGINS) 1485 { 1486 if (defined $plugin->{report_method} && $plugin->{report_weight} == $i) 1487 { 1488 my $run=1; 1489 # first check for conditionals 1490 if (defined $plugin->{report_cond}) 1491 { 1492 # Evaluate condition 1493 $run=eval "$plugin->{report_cond}"; 1494 } 1495 if ($run) 1496 { 1497 nprint("- Running report for \"$plugin->{full_name}\" plugin","v"); 1498 &{$plugin->{report_method}}; 1479 1499 } 1480 1500 } -
trunk/plugins/nikto_reports.plugin
r78 r87 24 24 # Reporting 25 25 ############################################################################### 26 sub nikto_reports_init 27 { 28 my $id = 29 { 30 name => "reports", 31 full_name => "Report as XML or HTML", 32 author => "Sullo", 33 description => "Produces an XML or HTML report.", 34 recon_method => \&open_output, 35 report_method => \&write_output, 36 copyright => "2008 CIRT Inc." 37 }; 38 return $id; 39 } 26 40 27 41 sub open_output
Note: See TracChangeset
for help on using the changeset viewer.