Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
12.03.2007, 20:49
|
|||
|---|---|---|---|
|
|||
не воспринимает quote_literal |
|||
|
#18+
create or replace function select_active_delete (text, text) returns smallint as 'SELECT active FROM mailbox WHERE username=$1 AND domain=quote_literal($2) ' language sql VOLATILE RETURNS NULL ON NULL INPUT SECURITY DEFINER; Запрос select select_active_delete('dd@new.ru', 'new.ru'); Не возвращает условие, хотя если в функции не указать quote_literal - все работает; Пробовал и так: create or replace function select_active_delete (text, text) returns smallint as 'SELECT active FROM mailbox WHERE username=$1 AND domain='|| quote_literal($2) || ' language sql VOLATILE RETURNS NULL ON NULL INPUT SECURITY DEFINER; И так 'SELECT active FROM mailbox WHERE username=$1 AND domain='|| quote_literal($2) ' ' Результат одинаковый! В ем грабли? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.03.2007, 21:57
|
|||
|---|---|---|---|
|
|||
не воспринимает quote_literal |
|||
|
#18+
функцию quote_literal надо использовать при составлении динамического запроса Поэтому Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.03.2007, 23:07
|
|||
|---|---|---|---|
|
|||
не воспринимает quote_literal |
|||
|
#18+
select select_active_delete('dd@new.ru', 'new.ru'); Пользователь может менять параметры 'dd@new.ru' и 'new.ru' на любые другие. Не опасна ли тогда такая хп будет в плане sql инъекции? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.03.2007, 10:15
|
|||
|---|---|---|---|
|
|||
не воспринимает quote_literal |
|||
|
#18+
neowebselect select_active_delete('dd@new.ru', 'new.ru'); Пользователь может менять параметры 'dd@new.ru' и 'new.ru' на любые другие. Не опасна ли тогда такая хп будет в плане sql инъекции? инъекции возможны, если запрос строится динамически. Здесь этого я не наблюдаю. А что мешает попробовать сделать инъекцию и на основании полученного результата сделать выводы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.03.2007, 15:05
|
|||
|---|---|---|---|
|
|||
не воспринимает quote_literal |
|||
|
#18+
И все таки: create or replace function used_script (text) returns text as $$ declare res text; name text; begin name:=quote_literal($1); select into res domain from mailbox where username = name; return res; end; $$ language plpgsql VOLATILE RETURNS NULL ON NULL INPUT SECURITY DEFINER; запрос из php: ...select used_script($var1)... c quote_literal оно не работает. Сама строка(в нормальном виде) не содержит спецсимволов. Уже пробовал заменить select into res domain from mailbox where username = name; на select into res domain from mailbox where username = '||name||'; и так name:=quote_literal("$1"); Сделал return name, чтоб посмотреть что в этой переменной - там строка, которая и должна быть.... Как быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.03.2007, 15:42
|
|||
|---|---|---|---|
|
|||
не воспринимает quote_literal |
|||
|
#18+
А может попробовать declare some_val alias for $1 ... begin name:=quote_literal(some_val); ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.03.2007, 16:46
|
|||
|---|---|---|---|
|
|||
не воспринимает quote_literal |
|||
|
#18+
Переменные не надо экранировать Пример Код: plaintext 1. 2. 3. 4. 5. 6. Переменные надо экранировать Пример Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=53&mobile=1&tid=2005600]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
46ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 251ms |
| total: | 367ms |

| 0 / 0 |
