Sqlinjection在哪里条款

时间:2016-07-17 07:39:16

标签: sql-server-2008 sql-injection penetration-testing

我正在测试一个应用程序并遇到一个独特的问题我发现应用程序正在发送像

这样的参数 ?

$滤波器=模块名+ NE + '预订' +和+模块名+当量+ '交通' +和+(使用ContactID +当量+空+和+ IsToBeShown +当量+真)+&安培; $的OrderBy = REPORTNAME

显然我可以添加和+ 1 + eq + 1并显示所有结果,但如果我尝试终止查询,如使用(;或'),则会给我错误。

有点不确定如何终止查询并添加union etc.子句来提取数据。

欢迎任何想法

1 个答案:

答案 0 :(得分:0)

在where子句中使用$filter的接缝,可能会添加到其他一些硬编码条件中。要获得所有结果,您需要添加or 1 eq 1(或代替和)。

如果在$filter之前或之后添加其他条件,可能会有所不同。

尝试$filter=union all select ... where 1 eq 1但请记住,所有联合查询中的列列表必须相同。您无需使用;

终止查询

用+替换空格,我写了空格以便于阅读。