我是ES的新手,想知道search function是否会消毒内部"查询"交给身体参数时的字段,如:
"query": {
"filtered": {
"query": {
"match": {
"_all": {
"query": "[THIS PARAMETER]",
"operator": "and"
}
}
}
}
}
我已经尝试过所有可以打破它的输入,但我似乎无法做到。我创建了一个清理功能但实际上在搜索"&"等字符串时会导致搜索结果更糟糕。或" +"。我查看了代码,似乎无法找到该字段的任何明显的消毒。我只想在用户通过该功能发送用户搜索查询之前确定。
由于
答案 0 :(得分:0)
我看到另外三种可能的方法来验证es针对索引的反向攻击,这些数据库是数据库,类似于SQL注入攻击:
您对Lucene以及它如何处理攻击有多了解?直接追求Lucene架构和支持代码可以让您深入了解es如何处理攻击
尝试使用Lucene的SOLR方法,看看SOLR如何处理攻击; SOLR落后于es,然后一直在赶上并改善其他领域; es和SOLR
放下ELK堆栈的一部分 - 至少是Kibana和es,并测试Kibana,它可以生成其他可以测试的es / Lucene代码