盲SQL注入指导

时间:2017-11-14 18:08:11

标签: sql oracle odbc sql-injection

所以我在上课时做了一些练习,而且我在理解这个特定的数据库时遇到了一些麻烦,我打算盲目闯入。

数据库使用字符串抛出以下错误: x'

Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC driver for Oracle][Oracle]ORA-01756: quoted string not properly terminated

表明它很脆弱。

同样,数据库与有效输入valid'||'input连接正常,返回正确的输入网页。

让我感到困惑的是,输入x' --时数据库不会抛出错误,但是当输入输入x'; --时,db会抛出以下错误:

Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80040E14) [Microsoft][ODBC driver for Oracle][Oracle]ORA-00911: invalid character

我还尝试对输入进行URL编码,使其显示为x'%3b+--x'%3b --,但会返回相同的结果。

有没有人知道下一步要做什么,因为我似乎无法在查询中注入分号;

一切都在这下面编辑:

编辑1:我开始思考并认为我可能在一个括号内。我尝试了输入x');,它会产生以下错误:

Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80040E14) [Microsoft][ODBC driver for Oracle][Oracle]ORA-00933: SQL command not properly ended

编辑2: 发现语句validinput'order by 52--产生了结果,但validinput'order by 53--产生了错误。我总结说该表有52列。

我现在正在尝试validinput' union select 1 from table_name,但感觉就像一个巨大的猜谜游戏。我不知道任何表名可能是什么。

编辑3: 我的大脑在这一点上真的很伤心,但我想我差不多...... 该声明 validnum'+union+select+null,2,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null+from+dual--

返回了合法页面

编辑4: 按照Jeffrey Kemp的建议,我得到了一张表(输出似乎限于1行)。哦,哦。但更多信息,版本是Oracle 9i,我知道数据库名称加上用户名,而且很少有表通过盲目的运气。练习的目标是更改其中一个表中的值。但是,由于输出限制为1行,我在获取列名时遇到了困难。有什么建议吗?

0 个答案:

没有答案