作者:qwwdzfy | 来源:互联网 | 2023-08-07 10:59
我希望更好地理解注入以获取表名等。
当前注入前的SQL:
SELECT count(*) [count] FROM TABLE1 WHERE Number = '1'
我的第一次注射尝试是:
SELECT count(*) [count] FROM TABLE1 WHERE Number = '1' ORDER BY 2--
这导致以下错误:
ORDER BY位置编号2超出了选择列表中项目的数量范围。
现在我知道该值较低,在这种情况下为数字1。因此,我继续进行以下步骤:
SELECT count(*) [count] FROM TABLE1 WHERE Number = '1' UNION SELECT 1--
执行上述错误导致所有使用UNION组合的查询在其目标列表中必须具有相等数量的表达式。这是我不了解的,ORDER 1没检测到问题,所以为什么在添加
时会发现新的错误
我认为结果应该是表格中填充的数字1。到目前为止无济于事。