通过Rest API主体进行SQL注入

问题描述 投票:0回答:1

我目前正在检查Rest API是否易受SQL注入攻击,但我对该过程感到困惑。

我的API接受JSON,然后将请求发送到Mysql数据库。我尝试过发送应该导致像' OR 'x'='x这样的SQL注入的字符串,但是不是执行它们而是将它们作为字符串发送到服务器,我想这意味着它们不是问题。

我现在正在对Postman进行一些更深入的测试,但是,如果我尝试向我的参数中添加字符串,例如:

{
   "name": "test" OR 1 = 1 -- "
}

邮递员只会通知我JSON语法不正确,即使我确实发送了JSON语法,我也将收到“无效的JSON”响应,甚至没有返回我的Rest API。

这是好事还是坏事?我实际上该如何测试我的API?

mysql sql security sql-injection
1个回答
1
投票

邮递员,您的JSON已损坏。您应该在字段名称或值中转义双引号,这是JSON中的特殊符号。您的查询应类似于:

{
   "name": "test\" OR 1 = 1 -- "
}

阅读有关JSON中特殊字符的更多信息:https://www.json.org/json-en.html

© www.soinside.com 2019 - 2024. All rights reserved.