[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Безопасность сайта.
Start_web
Когда я только начал изучать php я представления не имел о безопасности сайта в целом, а поисковик выдавал не понятные на 88,8% слова и 11,2% реклама. Поэтому эта тема для новичков, где можно найти всё, сразу и доходчиво. Буду благодарен, если и опытные программисты примут участие.

1 Пользуйтесь безопасным сервером, для новичков подойдет хостинг.
2 Проверяйте данные загруженные пользователем, перед сохранением на сервер.
3 Не храните пароли в открытом доступе.



Спустя 5 минут, 20 секунд (20.08.2012 - 10:14) Start_web написал(а):
Цитата (Start_web @ 20.08.2012 - 11:08)
1 Пользуйтесь безопасным сервером, для новичков подойдет хостинг.

Проверенный мною хостинг.
1 http://nic.ru
2 http://101domain.com
3 http://jino.ru


 ! 

М
убрал антирекламу
inpost

Спустя 26 минут, 1 секунда (20.08.2012 - 10:40) Guest написал(а):
Цитата (Start_web @ 20.08.2012 - 11:08)
2 Проверяйте данные загруженные пользователем, перед сохранением на сервер.

Текст из формы
Не думайте, что вашим сайтом будут пользоваться только законопослушные пользователи.))
1 htmlspecialchars() - преобразует некоторые символы в безопасный формат.
2 Проверить по шаблону, например для России максимальное колличество символов для номера телефона 12 [- Пример: $start = strlen ($_POST["start"]); потом if (start < 12) -].
3 Проверьте, зачем сохранять пустое значение [- Пример: if (empty ($_POST["start"])) -].
4 Желательно, но не обязательно перед публикацией проводить модерацию.
5 Про капчи можете забыть, они помогают только от чайников, которые косят под хакеров. Эту примитивную защиту обходят роботы и отряд китайцев)


Спустя 10 минут, 31 секунда (20.08.2012 - 10:50) T1grOK написал(а):
Цитата (Guest @ 20.08.2012 - 08:40)
5 Про капчи можете забыть, они помогают только от чайников, которые косят под хакеров. Эту примитивную защиту обходят роботы и отряд китайцев)

Эт точно smile.gif Но по крайней мере благодаря хорошей каптче, злосный пользователь понесет ущерб в размере 2$ за 1000 расшифровок)

Спустя 28 минут, 38 секунд (20.08.2012 - 11:19) Start_web написал(а):
Цитата (Start_web @ 20.08.2012 - 11:08)
2 Проверяйте данные загруженные пользователем, перед сохранением на сервер.

Безопасное сохранение изображении на сервере.
1 Проверить размер сохраняемого файла, а то сохранишь на сайт вот такой файл start.php.jpg или start.exe.jpg или start.avi.jpg[- Пример: if ($_FILES['start]['size'] < 1024000 and $_FILES['start']['size'] > 20480) -] Не забывайте, что мы используем байты - 1 Кбайт = 1024 байт
2 Переименовать файл, это несложно.
3 Проверить mime-тип файла [- if (!preg_match ("#image#", $_FILES['start']['type'])) -]
4 imagecreatefromjpeg - создаем новое изображение из загружаемого файла [- $start2 = @imagecreatefromjpeg($_FILES['start']['tmp_name']); -]

Спустя 15 минут, 44 секунды (20.08.2012 - 11:35) inpost написал(а):
2 Проверить по шаблону, например для России максимальное колличество символов для номера телефона 12 [- Пример: $start = strlen ($_POST["start"]); потом if (start < 12) -].

if(strlen($var) > 12) { }. Ты приводишь пример телефонов, а я записываю их через дефис:
8-900-500-12-50 , родители код пишут в скобках: +38 (097) 123-45-67 . Веб-сайт - это удобство, а не всё в строчку. И проверки делаются иначе.

3 Проверьте, зачем сохранять пустое значение [- Пример: if (empty ($_POST["start"])) -].
Сколько у вас детей: 0,1,2. Человек выбрал 0, empty вернул пустоту, и вправду, зачем хранить пустые данные? 0 - это значение, которое записал пользователь в свою форму. Или ещё проще: какой % на тириф вы хотите: 0 - нельзя?! smile.gif

5 Про капчи можете забыть, они помогают только от чайников, которые косят под хакеров. Эту примитивную защиту обходят роботы и отряд китайцев)
Капча одна из самых эффективных способов защиты от спама не целевого на своём проекте.

4 imagecreatefromjpeg . А как поведёт твоя функция, если я загружу gif, png ? Или эти форматы не будут изображением?

Остальное правильно, но слишком поверхностно. Если и писать, то лучше меньше пунктов охватить, но более подробно расписать. Иначе новичок не поймет зачем, а опытному это не надо.

Спустя 19 минут, 58 секунд (20.08.2012 - 11:54) Start_web написал(а):
Цитата (Start_web @ 20.08.2012 - 11:08)
3 Не храните пароли в открытом доступе.

Банально, но факт.

файл: start.inc

## НЕ правильно, потому как файл сразу отдаётся браузеру
$start=password;
$start2=password2;

## Правильно
<?php
$start=password;
$start2=password2;
?>


Если у Вас есть чем дополнить эту тему, пишите. Я принимаю во внимание ваши замечания.

Спустя 23 минуты, 33 секунды (20.08.2012 - 12:18) AlmazDelDiablo написал(а):
Цитата (Start_web @ 20.08.2012 - 14:54)
Цитата (Start_web @ 20.08.2012 - 11:08)
3 Не храните пароли в открытом доступе.

Банально, но факт.

файл: start.inc

## НЕ правильно, потому как файл сразу отдаётся браузеру
$start=password;
$start2=password2;

## Правильно
<?php
$start=password;
$start2=password2;
?>


Если у Вас есть чем дополнить эту тему, пишите. Я принимаю во внимание ваши замечания.

Мало того — их еще и хранить надо в зашифрованном виде, используя соль.
$start = md5( md5( sha1( $salt ) . md5( $password ) ) ); // например так.

Спустя 18 минут, 49 секунд (20.08.2012 - 12:37) Start_web написал(а):
Цитата (inpost @ 20.08.2012 - 12:35)
if(strlen($var) > 12) { }. Ты приводишь пример телефонов, а я записываю их через дефис:
8-900-500-12-50 , родители код пишут в скобках: +38 (097) 123-45-67 . Веб-сайт - это удобство, а не всё в строчку. И проверки делаются иначе.


Возможно Вы правы, вот это более точно:

if (!preg_match("#^[0-9]{6, 20}$#", $_POST['start]))

Спустя 18 минут, 4 секунды (20.08.2012 - 12:55) Start_web написал(а):
Цитата (inpost @ 20.08.2012 - 12:35)
Капча одна из самых эффективных способов защиты от спама не целевого на своём проекте.

Хорошо капчи оставим rolleyes.gif . Имелось ввиду не ограничиваться капчами и вводить дополнительные методы защиты, максимально увеличив их, можно снизить колличество спама, т.к. даже метод регистрации уже не помогает. небольшой пример

Спустя 12 минут, 49 секунд (20.08.2012 - 13:08) killer8080 написал(а):
Цитата (Start_web @ 20.08.2012 - 11:08)
1 Пользуйтесь безопасным сервером, для новичков подойдет хостинг.

А что есть другие способы? На своем домашнем компе7 biggrin.gif

Цитата (Guest @ 20.08.2012 - 11:40)
5 Про капчи можете забыть, они помогают только от чайников, которые косят под хакеров. Эту примитивную защиту обходят роботы и отряд китайцев)

Бред сивой кобылы, не считая китайцев. Покажи мне скрипт эффективного распознавания капч?

Цитата (Start_web @ 20.08.2012 - 13:37)
Возможно Вы правы, вот это более точно:

if (!preg_match("#^[0-9]{6, 20}$#", $_POST['start]))

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

Цитата (Start_web @ 20.08.2012 - 12:19)
1 Проверить размер сохраняемого файла, а то сохранишь на сайт вот такой файл start.php.jpg или start.exe.jpg или start.avi.jpg[- Пример: if ($_FILES['start]['size'] < 1024000 and $_FILES['start']['size'] > 20480) -] Не забывайте, что мы используем байты - 1 Кбайт = 1024 байт

Какое отношение размер файла имеет к безопасности? Вредоносный код может быть в файлах любого размера, к тому же юзер не может загрузить файл большего размера, чем указано в настройках php.

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

Спустя 4 минуты, 55 секунд (20.08.2012 - 13:13) Start_web написал(а):
Цитата (killer8080 @ 20.08.2012 - 14:08)
Цитата (Start_web @ 20.08.2012 - 11:08)
1 Пользуйтесь безопасным сервером, для новичков подойдет хостинг.

А что есть другие способы? На своем домашнем компе7 biggrin.gif

Проверенным хостингом, имеются и другие варианты (аренда сервера).

Спустя 50 секунд (20.08.2012 - 13:13) inpost написал(а):
Я бы посоветовал ТС изучить лучше данный вопрос, потому что половина советов ни о чём, а другая ошибочная, как сказали выше - от чайника к чайникам, к тому же полезность советов новичка не видна.

Спустя 1 минута, 11 секунд (20.08.2012 - 13:15) killer8080 написал(а):
Цитата (Start_web @ 20.08.2012 - 14:13)
Проверенным хостингом, имеются и другие варианты (аренда сервера).

То есть шаред хостинги по твоему намного безопасней vps/vds и дедиков? rolleyes.gif

Спустя 1 минута, 49 секунд (20.08.2012 - 13:16) Start_web написал(а):
Цитата (killer8080 @ 20.08.2012 - 14:08)
Цитата (Guest @ 20.08.2012 - 11:40)
5 Про капчи можете забыть, они помогают только от чайников, которые косят под хакеров. Эту примитивную защиту обходят роботы и отряд китайцев)

Бред сивой кобылы, не считая китайцев. Покажи мне скрипт эффективного распознавания капч?

Тыкать пальцем не принято и такие скрипты не продаются, а распознование капчи более чем на 50%, что иногда бывает достаточно. А армию китайцев прокомментируете? Кроме того я не предлагаю совсем от них отказаться.

Спустя 3 минуты, 29 секунд (20.08.2012 - 13:20) Start_web написал(а):
Цитата (killer8080 @ 20.08.2012 - 14:08)
Какое отношение размер файла имеет к безопасности? Вредоносный код может быть в файлах любого размера, к тому же юзер не может загрузить файл большего размера, чем указано в настройках php.

Отношение самое прямое, отсеит как минимум 1% типо хакеров.

Спустя 25 секунд (20.08.2012 - 13:20) inpost написал(а):
Start_web
Да пожалуйста, попробуй сам взять китайца и заставить его спамить форум любой. Поглядим на эффективность. smile.gif Что философствовать, у тебя есть опыт в работе с китайцами? НЕТ?! О_о, нет опыта, то нефиг давать пустые советы...

Спустя 1 минута, 39 секунд (20.08.2012 - 13:22) Start_web написал(а):
Цитата (killer8080 @ 20.08.2012 - 14:08)
Вобщем, перед тем как раздавать какие то советы, нужно самому детально изучит матчасть. А так, это советы от чайников - чайникам.

У каждого своё мнение, когда не имеешь своего мнение это плохо.

Спустя 1 минута, 47 секунд (20.08.2012 - 13:24) killer8080 написал(а):
Цитата (Start_web @ 20.08.2012 - 14:16)
Тыкать пальцем не принято и такие скрипты не продаются, а распознование капчи более чем на 50%, что иногда бывает достаточно.

Продается все. можно купить базу валидных e-mail-ов для рассылки спама, можно купить (да что купить, бесплатно скачать) сканеры уязвимостей, и брутфорсеры, можно купить finereader для распознавания текста, а скрипт для распознавания капчи купить нельзя. На него вето наложено rolleyes.gif
Цитата (Start_web @ 20.08.2012 - 14:16)
А армию китайцев прокомментируете?

Чего здесь комментировать, человеческий ресурс - единственный эффективный метод против любых капч, и кстати не только китайцы.

Спустя 2 минуты, 16 секунд (20.08.2012 - 13:26) Start_web написал(а):
Цитата (inpost @ 20.08.2012 - 14:20)
Start_web
Да пожалуйста, попробуй сам взять китайца и заставить его спамить форум любой. Поглядим на эффективность. smile.gif Что философствовать, у тебя есть опыт в работе с китайцами? НЕТ?! О_о, нет опыта, то нефиг давать пустые советы...

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

Спустя 2 минуты, 12 секунд (20.08.2012 - 13:28) inpost написал(а):
Start_web
У каждого своё мнение и не иметь - плохо?! Забавно. У тебя есть мнение на то, как устроена вселенная, у тебя есть мнение на то, как правильно строить спутники, у тебя есть мнение на то, как правильно расширять леса? Мнение должно быть у того, кто хоть капельку понимает о чём идёт речь, а лезть куда не просят... зайди на bash.org.ru и почитай тупость людей по поводу пусси риот и фемен. Они не соображают, что пишут, но зато каждый пытается своё гомно выплеснуть в свет.

И ещё раз повторяю, у тебя есть опыт и сталкивался ли ты лично с таким? Это как снежный человек , все о нём пишут, все рассказывают о том, как он выглядит и что из себя представляет, но никто не видел. Зато каждый думает, что он существует в мире, в котором его попросту может и не быть.

Спустя 6 минут, 21 секунда (20.08.2012 - 13:35) Start_web написал(а):
Цитата (killer8080 @ 20.08.2012 - 14:08)
Цитата (Start_web @ 20.08.2012 - 13:37)
Возможно Вы правы, вот это более точно:

if (!preg_match("#^[0-9]{6, 20}$#", $_POST['start']))

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

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

Спустя 4 минуты, 55 секунд (20.08.2012 - 13:40) killer8080 написал(а):
Цитата (Start_web @ 20.08.2012 - 14:35)
Цитата (killer8080 @ 20.08.2012 - 14:08)
Цитата (Start_web @ 20.08.2012 - 13:37)
Возможно Вы правы, вот это более точно:

if (!preg_match("#^[0-9]{6, 20}$#", $_POST['start']))

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

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

Я так и не понял, к чему ты процитировал мои слова о валидации номера телефона? blink.gif

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

Спустя 23 минуты, 41 секунда (20.08.2012 - 14:03) Start_web написал(а):
И не забывайте о Ddos-атаках, ещё одна причина выбрать проверенный хостинг.

Спустя 28 минут, 58 секунд (20.08.2012 - 14:32) Guest написал(а):
*cсылка убрана* Почитайте это и не делайте ошибок.

 ! 

М
Не надо давать ссылки на хакерские форумы и другого вида рекламные ссылки.
inpost

Спустя 2 минуты, 4 секунды (20.08.2012 - 14:34) inpost написал(а):
Guest
Всё то, что описано там - описано и тут: http://phpforum.ru/index.php?showtopic=21213 . Наш форум и никакой левой рекламы smile.gif

Спустя 2 минуты, 14 секунд (20.08.2012 - 14:36) Start_web написал(а):
Информация и реклама, откройте толковый словарь. Сайт *** не требует рекламы.

Спустя 1 час, 48 минут, 25 секунд (20.08.2012 - 16:25) inpost написал(а):
Start_web
Вот в чём, а в юриспруденции я шарю лучше Вас.

Спустя 17 часов, 5 минут, 25 секунд (21.08.2012 - 09:30) ИНСИ написал(а):
Флуд и ничего более.... Интересно посмотреть как вы (Start_web) пишите код smile.gif

Спустя 1 день, 4 часа, 38 минут (22.08.2012 - 14:08) Start_web написал(а):
<?php

$sd="ИНСИ";
$sf=str_ireplace("инси", "Стая волков, не имеющих собственное мнение, подчиняется вожаку", $sd;
# Цитата: Интересно посмотреть как вы (Start_web) пишите код / Уважайте собеседника - Интересно посмотреть как Вы (Start_web) пишите код / Вы видите с кем общаетесь? Прежде чем написать, подумайте!
echo $sf;
?>

Спустя 3 минуты, 58 секунд (22.08.2012 - 14:12) Start_web написал(а):
Цитата (inpost @ 20.08.2012 - 17:25)
Start_web
Вот в чём, а в юриспруденции я шарю лучше Вас.

Мне это не интересно, видимо у Вас комплексы и Вы хотите показать свою значимость.

P.S. Есть тип людей, которые всем и везде ставят "подножку", поэтому тема Закрыта.

Спустя 5 минут, 18 секунд (22.08.2012 - 14:18) inpost написал(а):
Start_web
Да я не ставлю подножку, просто не надо создавать тему, в которой пиарите другой сайт. Хотите что-то полезное написать, пишите прям тут! По указанной ссылке текста на одно большое сообщение, если Вы считаете, что оно хорошее, выставите его тут, текст, но не ссылку. Чтобы люди не бегали МЕЖДУ сотнями сайтов, а всё могли получить в одном удобном месте. Тот проект - тоже сайт с форумом, который на 75% дублирует информацию, которая есть уже у нас на форуме в прикреплённых темах. Я не возражаю расширять качество нашего форума новой информацией, не надо заниматься переадресацией наших посетителей на другой форум, типо там лучше и советы дают...

Спустя 7 часов, 9 минут, 42 секунды (22.08.2012 - 21:27) ИНСИ написал(а):
Цитата
$sf=str_ireplace("инси", "Стая волков, не имеющих собственное мнение, подчиняется вожаку", $sd;

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

А по сути. Вам правильно говорят. Если вызвались научить других защищать свои сайты, пишите по сути и с примерами. Вы взъелись что другие правы, поэтому и защищаетесь сейчас.

Цитата
Вы видите с кем общаетесь? Прежде чем написать, подумайте!

А вы видите?

Не принимайте все близко к сердцу. В любом случае похвально, что стараетесь. Именно с этого и начинается все.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.