|
|
|
| Я хочу узнать какие есть типы хакерских атак? а также примерное направление в защите от них, ибо я уверен, что htmlspecialchers() и stripslashes()\addslashes() недостаточно, хотя для защиты от элементарных взломов они нужны как воздух людям. | |
|
|
|
|
|
|
|
для: Lelik
(17.08.2006 в 00:15)
| | SQL-injections, XSS-атаки, просты дыры, позволяющие, скажем, шелл залить на сайт или приинклудить.
Обычно еще важно с левых сайтов бесплатные скрипты не качать...Они могут быть "заражены" eval() или какой-нить другой пакостью...
SQL-injection может быть там, где плохо сформированы SQL-запросы, где переменные плохо обрабатываются...Например, если вы хотите обезопасить себя от SQL-injection через переменную $_GET['id'], то вам нужно обработать с помощью intval() или так:
<?php
$id = (int) $_GET['id'];
?>
|
В обоих случаях ВСЕГДА будет какое-то целое число. Если вместо чила будут какие-то буквы и т.д., то вернет 0.
Другие переменные лучше обрабатывать с помощью mysql_escape_string();
XSS, кстати, вроде недавно рассматривался на примере этого форума =))
Ссылки:
http://softtime.ru/forum/read.php?id_forum=1&id_theme=22586
http://softtime.ru/forum/read.php?id_forum=2&id_theme=22625&page=1
Ну обычные дыры - ну просто не допускать этого и все =)))
Еще есть DoS (DDoS) атаки...Это, в принципе, просто сильная нагрузка на атакуемый ресурс...Тут PHP не помощник...Нет, ну конечно для настоящей DoS-атаки содействие со стороны скрипта, который будет атакован тоже важно...Если там не оптимизирован код - то вся надежда на мощность сервера, хотя если атака сразу со многих IP-адресов, то может не помочь и мощность сервера...=)
Потом еще нужно запрещать пользователям скачивать то, что предназначено только для скриптов...Всякие *.dat-файлы, в которых обычно храняться мелкие данные, например, время последнего поста бота в чате...Это легко делается с помощью .htaccess:
<Files "*.dat">
deny from all
</Files>
|
Либо даже лучше запихнуть все подобные файлы в одну папку, в ней создать .htaccess и прописать просто:
| |
|
|
|
|
|
|
|
для: Unkind™
(17.08.2006 в 01:04)
| | Спасибо :) | |
|
|
|
|
|
|
|
для: Lelik
(17.08.2006 в 00:15)
| | Вас только Web-атаки интересуют? Могут ещё и сами сервера ломать... | |
|
|
|
|
|
|
|
для: cheops
(17.08.2006 в 01:25)
| | Меня интересует защита сайта. И еще, что такое SQL иньекции обычными словами? И XSS-атаки(если я правильно понял это хак через подмену куки)? | |
|
|
|
|
|
|
|
для: Lelik
(17.08.2006 в 01:29)
| | SQL-инъекция, это когда в динамически формируемый SQL-запрос вставляется SQL-фрагмент, полностью меняющий логику SQL-запроса. Т.е. ожидается допустим цифра, а вставляется логический фрагмент из нескольких операторов - т.е. враждебный SQL-код внедряется в рабочий код, позволяя злоумышленику получить доступ к несанкционнированным данным, как правило, паролям.
XSS-актаки тоже самое, только по отношению к HTML-коду, когда в HTML-код тем или иным способом вставляется HTML, JavaScript код злоумышленика. | |
|
|
|
|
|
|
|
для: cheops
(17.08.2006 в 01:34)
| | а что такое динамически формируемый SQL-запрос?(чет я не догоняю) | |
|
|
|
|
|
|
|
для: Lelik
(17.08.2006 в 01:38)
| | Например, такой
<?php
$query = "SELECT * FROM tbl WHERE id = ".$id;
?>
|
Предполагается, что в переменной $id - число, но если скрипт позволяет вставить туда произвольный SQL-фрагмент, возможно осуществить SQL-инъекцию. | |
|
|
|
|
|
|
|
для: cheops
(17.08.2006 в 02:12)
| | а я не знал :( ну ничего спасибо за помощь :) | |
|
|
|