问题描述
我担心用户可能会在我的Elasticsearch cluser中执行恶意代码,例如删除索引或通过执行昂贵的查询来关闭服务器。根据{{3}},该问题在理论上确实存在。
我们的Elasticsearch集群只能从我们的dotnet后端服务器访问,并且我们使用this answer执行查询。当前,用户输入在我们的查询中未更改。例如:
var result = await nestClient.SearchAsync<Product>(search => search
.From(offset)
.Size(limit)
.Query(query => query
.MultiMatch(multiMatch => multiMatch
.Fields(fields => fields
.Field(product => product.Name)
.Field(product => product.Description))
.Operator(Operator.Or)
.Query(MALICIoUS_USER_INPUT)
)
)
);
我希望nesT
客户端(或较低级别的Elasticsearch.Net
客户端)负责清理用户输入。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)