Безопасность (Статей: 18)

Может кому-то пригодится
Файл sql.php
<?php
 class InitVars {
 # Недопустимые слова в запросахINSERT
         var $deny_words = array('UNION','CHAR','INSERT','DELETE','SELECT','UPDATE','GROUP','ORDER','BENCHMARK','union','char','insert','delete','select','update','group','order','benchmark');
 
 function InitVars() {
 }
 
 # Метод конвентирует суперглобальные массивы $_POST, $_GET в перемнные
 # Например : $_GET['psw'] будет переобразовано в $psw с тем же значением
 function convertArray2Vars () {
 
         foreach($_GET as $_ind => $_val) {
                 global $$_ind;
                 if(is_array($$_ind)) $$_ind = htmlspecialchars(stripslashes($_val));
         }
 
         foreach($_POST as $_ind => $_val) {
                 global $$_ind;
                 if(is_array($$_ind)) $$_ind = htmlspecialchars(stripslashes($_val));
 
         }
 }
 
 # Метод проверяет $_GET и $_POST переменные на наличие опасных данных и SQL инъекций
 function checkVars() {
         //Проверка опасных данных.
         foreach($_GET as $_ind => $_val) {...
Автор: (20.01.2011 / 17:29)
Просмотры: 1744
Комментарии (6) »
Межсайтовый скриптинг (Cross site scripting, XSS) — встраивание нежелательного кода в html-код страниц сайта. XSS можно условно разделить на пассивную и активную формы, которые мы рассмотрим ниже.

Пассивый XSS

Пассивный XSS основан на том, что GET-параметры в ряде случаев становятся частью текста страницы. Например, мы имеем скрипт поиска search.php, содержащий следующий код:
<?php 
// начало скрипта 
echo '<div>Вы искали: ' . $_GET['query'] . '</div>'; 
// продолжение скрипта, отображение результатов поиска и.т.д 
?>
Мы видим, что страница содержит заданный поисковой запрос. Если злоумышленник обратимся к скрипту следующим образом: search.php?query=<a href="http://example.com">my website</a> то на странице результатов поиска будет... Автор: (05.01.2011 / 07:35)
Просмотры: 2317
Комментарии (2) »
Самый простой способ защиты от SQL-инъекции – «обрамлять» параметры SQL-запроса одиночными кавычками ('), поскольку через GET- и POST-запрос невозможно передать символ одиночной кавычки (он будет автоматически заменен сочетанием символов – \' – т.е. экранироваться).
SELECT * FROM `table_name` WHERE `param` = '$param_name' ORDER BY `sort` ASC;
SQL-запрос в случае инъекции будет выглядеть примерно так:
SELECT * FROM `table_name` WHERE `param` = '10 union select 1,2,3 /*' ORDER BY `sort` ASC;
Т.е. для обработчика запросов, при отбрасывании части запроса после /*, запрос будет выглядеть примерно так:
SELECT * FROM `table_name` WHERE `param` = '10 union select 1,2,3
Обработчик запросов, не...
Автор: (05.01.2011 / 07:30)
Просмотры: 1738
Комментарии (0) »
Всем привет! Сегодня, я вам расскажу об одной уязвимости, найденной на сайте wap.infan.ru. С помощью которой я получил доступ к профилю администратора.

Многие слышали, а может даже пользовались так называемыми анонимайзерами. На сайте wap.infan.ru есть подобный сервис. Называется он: Wap-proxy.

В общем-то все как у всех, только в дополнении есть возможность резать картинки, для удобного просмотра на телефоне и экономии трафика.
Но не в этом суть.
Анонимайзер находится на отдельном суб.домене. Для каждого сайта суб.домен создается динамически.
Пример: wap.sasisa.ru.wproxy.infan.ru
С одной стороны, в чем может быть уязвимость?
При детальном рассмотрении, можно обнаружить, что куки передаются пользователю как обычно и не... Автор: (26.11.2010 / 22:34)
Просмотры: 3233
Комментарии (7) »
Файл .htaccess является обычным текстовым файлом, и создать его можно в любом текстовом редакторе, не использующем функций сохранения форматирования текста. Для наших целей вполне подойдет «Блокнот» из комплекта Windows, а вот Word не подойдет.

Итак, закрываем доступ. Для этого создаем новый текстовый документ с именем .htaccess и пишем в него такую строчку:

deny from all

сохраняем файл в выбранной папке на сервере, и никто не сможет получить доступ ни к одному файлу из этой папки, включая все вложенные папки. Но Вы тоже не сможете получить доступ к этим файлам, а это не есть хорошо. Если Вы работаете с определенного IP-адреса,... Автор: (18.08.2010 / 21:19)
Просмотры: 1346
Комментарии (0) »
Фильтрация входных данных — одна из самых важных вещей, которой надо уделять внимание при разработке веб-сайта. Опытным программистам это известно, а новички пусть запомнят одну очень важную вещь:

Данным, полученным от пользователя, доверять нельзя.

Что это значит? А это значит то, что если нам нужно, чтобы пользователь ввел число, это совсем не означает, что он введет именно число. Он может ввести что угодно. И поэтому нам необходимо проверить корректность введенных пользователем данных и оградить себя от возможных вследствие этого ошибок и улучшить безопасность наших скриптов.

Обычно для этого пользуются регулярными выражениями, но начиная с версии 5.2.0, в PHP есть специальные... Автор: (30.05.2010 / 19:14)
Просмотры: 4422
Комментарии (2) »
Статья информируется о ДДОС атаке так и защите от неё.
Что такое dos атака?
Собственно дословно термин «DoS» расшифровывается и переводится как «отказ в обслуживании». Соответственно dos атака (дос атака ) это действия направленные на то, чтобы спровоцировать такую реакцию оборудования. Термин « ddos » переводится как «распределенный отказ в обслуживании». Соответственно ddos атака ( ддос атака ) - распределённая атака типа «отказ в обслуживании». Проводится такая ддос атака с огромного количества различных ip адресов, принадлежащих зараженным компьютерам. Не всегда то, что выглядит как дос атака , является именно ею. Иногда отказ в обслуживании может быть вызван естественными причинами –... Автор: (08.05.2010 / 17:55)
Просмотры: 1659
Комментарии (3) »
Бывает так, что вам неохота предоставлять исходные коды проектов, которые вы разрабатывали. Для этого можно использовать программы-обфускаторы, о которых недавно шла речь.
А бывает, что вам не так хочется закрыть исходный код, как защитить скрипт от копирования. На мой взгляд, сокрытие исходного кода, в большинстве случаев, не имеет смысла без защиты от копирования. Некоторые обфускаторы, шифрующие код (а не просто коверкающие), имеют возможность лочить скрипт под определенный домен или айпишник. Но, во-первых, мы же не хотим для каждого домена перешифровывать все исходники? Во-вторых, мне удалось разлочить эту защиту одной строкой в начале скрипта:
$_SERVER='разрешенный домен';
Я долго искал в интернете... Автор: (08.05.2010 / 13:30)
Просмотры: 3410
Комментарии (11) »
Топ статей / Облако тегов / Поиск / Авторы