gpt4 book ai didi

php - 如何清理Elasticsearch自动生成的ID?

转载 作者:行者123 更新时间:2023-12-03 01:51:36 24 4
gpt4 key购买 nike

我想在调用服务器之前验证我的Elasticsearch ID 。我正在四处寻找以找出是否有任何要求的ID是否具有正确的格式。我不确定这是否必要。我知道 elasticsearch会生成URL安全的Base64 ID的

有人有建议吗?我的问题是:

  • 我应该验证elasticsearch ID 吗?如果是,在执行查询之前如何验证格式?
  • 如果否,直接查询Elasticsearch服务器是否安全?用户将无法输入ID,但是一些恶意用户可以拦截或弄清楚如何使用随机字符串调用Endpoint,这可能是攻击或访问另一组数据的原因?

  • 我是一个Elasticsearch初学者,但是正在寻找最佳实践。我读到的是,在以前的版本中,存在一个漏洞,可以远程执行代码。

    https://www.elastic.co/blog/scripting-security

    http://bouk.co/blog/elasticsearch-rce/

    我知道这是固定的,但仍想验证ID。如果ID格式不正确,这至少可以避免不必要地调用Elasticsearch。我所知道的是“从不信任用户输入”,或者就我而言避免可能的输入。

    注意:我正在使用elasticsearch-php Client。

    有什么建议吗?谢谢。

    最佳答案

    Should I validate elasticsearch ID ?



    如果你想。您可以检查是否只有字母数字, +/=存在。这增加了额外的安全性,但并非绝对必要。本着“ defence in depth”的精神,我建议您这样做。

    If no.. is it secure to query the Elasticsearch server directly ? Users will not be able to input the ID, but some [malicious] users can intercept or figure out how to call the Endpoint with a random string, that could be a possible attack or access to a different set of data ?



    如果您使用久经考验的JSON编码器来构建查询,那么任何攻击者都将无法中断查询并检索其不想要的数据(即,无法突破使用串联构建的JSON字符串) - NoSQL Injection的一种形式)。即使您按照我之前所述验证JSON字符串,也要这样做。

    关于php - 如何清理Elasticsearch自动生成的ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39960416/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com