Гауляйтор Курска
С нами с 08.10.03
Сообщения: 20782
Рейтинг: 473
|
Добавлено: 13/05/09 в 22:17 |
есть дярявый скрипт с формои для сабмита ссылок. ссылки вставляются в базу. один турецкии дятел начал вставлять джаву скрипт в котором редирект. как сделать так чтоб это говно не проходило защиту?
|
|
Нанимаю свободных агентов в Курское подполье.
|
0
|
|
|
С нами с 19.09.03
Сообщения: 1988
Рейтинг: 1247
|
Добавлено: 13/05/09 в 23:01 |
Обрезать регекспом все символы, которых не может быть в поле.
|
|
|
|
Гауляйтор Курска
С нами с 08.10.03
Сообщения: 20782
Рейтинг: 473
|
Добавлено: 13/05/09 в 23:10 |
Wahoven писал: | Обрезать регекспом все символы, которых не может быть в поле. |
что это такое?
|
|
Нанимаю свободных агентов в Курское подполье.
|
0
|
|
|
Криптопохуист
С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019
|
Добавлено: 13/05/09 в 23:11 |
|
|
|
|
Чингачгук, вождь красноглазых
С нами с 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
}
|
Если что плохое ввели - вернуть на форму и заставить ввести снова.
|
|
|
|
php
С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410
|
Добавлено: 14/05/09 в 18:54 |
Pentarh: дохлая защита.
однозначно preg_match с грамотным паттерном и все писю посасывают.
|
|
|
|
Криптопохуист
С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019
|
Добавлено: 14/05/09 в 19:37 |
Ребята, ваши писюны я трезво оценил. Охуительно.
Я просто немного знаком с суоми, ему регекспы как мне дао де дзын читать в оригинале.
|
|
|
|
Чингачгук, вождь красноглазых
С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824
|
Добавлено: 14/05/09 в 20:08 |
Ну раз ты близко знаком и такой, по всей видимости, крутой - то и сделай ему по-нормальному. По знакомству. С каких это пор на мастере посоветовать надежный код - "писюны"?
|
|
|
|
Гауляйтор Курска
С нами с 08.10.03
Сообщения: 20782
Рейтинг: 473
|
Добавлено: 15/05/09 в 05:17 |
Pentarh писал: | Ребята, ваши писюны я трезво оценил. Охуительно.
Я просто немного знаком с суоми, ему регекспы как мне дао де дзын читать в оригинале. |
;), всем пасиб.. завтра попробую. ничего срочного, так сайтик про путешествия, но какой то неугомоный мудак достал меня..
ели че я тебе стукну или здесь покажу..
сам хочу сделать, уже почти 5 лет забил на програмирование. а ведь я из старой бригады.. КОБОЛ, Асамблер, Сайбейс.. Скучаю немного.
|
|
Нанимаю свободных агентов в Курское подполье.
|
0
|
|
|
Раздаю инвайты, ищу линк-трейд
С нами с 20.08.04
Сообщения: 16631
Рейтинг: 8593
|
Добавлено: 15/05/09 в 10:11 |
гы
Пролог, фортран - были вещи, юзал
|
|
|
|
С нами с 24.03.03
Сообщения: 569
Рейтинг: 278
|
Добавлено: 16/05/09 в 13:01 |
Dr.Syshalt писал: | Ну раз ты близко знаком и такой, по всей видимости, крутой - то и сделай ему по-нормальному. По знакомству. С каких это пор на мастере посоветовать надежный код - "писюны"? |
он тебе и посоветовал нормально )
|
|
|
|
Криптопохуист
С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019
|
Добавлено: 16/05/09 в 22:00 |
Dr.Syshalt писал: | Ну раз ты близко знаком и такой, по всей видимости, крутой - то и сделай ему по-нормальному. По знакомству. С каких это пор на мастере посоветовать надежный код - "писюны"? |
Я с безопасностью знаком не по наслышке, с регекспами тож. Но не всегда стоит по мухам с пушки хуярить ;)
|
|
|
|
С нами с 05.05.05
Сообщения: 1913
Рейтинг: 1134
|
Добавлено: 17/05/09 в 01:16 |
я думаю настряпать regex чтобы не пускал гавно, кроме урлов, проблема не такая сложная
на свкидку в два захода
первый, пускаем то что похоже на урл
вторая, смотрим чтобы в нем было того чему там быть не должно
|
|
|
|
С нами с 19.11.03
Сообщения: 3973
Рейтинг: 2362
|
Добавлено: 17/05/09 в 03:25 |
freeek: велосипед уже изобрели, на него Pentarh: уже указал.
|
|
|
|
С нами с 05.05.05
Сообщения: 1913
Рейтинг: 1134
|
Добавлено: 17/05/09 в 11:29 |
xreload писал: | freeek: велосипед уже изобрели, на него Pentarh: уже указал. |
да согласен, просто мысль была о том, что если все это пишется в базу, то мало ли, кто что там может ввести кроме яваскрипт
|
|
|
|
С нами с 03.05.07
Сообщения: 801
Рейтинг: 825
|
Добавлено: 18/05/09 в 13:30 |
Код: | $_POST["message"]=htmlspecialchars($_POST["message"]); |
|
|
|
|
Чингачгук, вождь красноглазых
С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824
|
Добавлено: 18/05/09 в 22:37 |
Pentarh писал: | Я с безопасностью знаком не по наслышке, с регекспами тож. Но не всегда стоит по мухам с пушки хуярить ;) |
Ты, может, с чем-то не по-наслышке знаком, но не с написанием нормальных программ точно. Валидация делается не только для безопасности, хотя там тоже она куда лучше работу выполняет. А еще для того, чтобы сберечь пользователя от ввода неправильных данных. Когда он копипастил, к примеру, URL, и захватил с ним еще пару строк - и не заметил. Это просто называется "писать код по-нормальному, а не через одно место".
Я даю те советы, которые считаю правильными. А примет кто-то мои советы, или этот топик откопают археологи через 1000 лет - это не мое дело, и тем более, уж извини, не твое.
|
|
|
|