DirectoryWeb
    • Каталог
      • Скрипты
      • Боты
      • Программы
      • Android, iOS приложения
    • Арбитраж трафика
      • Тизерные сети
      • SMS рассылки
      • Telegram Ads
      • Анализ трафика
      • Видео трафик
      • Автоматизация
      • CPA-сети
      • Push-реклама
      • Popunder реклама
      • Нативная реклама
      • Ретаргетинг
      • Кейсы
      • Трекеры
      • Партнёрские программы
        • Товарные партнерки
        • Финансовые партнерки
        • Партнерки интернет-магазинов
        • Зарубежные партнерки
      • Реклама в Telegram
      • Сервисы
        • Прокси
        • Виртуальные карты
      • Инструменты
        • Мультиаккаунтинг
      • Обзоры
      • Мануалы
      • Антидетект-браузеры
    • Статьи
      • Маркетплейсы
      • Безопасность в сети
      • Заработок в интернете
      • Сайтостроение
      • Оптимизация сайтов
      • Обучение
      • Криптовалюты
      • Новости
      • Разное
      • Новости сайта
  • Контакты
  • Telegram
  • Вход / Регистрация

Telegram Expert

Psb.Hosing - Хостинговое решение для быстрой и стабильной работы ваших проектов.
Купить резедентные прокси
Vibix - надеждый видео-балансир
    Заработок в интернете без вложений » Статьи » Разное » Способы взлома и причины приводящие к взлому.

Отзывы

Способы взлома и причины приводящие к взлому.

Статьи / Разное

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

Очень часто для взлома экономических онлайн игры в код вставляют функцию eval(), которая позволяет выполнить сторонний код (код из строки, с другого сайта) и скрипт выкладывают в общий доступ для использования. Иногда данный код кодируют при помощи алгоритма MIME base64 и получается строка разнообразных символов такого вида.

0L/RgNC40LzQtdGAINC60L7QtNCw


Очень частая уязвимость в скриптах экономических онлайн игры это отсутствие фильтрации данных.

Фильтрация. Ошибка №1

Для числовых переменных используется такая проверка:

$number = $_GET['input_number'];
if (intval($number))
{
... выполняем SQL запрос ...
}


Почему она приведет к SQL инъекции? Дело в том, что пользователь может указать в переменной input_number значение:

1'+UNION+SELECT


В таком случаи проверка будет успешно пройдена, т.к. функция intval получает целочисленное значение переменной, т.е. 1, но в самой переменной $number ничего не изменилось, поэтому весь вредоносный код будет передан в SQL запрос.

Правильная фильтрация:

$number = intval($_GET['input_number']);
if ($number)
{



... выполняем SQL запрос ...
}

Конечно, условие может меняться, например если вам нужно получить только определенный диапазон:

if ($number >= 32 AND $number <= 65)


Если вы используете чекбоксы или мультиселекты с числовыми значениями, выполните такую проверку:

$checkbox_arr = array_map('intval', $_POST['checkbox']);
array_map


Так же встречаю фильтрацию в виде:

$number = htmlspecialchars(intval($_GET['input_number']));
htmlspecialchars


$number = mysql_escape_string(intval($_GET['input_number']));
mysql_escape_string


Фильтрация. Ошибка №2.

Для стринг-переменных используется такая фильтрация:

$input_text = addslashes($_GET['input_text']);


Функция addslashes экранирует спец. символы, но она не учитывает кодировку БД и возможен обход фильтрации. Не стану копировать текст автора, который описал данную уязвимость и дам просто ссылку Chris Shiflett (перевод можно поискать в рунете).

Используйте функцию mysql_escape_string или mysql_real_escape_string, пример:

$input_text = mysql_escape_string($_GET['input_text']);


Если вы не предполагаете вхождение html тегов, то лучше всего сделать такую фильтрацию:

$input_text = strip_tags($_GET['input_text']);
$input_text = htmlspecialchars($input_text);
$input_text = mysql_escape_string($input_text);


strip_tags — убирает html теги.

htmlspecialchars — преобразует спец. символы в html сущности.

Так вы защитите себя от XSS атаки, помимо SQL инъекции.

Если же вам нужны html теги, но только как для вывода исходного кода, то достаточно использовать:

$input_text = htmlspecialchars($_GET['input_text']);
$input_text = mysql_escape_string($input_text);


Если вам важно, чтобы значение переменной не было пустой, то используйте функцию trim, пример:

$input_text = trim($_GET['input_text']);
$input_text = htmlspecialchars($input_text);
$input_text = mysql_escape_string($input_text);


Фильтрация. Ошибка №3.

Она касается поиска в БД. Для поиска по числам используйте фильтрацию, описанную в первой ошибке. Для поиска по тексту используйте фильтрацию, описанную во второй ошибке, но с оговорками.

Для того, чтобы пользователь не смог выполнить логическую ошибку, нужно удалять или экранировать специальные символы SQL.

Пример без дополнительной обработки строки:

$input_text = htmlspecialchars($_GET['input_text']); // Поиск: "%"
$input_text = mysql_escape_string($input_text);


На выходе у нас получится запрос вида:

... WHERE text_row LIKE '%".$input_text."%' ... // WHERE text_row LIKE '%%%'


Это значительно увеличит нагрузку на базу.

В своём скрипте я использую функцию, которая удаляет нежелательные мне символы из поиска:

function strip_data($text)
{
    $quotes = array ("\x27", "\x22", "\x60", "\t", "\n", "\r", "*", "%", "<", ">", "?", "!" );
    $goodquotes = array ("-", "+", "#" );
    $repquotes = array ("\-", "\+", "\#" );
    $text = trim( strip_tags( $text ) );
    $text = str_replace( $quotes, '', $text );
    $text = str_replace( $goodquotes, $repquotes, $text );
    $text = ereg_replace(" +", " ", $text);
 
    return $text;
}


Конечно, не все из выше перечисленных символов представляют опасность, но в моём случаи они не нужны, поэтому выполняю поиск и замену
.
Пример использования фильтрации:


$input_text = strip_data($_GET['input_text']);
$input_text = htmlspecialchars($input_text);
$input_text = mysql_escape_string($input_text);


Также советую сделать ограничение по количеству символов в поиске, хотя бы не меньше 3-х, т.к. если у вас будет большое количество записей в базе, то поиск по 1-2 символам будет значительно увеличивать нагрузку на БД.

Фильтрация. Ошибка №4.

Не фильтруются значения в переменной $_COOKIE. Некоторые думаю, что раз эту переменную нельзя передать через форму, то это гарантия безопасности.

Данную переменную очень легко подделать любым браузером, отредактировав куки сайта.

Фильтрация. Ошибка №4.

Не фильтруются значения в переменной $_COOKIE. Некоторые думаю, что раз эту переменную нельзя передать через форму, то это гарантия безопасности. Данную переменную очень легко подделать любым браузером, отредактировав куки сайта.

Например, в одной известной CMS была проверка, используемого шаблона сайта:

if (@is_dir ( MAIN_DIR . '/template/' . $_COOKIE['skin'] )){
    $config['skin'] = $_COOKIE['skin'];
}
$tpl->dir = MAIN_DIR . '/template/' . $config['skin'];


В данном случаи можно подменить значение переменной $_COOKIE['skin'] и вызвать ошибку, в результате которой вы увидите абсолютный путь до папки сайта.

Если вы используете значение куков для сохранения в базу, то используйте одну из выше описанных фильтраций, тоже касается и переменной $_SERVER.

Фильтрация. Ошибка №5.

Включена директива register_globals. Обязательно выключите её, если она включена. В некоторых ситуациях можно передать значение переменной, которая не должна была передаваться, например, если на сайте есть группы, то группе 2 переменная $group должна быть пустой или равняться 0, но достаточно подделать форму, добавив код:

<input type="text" name="group" value="5" />


В PHP скрипте переменная $group будет равна 5, если в скрипте она не была объявлена со значением по умолчанию.

Фильтрация. Ошибка №6.

Проверяйте загружаемые файлы. Выполняйте проверку по следующим пунктам:

1. Расширение файла. Желательно запретить загрузку файлов с расширениями: php, php3, php4, php5 и т.п.
2. Загружен ли файл на сервер move_uploaded_file.
3. Размер файла.

Проверка ошибок:


Проверка. Ошибка №1.

Сталкивался со случаями, когда для AJAX запроса (например: повышение репутации) передавалось имя пользователя или его ID (кому повышается репутация), но в самом PHP не было проверки на существование такого пользователя.

Например:

$user_id = intval($_REQUEST['user_id']);
... INSERT INTO REPLOG SET uid = '{$user_id}', plus = '1' ...
... UPDATE Users SET reputation = reputation+1 WHERE user_id = '{$user_id}' ...


Получается мы создаем запись в базе, которая совершенно бесполезна нам.

Проверка. Ошибка №2.

При выполнении различного рода действий (добавление, редактирование, удаление) с данными не забывайте проверять права пользователя на доступ к данной функции и дополнительные возможности (использование html тегов или возможность опубликовать материал без проверки).

Давно исправлял в одном модуле форума подобную ошибку, когда любой пользователь мог отредактировать сообщение администрации.

Проверка. Ошибка №3.

При использовании нескольких php файлов сделайте простую проверку.
В файле index.php (или в любом другом главном файле) напишите такую строчку перед подключением других php файлов:

define ( 'READFILE', true );


В начале других php файлов напишите:

if (! defined ( 'READFILE' ))
{
    exit ( "Error, wrong way to file.<br><a href=\"/\">Go to main</a>." );
}


Так вы ограничите доступ к файлам.

Проверка. Ошибка №4.

Используйте хеши для пользователей. Это поможет предотвратить вызов той или иной функции путём XSS.

Пример составления хеша для пользователей:

$secret_key = md5( strtolower( "http://site.ru/" . $member['name'] . sha1($password) . date( "Ymd" ) ) ); // $secret_key - это наш хеш


Далее во все важные формы подставляйте инпут со значением текущего хеша пользователя:

<input type="hidden" name="secret_key" value="$secret_key" />


Во время выполнения скрипта осуществляйте проверку:

if ($_POST['secret_key'] !== $secret_key)
{
exit ('Error: secret_key!');
}


Проверка. Ошибка №5.

При выводе SQL ошибок сделайте простое ограничение к доступу информации. Например задайте пароль для GET переменной:

if ($_GET['passsql'] == "password")
{

... вывод SQL ошибки ...
}
else
{
... Просто информация об ошибке, без подробностей ...
}


Это позволит скрыть от хакера информацию, которая может ему помочь во взломе сайта.

Проверка. Ошибка №6.

Старайтесь не подключать файлы, получая имена файлов извне.

Например:

if (isset($_GET['file_name']))
{
include $_GET['file_name'] .'.php';
}


Используйте переключатель switch:

switch($_GET['file_name'])
{
         case 'file_1':
         include 'file_1.php';
         break;
 
         default:
         include 'file_0.php';
         break;
}


В таком случаи вы предотвратите подключение файлов, которые не были вами предусмотрены.

Telegram

МАРКЕТПЛЕЙС ЦИФРОВЫХ ТОВАРОВ

Перейти в чат вебмастеров

русские сериалы

  • DirectoryWeb
  • 30.12.2019
  • 1 4 140
  • 0
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5
Cкрипт букмекерского сайта ставок на спорт BetLab 1.1
Cкрипт букмекерского сайта ставок на спорт BetLab 1.1
14-01-2023, 20:27, Казино
Скрипт инвестиционного проекта 20percent
Скрипт инвестиционного проекта 20percent
19-11-2019, 06:00, HYIP, MLM, МММ
Скрипт инвестиционной онлайн игры VKcoin
Скрипт инвестиционной онлайн игры VKcoin
25-09-2019, 08:25, Экономические игры
Скрипт экономической игры BEST HERO
Скрипт экономической игры BEST HERO
18-05-2020, 10:27, Экономические игры
Сервис накрутки BossLike
Сервис накрутки BossLike
22-04-2025, 16:45, Арбитраж трафика / Push-реклама
Скрипт интернет магазина CMS MaxyStore v.1.5.5.1
Скрипт интернет магазина CMS MaxyStore v.1.5.5.1
23-08-2014, 00:48, Скрипты

Твой комментарий..

  • Скрипты
    • Telegram
    • Финансы
    • CS:GO
    • Бонусники
    • Браузерные игры
    • Интернет магазины
    • Автопостинг
    • Доски объявлений
    • Обменники
    • Казино
    • Каталоги
    • Конструкторы сайтов
    • Облачные майнинги
    • Платёжные системы
    • Рекламные сервисы
    • Социальные сети
      • TikTok Ads
    • Экономические игры
    • Чаты
    • Хостинги
    • HYIP, MLM, МММ
    • Фриланс биржи
    • E-mail рассылки
    • Разное
  • Арбитраж трафика
    • Тизерные сети
    • SMS рассылки
    • Telegram Ads
    • Анализ трафика
    • Видео трафик
    • Автоматизация
    • CPA-сети
    • Push-реклама
    • Popunder реклама
    • Нативная реклама
    • Ретаргетинг
    • Кейсы
    • Трекеры
    • Партнёрские программы
      • Товарные партнерки
      • Финансовые партнерки
      • Партнерки интернет-магазинов
      • Зарубежные партнерки
    • Реклама в Telegram
    • Сервисы
      • Прокси
      • Виртуальные карты
    • Инструменты
      • Мультиаккаунтинг
    • Обзоры
    • Мануалы
    • Антидетект-браузеры
  • HTML шаблоны
  • Боты
  • Программы
    • Парсинг
  • Android, iOS приложения
  • Статьи
    • Маркетплейсы
    • Безопасность в сети
    • Заработок в интернете
    • Сайтостроение
    • Оптимизация сайтов
    • Обучение
    • Криптовалюты
    • Новости
    • Разное
    • Новости сайта
Обзор антидетект-браузера Undetectable: функционал и особенности
Подробнее
Обзор антидетект-браузера Undetectable: функционал и особенности
Voluum
Подробнее
Voluum
CLOAK IT
Подробнее
CLOAK IT
Рекламная платформа Megapu.sh
Подробнее
Рекламная платформа Megapu.sh
Обзор партнерской программы Advertise: мультиплатформенная CPA-сеть для арбитражников
Подробнее
Обзор партнерской программы Advertise: мультиплатформенная CPA-сеть для арбитражников
Скрипт магазина цифровых товаров SeoMaxVip
Подробнее
Скрипт магазина цифровых товаров SeoMaxVip
Скрипт финансового удвоителя 50 plus
Подробнее
Скрипт финансового удвоителя 50 plus
Скрипт доски объявлений Infinity Market v1.7.3
Подробнее
Скрипт доски объявлений Infinity Market v1.7.3
Скрипт социальной сети PG SocialBiz 2013
Подробнее
Скрипт социальной сети PG SocialBiz 2013
Скрипт сайта знакомств Belloo v2.2
Подробнее
Скрипт сайта знакомств Belloo v2.2
Loading...

Внимание! Данный материал предоставлен сайтом DirectoryWeb.ru исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое

  • Топ просмотров
  • Высший рейтинг
  • Самый топ
Ping.Partners — CPA-сеть с гэмблинг-офферами и выплатами без задержек

Ping.Partners — CPA-сеть с гэмблинг-офферами и выплатами без задержек

  • ddspprtn
  • 25.03.2026
  • 1 127
  • 0
    • 0
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Ping.Partners — CPA-сеть с гэмблинг-офферами и выплатами без задержек

Ping.Partners — CPA-сеть с гэмблинг-офферами и выплатами без задержек

  • ddspprtn
  • 25.03.2026
  • 1 127
  • 0
    • 0
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Скрипт сайта рулетки CSGOSHIK

Скрипт сайта рулетки CSGOSHIK

  • DirectoryWeb
  • 01.10.2018
  • 1 5 400
  • 0
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Скрипт онлайн казино Фараон

Скрипт онлайн казино Фараон

  • DirectoryWeb
  • 30.09.2018
  • 1 9 553
  • 0
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Скрипт онлайн казино FlashCasino 1.2

Скрипт онлайн казино FlashCasino 1.2

  • DirectoryWeb
  • 26.10.2018
  • 1 5 024
  • 0
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Cкрипт онлайн лотереи Lottery for life

Cкрипт онлайн лотереи Lottery for life

  • DirectoryWeb
  • 17.10.2018
  • 1 5 029
  • 0
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Скрипт онлайн казино Вулкан NEW

Скрипт онлайн казино Вулкан NEW

  • DirectoryWeb
  • 28.10.2018
  • 1 14 792
  • 0
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Скрипт игры моментальной лотереи - рулетки Best-Loto

Скрипт игры моментальной лотереи - рулетки Best-Loto

  • DirectoryWeb
  • 23.01.2018
  • 1 9 334
  • 0
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Скрипт Bitcoin игр онлайн Quizda

Скрипт Bitcoin игр онлайн Quizda

  • DirectoryWeb
  • 01.08.2018
  • 1 5 718
  • 0
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Скрипт моментальной лотереи Fast Loto

Скрипт моментальной лотереи Fast Loto

  • DirectoryWeb
  • 05.10.2017
  • 1 8 704
  • 0
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Скрипт онлайн казино Brilliant-Club

Скрипт онлайн казино Brilliant-Club

  • DirectoryWeb
  • 02.07.2017
  • 1 11 814
  • 0
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5
  • Подробнее..
Информация
  • О проекте
  • Правила
  • Статистика
  • Облако тегов
  • Контакты
  • Карта сайта
Каталог
  • Скрипты
  • Боты
  • Программы
  • Android, iOS приложения
  • Статьи
Арбитраж трафика
  • Кейсы
  • Партнёрские программы
  • Сервисы
  • Инструменты
  • Обзоры
Полезные ссылки
  • Партнерские программы и сервисы
  • Скрипты, моды и шаблоны
Заказ
Быстрый вход

Используйте социальные сети для быстрой регистрации и авторизации.

ВКонтакте
Создать аккаунт / Регистрация
Авторизация

Я забыл свой пароль