问题描述
看看这段代码:
var url = "https://mydatabase.documents.azure.com:443/";
var db = "my-db";
var key = "mykey";
var sqlQueryText = $"SELECT * FROM CelCoinData f WHERE f.id = '{data.UniversalId}' and f.uri = '{data.Uri}'";
var cliente = new CosmosClient(url,key);
var database = cliente.GetDatabase(db);
var containers = database.GetContainer("MyContainer");
var dados = new DataCosmosDB();
var iterator = containers.GetItemQueryIterator<DataCosmosDB>(sqlQueryText);
在我看来,这是 sql 注入的教科书,但 SonarCloud 并没有这样标记。为什么?
Cosmos 是否无懈可击? Cosmos 客户端是否以某种方式计算并相应调整并且声纳意识到这一点?
解决方法
根据 SonarCloud 支持,Cosmos 尚未检测为 SINK。他们会做出适当的改变