Новые книги

Под этой обложкой головокружительная история рождения, взросления и успеха всемирно известной компании, сделавшей миллиардером... самого Стива Джобса! Временно, на момент основания компании, безработного.

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

Нет, вовсе не об Apple. Герой этой книги — анимационная студия Pixar, сверх-успешная компания, совершившая техническую революцию и навсегда изменившая киноиндустрию. Прайс рассказывает и о том, как создавалась Pixar, и о том, чем заняты ее сотрудники сегодня.

Это настоящий подарок для всех, кто ценит выдающиеся компании. И мультфильмы.
Представлены теоретико-концептуальные положения инновационного переоснащения факторов воспроизводства высокотехнологичных корпораций России. Предложены практические рекомендации по совершенствованию системы управления инновационными проектами и программами высокотехнологичных корпораций России в условиях глобальной конкуренции. Отдельные разделы посвящены анализу теорий инноваций и концепций инновационного развития. Определены базовые тенденции и на их основе закономерности перехода экономики на инновационный путь развития. Установлены базовые недостатки системы нормативно-правового регулирования инновационных преобразований факторов воспроизводства российской экономики. Разработаны стратегические ориентиры, уточняющие перспективы активизации системы управления инновационными программами в высокотехнологичных компаниях России.

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

Использование Register_Globals

Учебник РНР
НазадГлава 4. Безопасность Вперёд

Использование Register_Globals

Для повышения безопасности работы PHP можно сконфигурировать PHP с опцией register_globals = off. Отключив таким образом возможность внедрения отправленных пользователем переменных в PHP-код, вы можете уменьшить количество заражённых переменных, которые потенциальный взломщик может попытаться направить вам. Для подделки отправляемой информации понадобится дополнительное время, а ваши внутренние переменные будут эффективно изолированы от отправляемых пользователем данных.

Хотя понадобятся некоторые дополнительные усилия при работе с PHP, но преимущества от этой работы с лихвой окупят эти затраты.

Пример 4-14. Работа без register_globals=off
<?php
if ($username) {  // может быть подделана пользователем в get/post/куках
    $good_login = 1;
}

if ($good_login == 1) { // может быть подделана пользователем в get/post/куках
    fpassthru ("/highly/sensitive/data/index.html");
}
?>
Пример 4-15. Работа с register_globals = off
<?php
if($_COOKIE['username']){
    // может прийти только от куки, подделанной или нет
    $good_login = 1;
    fpassthru ("/highly/sensitive/data/index.html");
}
?>

Разумно пользуясь этим, можно даже делать предварительную проверку и предупреждать в случае попытки подделки кода. Если вы наперёд знаете, откуда должна прийти переменная, вы можете проверять, не пришли ли данные несоответствующего вида. Поскольку нет гарантии, что данные не были подделаны, взломщику необходимо придумывать нужный вид подделки.

Пример 4-16. Определение заражения простой переменной
<?php
if ($_COOKIE['username'] &&
    !$_POST['username'] &&
    !$_GET['username'] ) {
    // выполнить проверку имени пользователя ...
    $good_login = 1;
    fpassthru ("/highly/sensitive/data/index.html");
} else {
   mail("[email protected]", "Possible breaking attempt", $_SERVER['REMOTE_ADDR']);
   echo "Security violation, admin has been alerted.";
   exit;
}
?>

Конечно, простое отключение register_globals не означает, что код безопасен. Каждый блок передаваемых данных необходимо проверять дополнительно.


Назад Оглавление Вперёд
Сообщение об ошибке ВверхДанные, отправляемые пользователем