/*
* ftelnetd - fake telnet daemon
*
* banner.c
* This file should be enough to fight against nmap and let it show the
* services as original as specified the fake mode. But without guarantee! :)
* But be paranoid, because: for example,
* the data for cisco devices between "password:" won't be faked! I'll change
* it soon.
*
* Sun Feb 11 03:36:43 CET 2007
*
* by Levent Kayan
* levent[at]corehack[org]
* www.corehack.org
*/
#include "banner.h"
#include <stdio.h>
#include <stdlib.h>
/* supported targets for ftelnetd: router, telnetd, dsl-modem etc... */
fake_mode target[] = {
{ "Check Point Firewall-1" },
{ "Cisco Router" },
{ "BusyBox" },
{ "Netgear" },
{ "SpeedStream" },
};
void print_modes()
{
int i;
printf("Available fake login banner are:\n");
for (i = 0; i < 5; i++) {
printf("\t%i - %s\n", i, target[i].fake_modes);
}
exit(EXIT_SUCCESS);
}
/* excuse me, hardcoded banner :P */
banner_t banner[] = {
{
3,
1,
"Checkpoint Firewall",
"Check Point FireWall-1 authenticated Telnet server running on localhost\
\r\n\r\xff\xfb\x01\xff\xfe\x01\xff\xfb\x03",
"User:\x20",
"\r\npassword:\x20",
"\r\nAccess denied - wrong user name or password\r\n\r\r\n",
'*',
60,
/* no timeout message is sent */
"",
1
},
{
3,
1,
"Cisco",
"\xff\xfb\x01\xff\xfb\x03\xff\xfd\x18\xff\xfd\x1f\
\r\n\r\nUser Access Verification\r\n",
"\r\nUsername:\x20",
"\r\nPassword:\x20",
"\r\n\r\n% Authentication failed.\r\n",
0x00,
30,
"\r\n% Password:\x20\x20timeout expired!\r\n",
1
},
{
3,
1,
"BusyBox",
/* BusyBox send a banner together with user string */
"\xff\xfd\x01\xff\xfd\x21\xff\xfb\x01\xff\xfb\x03",
"\r\nBusyBox on localhost login:\x20",
"\r\nPassword:\x20",
"\r\nLogin incorrect\r\n",
0x00,
60,
"\r\nLogin timed out after 60 seconds.\r\n",
1
},
{
0,
4,
"Netgear",
/* Netgear doesn't send a banner */
"\xff\xfb\x03\xff\xfb\x01",
/* Netgear doesn't send a user string */
"",
"\r\nPassword:\x20",
"\r\n\r\nBad Password!!!\r\n",
'*',
180,
/* no timeout message */
"",
4
},
{
5,
1,
"SpeedStream",
"\xff\xfb\x01\xff\xfd\x01\xff\xfb\x03\xff\xfd\x03\xff\xfb\x05\xff\xfd\x05SpeedStream Telnet Server\r\n\r\n",
"\r\nlogin:\x20",
"\r\npassword:\x20",
/* no "pass wrong" message */
"",
0x00,
60,
/* no timeout message */
"",
5
},
};
/* EOF */
syntax highlighted by Code2HTML, v. 0.9.1