Skocz do zawartości

Jak oszukac serwer


o_w_c_a

Rekomendowane odpowiedzi

Witam.

Mam problem z moim serwerem - mianowicie dziala on w trybie safe mode (za dokladnie niewiem co to znaczy ale wiem ze chyba nie moze linkowac do stron zewnetzrnych) dlatego takie php mi nie dziala:

"

<?php

ini_set ("include_path", ini_get ("include_path") . ':../:../../:../../../:../../../../');

include ('ad_network.php');

echo $ad_network[0];

?>

"

Czy jest jakis sposob oszukania serwera i zeby jakos zamienic funkcje ktrora ma on zablokowana jakas zmienna?

Za info dzieki

Owca

Odnośnik do komentarza
Udostępnij na innych stronach

AFAIK tutaj oprocz ini_set nie ma nic co by safe mode wycinał- tak ze byc moze wystarczy jak zrobisz

include ('../ad_network.php'); //dokladna sciezka dopliku

echo $ad_network[0]; 

nie pamietam dokladnie, mozliwe ze nie mozna includowac plikow ktorych wlascicielem jest inny uzytkownik niz ten, ktory uruchamia skrypt (na pewno nie mozna odczytywac takich plikow przez fread np.). Wtedy gorzej- trzeba by zapisac ad_ntework.php z zawartoscia uzywajac do tego całkowicie skryptu php

Odnośnik do komentarza
Udostępnij na innych stronach

Nie chyba nie problem jest dokonca w tym co zalaczylem - to chyba odsyla do pliku w glownym ad_network.php a jego jest taka zawartosc (niechcialem zabagniac wiec dlatego odrazu nie przekleilem):

"

<?php

// Last update: Jan 21, 2005 8:51 am

if (!function_exists('file_get_contents')) {

function file_get_contents($url) {

$handle = fopen($url, 'r');

$string = fread($handle, 4096000);

fclose($handle);

return $string;

}

}

if (!function_exists('make_seed')) {

function make_seed() {

list($usec, $sec) = explode(' ', microtime());

return (float) $sec + ((float) $usec * 100000);

}

mt_srand (make_seed());

}

if (!isset($_SERVER)) $_SERVER = $HTTP_SERVER_VARS;

$ad_file = 'ad_network_ads.txt';

for ($i = 0; $i <= 11; $i++) {

$p = substr ('../../../../../../../../../../', 0, $i * 3);

if (file_exists ($p . $ad_file)) {

$ad_file = $p . $ad_file;

break;

}

}

if (is_writable ($ad_file)) {

$ads = file_get_contents ($ad_file);

$ads = explode ('<ad_break>', $ads);

$ads_temp = explode ('|', $ads[0]);

$file = fopen($ad_file, 'r+');

if (flock ($file, LOCK_EX|LOCK_NB, $would_block) && !$would_block) {

if ((count ($ads) < $ads_temp[3] + 1 && $ads_temp[0] + $ads_temp[5] < time()) || $ads_temp[0] + $ads_temp[4] < time()) {

$new_ad = file_get_contents ('https://ads.digitalpoint.com/network.php?b=' . $_SERVER['SERVER_NAME'] . '&color=F2F2F2');

if ($new_ad) {

$ads_param = explode ('<ad_param>' , $new_ad);

$new_ad = $ads_param[1];

unset ($ads_param[1]);

$ads_temp = explode ('|', $ads_temp[0] . '|' . $ads_temp[1] . '|' . $ads_param[0]);

} else {

$ads_param = array_slice ($ads_temp, 2, 4);

}

$ads[0] = time() . '|' . gethostbyname('validate.digitalpoint.com') . '|' . implode ('|', $ads_param);

if ($new_ad) {

$ads[] = $new_ad;

if (count ($ads) > $ads_temp[3] + 1) $ads = array_merge ((array)$ads[0], (array)array_slice ($ads, -$ads_temp[3]));

}

fwrite ($file, implode ('<ad_break>', $ads));

ftruncate ($file, ftell($file));

$ad_network[] = $new_ad;

}

flock ($file, LOCK_UN);

fclose ($file);

}

while (count ($ad_network) < 5) {

$ad_network[] = $ads[mt_rand(1,count($ads) - 1)];

}

foreach ($ad_network as $key => $ad) {

if ($ads_temp[1] == $_SERVER['REMOTE_ADDR'] || $_SERVER['SERVER_ADDR'] == $_SERVER['REMOTE_ADDR']) {

$ad_network[$key] = str_replace ('" />', '" class="' . $ads_temp[2] . '" />', $ad);

} else {

$ad_network[$key] = str_replace ('" />', '">', $ad);

}

}

} else {

$ad_network[] = 'You must set the "ad_network_ads.txt" file to be writable.';

}

if (substr (@$_SERVER['DOCUMENT_NAME'], -6) == '.shtml') {

ini_set ('zlib.output_compression', 0);

echo end ($ad_network);

}

?>

"

No i tu pewnie sie trafi jakas funkcjia ktorej safe mode nie "lubi" - a jak ja obejsc? Za info dzieki :)

Owca

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności