1' union select * from [ADM] union select * fr

什么意思解释下... 什么意思 解释下 展开
网友 1

最佳答案

回答者:网友
union就是联合的意思。把两标拼接起来。
当两表的结构或者所选择的字段相同时候才可以使用Union方法。否则会出错。
-----------------
那也要人家用了字符串拼接的SQL语句你这台才能用。用PROC注入不了的。
#######
打个比方
原始的SQL是
SELECT
*
FROM
[ADM]
WHERE
USERID='ADMIN'
AND
PASSWORD
=
'PASS'
你现在在ADMIN或者PASS的地方插入你的那个语句
也就变成了
SELECT
*
FROM
[ADM]
WHERE
USERID='ADMIN'
AND
PASSWORD
=
'1'
union
select
*
from
[ADM]
union
select
*
from
[ADM]
where
'1'='1'
前面那个SELECT
*
FROM
[ADM]
WHERE
USERID='ADMIN'
AND
PASSWORD
=
'1'
肯定什么数据都不会出来的。
但是下面还有一句UNION
select
*
from
[ADM]
union
select
*
from
[ADM]
where
'1'='1'
而最后的1=1这个条件就是真,所以会把[ADM]
所有的数据都给抽出来。

我来回答