Реклама на сайте Advertise with us

Как защитить сабмит форму от бяк в PHP?

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:

Завтра в армию

С нами с 08.10.03
Сообщения: 20709
Рейтинг: 473

Ссылка на сообщениеДобавлено: 13/05/09 в 22:17       Ответить с цитатойцитата 

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

Куплю однушку в Чертаново..

0
 



С нами с 19.09.03
Сообщения: 1988
Рейтинг: 1247


Передовик Master-X (01.02.2004) Передовик Master-X (16.03.2004)
Ссылка на сообщениеДобавлено: 13/05/09 в 23:01       Ответить с цитатойцитата 

Обрезать регекспом все символы, которых не может быть в поле.

0
 

Завтра в армию

С нами с 08.10.03
Сообщения: 20709
Рейтинг: 473

Ссылка на сообщениеДобавлено: 13/05/09 в 23:10       Ответить с цитатойцитата 

Wahoven писал:
Обрезать регекспом все символы, которых не может быть в поле.

что это такое?

Куплю однушку в Чертаново..

0
 

Криптопохуист

С нами с 05.04.03
Сообщения: 17156
Рейтинг: 6019

Ссылка на сообщениеДобавлено: 13/05/09 в 23:11       Ответить с цитатойцитата 

0
 

Чингачгук, вождь красноглазых

С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824

Ссылка на сообщениеДобавлено: 13/05/09 в 23:34       Ответить с цитатойцитата 

Wahoven писал:
Обрезать регекспом все символы, которых не может быть в поле.


Это в URL'е-то?

Тут не фильтровать надо, а валидацию на вводе производить, не давать вводить то, что не является URL'ом. Я так понимаю, данные серферам выдаются, то есть введя какое-то говно, сторонний человек может сделать говно из страницы.

Вот простой код:

Код:

$subject = ... то, что ввели
if (preg_match('%^((?P<scheme>https?|ftp):/)?/?((?P<username>.*?)(:(?P<password>.*?)|)@)?(?P<hostname>[^:/\s]+)(?P<port>:([^/]*))?(?P<path>(/\w+)*/)(?P<filename>[-\w.]+[^#?\s]*)?(?P<query>\?([^#]*))?(?P<fragment>#(.*))?$%', $subject)) {
   # Хороший URL, пропускаем
} else {
   # Никак не URL
}



Если что плохое ввели - вернуть на форму и заставить ввести снова.

0
 

php

С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410


Передовик Master-X (16.01.2010)
Ссылка на сообщениеДобавлено: 14/05/09 в 18:54       Ответить с цитатойцитата 

Pentarh: дохлая защита.
однозначно preg_match с грамотным паттерном и все писю посасывают.

IPhosters.com - любые решения для Вас (виртуалы от $4.99, vps от $11.99, дедики от $95)

0
 

Криптопохуист

С нами с 05.04.03
Сообщения: 17156
Рейтинг: 6019

Ссылка на сообщениеДобавлено: 14/05/09 в 19:37       Ответить с цитатойцитата 

Ребята, ваши писюны я трезво оценил. Охуительно.

Я просто немного знаком с суоми, ему регекспы как мне дао де дзын читать в оригинале.

0
 

Чингачгук, вождь красноглазых

С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824

Ссылка на сообщениеДобавлено: 14/05/09 в 20:08       Ответить с цитатойцитата 



Ну раз ты близко знаком и такой, по всей видимости, крутой - то и сделай ему по-нормальному. По знакомству. С каких это пор на мастере посоветовать надежный код - "писюны"?

0
 

Завтра в армию

С нами с 08.10.03
Сообщения: 20709
Рейтинг: 473

Ссылка на сообщениеДобавлено: 15/05/09 в 05:17       Ответить с цитатойцитата 

Pentarh писал:
Ребята, ваши писюны я трезво оценил. Охуительно.

Я просто немного знаком с суоми, ему регекспы как мне дао де дзын читать в оригинале.


;), всем пасиб.. завтра попробую. ничего срочного, так сайтик про путешествия, но какой то неугомоный мудак достал меня..
ели че я тебе стукну или здесь покажу..

сам хочу сделать, уже почти 5 лет забил на програмирование. а ведь я из старой бригады.. КОБОЛ, Асамблер, Сайбейс.. Скучаю немного.

Куплю однушку в Чертаново..

0
 

Раздаю инвайты, ищу линк-трейд

С нами с 20.08.04
Сообщения: 16481
Рейтинг: 8587


Передовик Master-X (16.11.2006) Передовик Master-X (01.09.2019)
Ссылка на сообщениеДобавлено: 15/05/09 в 10:11       Ответить с цитатойцитата 

гы
Пролог, фортран - были вещи, юзал smail54.gif

Кому ссылку?
RU и EN Dating

0
 



С нами с 24.03.03
Сообщения: 569
Рейтинг: 278

Ссылка на сообщениеДобавлено: 16/05/09 в 13:01       Ответить с цитатойцитата 

Dr.Syshalt писал:
Ну раз ты близко знаком и такой, по всей видимости, крутой - то и сделай ему по-нормальному. По знакомству. С каких это пор на мастере посоветовать надежный код - "писюны"?

он тебе и посоветовал нормально icon_smile.gif)

0
 

Криптопохуист

С нами с 05.04.03
Сообщения: 17156
Рейтинг: 6019

Ссылка на сообщениеДобавлено: 16/05/09 в 22:00       Ответить с цитатойцитата 

Dr.Syshalt писал:
Ну раз ты близко знаком и такой, по всей видимости, крутой - то и сделай ему по-нормальному. По знакомству. С каких это пор на мастере посоветовать надежный код - "писюны"?

Я с безопасностью знаком не по наслышке, с регекспами тож. Но не всегда стоит по мухам с пушки хуярить ;)

0
 



С нами с 05.05.05
Сообщения: 1913
Рейтинг: 1134

Ссылка на сообщениеДобавлено: 17/05/09 в 01:16       Ответить с цитатойцитата 

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

0
 



С нами с 19.11.03
Сообщения: 3973
Рейтинг: 2362

Ссылка на сообщениеДобавлено: 17/05/09 в 03:25       Ответить с цитатойцитата 

freeek: велосипед уже изобрели, на него Pentarh: уже указал.

0
 



С нами с 05.05.05
Сообщения: 1913
Рейтинг: 1134

Ссылка на сообщениеДобавлено: 17/05/09 в 11:29       Ответить с цитатойцитата 

xreload писал:
freeek: велосипед уже изобрели, на него Pentarh: уже указал.


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

0
 



С нами с 03.05.07
Сообщения: 801
Рейтинг: 825

Ссылка на сообщениеДобавлено: 18/05/09 в 13:30       Ответить с цитатойцитата 

Код:
$_POST["message"]=htmlspecialchars($_POST["message"]);

создай свою партнёрку

0
 

Чингачгук, вождь красноглазых

С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824

Ссылка на сообщениеДобавлено: 18/05/09 в 22:37       Ответить с цитатойцитата 

Pentarh писал:
Я с безопасностью знаком не по наслышке, с регекспами тож. Но не всегда стоит по мухам с пушки хуярить ;)


Ты, может, с чем-то не по-наслышке знаком, но не с написанием нормальных программ точно. Валидация делается не только для безопасности, хотя там тоже она куда лучше работу выполняет. А еще для того, чтобы сберечь пользователя от ввода неправильных данных. Когда он копипастил, к примеру, URL, и захватил с ним еще пару строк - и не заметил. Это просто называется "писать код по-нормальному, а не через одно место".

Я даю те советы, которые считаю правильными. А примет кто-то мои советы, или этот топик откопают археологи через 1000 лет - это не мое дело, и тем более, уж извини, не твое.

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »