Cheops NG

Michel Arboi <[email protected]> Sun, 06 Nov 2005 19:41:32 +0100
Newsgroups gmane.comp.security.nessus.devel
Message-ID <[email protected]>
--=-=-=
Content-Type: text/plain; charset=iso-8859-1

Any comment?


--=-=-=
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: attachment; filename=cheopsNG_detect.nasl

#
# This script was written by Michel Arboi <[email protected]>
# GPL...
#

if(description)
{
 script_id(29529);
 script_version ("$Revision$");
 script_name(english: "Cheops NG detection");
 
 desc = "
Synopsis :

A Cheops NG agent is running on the remote host.

Description :

Cheops NG is running on this port.
Unauthorized users could connect to this service and 
use it to map your network, port scan machines and 
identify running services.
See http://cheops-ng.sourceforge.net/

Solution:

Block this port from outside communication

Risk factor :

Low / CVSS Base Score : 7 
(AV:R/AC:L/Au:NR/C:P/A:P/I:N/B:C)";

 script_description(english:desc);
 script_summary(english: "Cheops NG agent is running");
 script_category(ACT_GATHER_INFO);
 script_copyright(english:"This script is Copyright (C) 2005 Michel Arboi");
 script_family(english: "Service detection");
 script_dependencie("find_service.nes", "find_service2.nasl");
 script_require_ports(2300, "Services/unknown");
 exit(0);
}

include("misc_func.inc");
include("global_settings.inc");

m1 = '\x00\x00\x00\x14\x00\x0c\x00\x04\x00\x00\x00\x00\x01\x00\x00\x00\x02\x00\x00\x00';
m2 = '\x00\x00\x00\x20\x00\x0c\x00\x02\x00\x00\x00\x00\x01\x00\x00\x7f\x01\x00\x00\x7f\x00\x00\x00\x00\x00\x00\x00\x00\xb8\xdf\x0d\x08';

if (thorough_tests)
 ports = get_kb_list("Services/unknown");
else
 ports = NULL;
ports = add_port_in_list(list: ports, port: 2300);

prev = 0;
foreach port (ports)
{
 if (port && port != prev && get_port_state(port) && 
     service_is_unknown(port:port))
 {
  prev = port;
  soc = open_sock_tcp(port);
  if (soc)
  {
   send(socket: soc, data: m1);
   if (report_paranoia < 1)
   {
    r = recv(socket: soc, length: 1);
    if (strlen(r) > 0)
    {
     debug_print('Service on port ', port, ' answers to first request\n');
     close(soc);
     continue;
    }
   }
   send(socket: soc, data: m2);
   r = recv(socket: soc, length: 512);
   debug_print('reply length = ', strlen(r), '\n');
   if (substr(r, 0, 2) == '\0\0\0' && '\x01\x00\x00\x7f' >< r)
    security_note(port);
   close(soc);
  }
 }
}

--=-=-=
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

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