Tag: безопасность

  • Проверяйте тип данных

    В дополнение к прошлому посту, и как подметил автор SecureBlog’а, хотел бы добавить следующее: прежде чем осуществлять обработку данных на их содержимое необходимо проверять их тип. Если этому не уделять внимания, то недостаточная проверка типов данных может привести к раскрытию пути, т.к. функция, которая ожидает получить, например, числовое значение в качестве одного из аргументов, приняв строку или массив, как правило, вызывает ошибку уровня E_WARNING:

    Warning: urlencode() expects parameter 1 to be string, array given in C:\Webservers\localhost\www\index.php on line 3

    Передать массив вместо строки или числа очень просто:
    GET-запрос:

    GET /index.php?mode[]=main HTTP/1.1
    Host: somehost.com
    Connection: close

    POST-запрос:

    POST /index.php HTTP/1.1
    Host: somehost.com
    Content-Type: application/x-www-form-urlencoded
    Connection: close
    
    postfield[]=blah

    Массив в Cookie:

    GET /index.php HTTP/1.1
    Host: somehost.com
    Cookie: auth[]=8c510f5172628316f5435fc9bc0c4d17
    Connection: close

    Скоро выложу свою функцию, общие принципы реализации которой я описывал в прошлом посте.

  • Как нужно проверять входящие данные

    Фильтрация данных, поступающих со стороны пользователя, с точки зрения безопасности самый важный компонент любого веб-приложения. Сегодня я хотел бы рассказать какие основные составляющие по-моему мнению должна включать правильная обработка входящих данных. Первое и самое главное правило – все, что приходит от пользователя или каким-либо образом может быть им изменено, должно проходить обязательную проверку на стороне сервера. Однако всеми излюбленный метод, при котором ко всем элементам массивов GET, POST и Cookie применяется addslashes(), не является абсолютно безопасным. (more…)

  • Безопасность загружаемых изображений

    Ни для кого не секрет, что возможность загрузки различных изображений на удаленный сервер всегда вызывала глубочайший интерес хакеров. В частности, под прицел взломщиков попадали форумы с корявой реализацией аплоада аваторов, а также фото-галереи, позволявшие загрузить произвольные файлы. В настоящее время ситуация нисколько не изменилась: сохранились не только старые виды уязвимостей, но и появились новые, связанные с такой технологией как обработка метаданных. Дело в том, что администраторы, контролируя общую безопасность своих сайтов, не уделяют должного внимания проверке содержания загружаемых изображений. Кроме того, некоторые даже умудряются создавать скрипты, абсолютно не следящие за расширениями файлов, что приводит к загрузке чего угодно, вплоть до PHP-шеллов. В данной статье мы рассмотрим способы атак на веб-сайты, связанные с аплоадом графических изображений.

    (more…)

  • Безопасность WordPress

    WordPress – удивительно успешный проект. За очень короткий срок он превратился из неизвестной платформы для ведения блогов в мощное, продуманное и возможно самое популярное в интернете веб-приложение, собравшее вокруг себя огромное сообщество. Однако все, что становится популярным, привлекает внимание и багоискателей. В доказательство моим словам привожу таблицу количества обнаруженных уязвимостей в WordPress с 2005 года по настоящее время. (more…)