We have been writing a custom a plugin to test for the presence of McAfee EPO 
Agent on workstations and we have had success in accomplishing this but we had 
several problems along the way for which we would like to request answers. We 
are using Nessus server and client 3.2.0:

1. Why do the get_port_state, get_tcp_port_state and get_udp_port_state 
functions always return a value of 1 (i.e. true)?

We noted the comment that the get_udp_port_state function may be unreliable but 
we were expecting the get_tcp_port_state or just get_port_state function to 
reliably report the port status. By using Wireshark on a laptop running Linux, 
we were able to determine that the function does not send any request or 
packets to the remote workstation. How then does it determine that the port is 
indeed open?

2. Since the UPD protocol is stateless or connection less, the above function 
always returns true and the open_sock_udp function aqlso always succeeds, how 
do you determine whether a UDP port is open on a remote host? How do you listen 
to a response on that port?

3. When you drop a custom plugin into the plugin directory 
(/opt/nessus/lib/nessus/plugins) and restart Nessus, the plugin does not 
immediately appear in the plugin list. We checked and double checked all of the 
fields on the description and they appear to be correct but just in case, here 
is our description section:

if (description)
{
 script_id(95001);
 script_version("$Revision: 1.0 $");
 script_name(english:"Detect EPO Agent");
 script_summary(english:"Detect presence of EPO Agent and return information");

 desc = "
Synopsis :

Checks whether McAfee EPO Agent is running on the remote host

Description :

This plugin attempts to determine whether McAfee EPO agent is
running on the remote host and returns some information about
the agent.

Solution :

None

Risk factor:

None";

 script_description(english:desc);
 script_category(ACT_GATHER_INFO);
 script_family(english:"LCC Custom");

 script_copyright(english:"This script is Copyright (C) 2008, John Chajecki, Lei
cester City Council");

 script_dependencies("");
 script_require_ports("Services/www", 8081, "Services/www", 8086);
 exit(0);
}

What seems to happen is that the plugin does eventually appear in the list some 
30min to an hour later.
Is there any way to force a re-sync of the plugin database so that it will 
appear immediately or reasonably quickly?

4. Is there a way of selecting all plugins for a specific platform e.g. 
Solaris, Windows. Cisco etc? We couldn't find any and this seems a major 
omission in our opinion.

5. On the plugin selection tab in the Nessus Client, why does the find function 
never return any results? Also, why does the 'Show All' button cause all 
plugins AND all port scanners on the option page AND other options on other 
tabs to become de-selected?

Any explanation would be greatly appreciated.


_
John Chajecki
Senior Infrastructure Engineer
Information Division
Resources Department
Leicester City Council

_______________________________________________
Nessus mailing list
[email protected]
http://mail.nessus.org/mailman/listinfo/nessus

Reply via email to