#!/bin/bash
# 
# Telnet (SunOS 5.6) Honeypot-Script intended for use with 
# Honeyd from Niels Provos 
# -> http://www.citi.umich.edu/u/provos/honeyd/
# Based on FTP Script from: Maik Ellinger
# 
# Author: Raffael Marty
# Last modified: 08/02/2002
# Version: 0.0.1
# 
# Changelog: 
#
# 0.0.2: minor fixes
# 0.0.1: initial release
# 

#set -x -v
DATE=`date`
host=`hostname`
domain=`dnsdomainname`
log=/var/log/honeyd/telnet-$1.log
AUTH="no"
PASS="no"
echo "$DATE: Telnet started from $1 Port $2" >> $log
echo -e "\n\nSunOS 5.6\r\r"
echo ""
while [ "$login" != "root" ] && [ "$password" != "root" ]
do
	echo -n "login: "	
	read login
	echo -e "Login: $login" >> $log
	echo -n "Password: "
	read -s password 
	echo -e "Password: $password" >> $log
	sleep 1;
done
echo -e "\n\rxhost: Command not found.\r"

num=102;	 #linenumber:
echo -en "< root@bummer:$num > "
while read incmd parm1 parm2 parm3 parm4 parm5
do
	# remove control-characters
	incmd=`echo $incmd | sed s/[[:cntrl:]]//g`
	parm1=`echo $parm1 | sed s/[[:cntrl:]]//g`
	parm2=`echo $parm2 | sed s/[[:cntrl:]]//g`
	parm3=`echo $parm3 | sed s/[[:cntrl:]]//g`
	parm4=`echo $parm4 | sed s/[[:cntrl:]]//g`
	parm5=`echo $parm5 | sed s/[[:cntrl:]]//g`

	# convert to upper-case
	incmd_nocase=`echo $incmd | gawk '{print toupper($0);}'`

	case $incmd_nocase in

	    LOGOUT* )
		echo -e "Connection to host lost.\r"
		;;
	    EXIT* )	
		echo -e "logout\r"
		echo -e "Missing name for redirect.\r"
		echo -e "Connection to host lost.\r"
                exit 0
		;;
	    LS* )	
		echo -e "\r"
                ;;
	    MKDIR* )
		;;
	    PWD* )
		;;
	    PS* )
		;;
	    LAST* )
		;;
	    * )
		echo -e "$incmd: Command not found.\r"
		;;
	esac
	echo -e "$incmd $parm1 $parm2 $parm3 $parm4 $parm5" >> $log
	let num=$num+1
	echo -en "< root@bummer:$num > "
done

