在 puresec 的功能屏蔽上检测到空 aws lambda 子进程执行

empty aws lambda child process execution detected on puresec's function-shield

我正在尝试使用 puresec's function_shield 来保护我的服务的 lambda。
出于测试目的,我写了一个非常基本的函数,它只是调用 boto3.resource('dynamodb') 并退出。
奇怪的是 function_shield 记录了 child_process 生成尝试: {"function_shield":true,"policy":"create_child_process","details":{"path":"/bin/sh"},"mode":"alert"} {"function_shield":true,"policy":"create_child_process","details":{"path":"/bin/uname"},"mode":"alert"} 我注意到如果我取消资源调用,日志就会一起...
我会担心吗?
我如何确定此调用是从 boto3 发出的还是我的系统正在受到威胁?

谢谢!

这不是恶意的。 Boto3 使用 Python 的内置 'platform.system()' 函数来检索平台信息。出于某种原因,Python 内置函数正在调用一个 shell 进程来 运行 取消命名并获取数据,而不是使用更安全的工具来获取相同的数据。

目前,在我们解决此问题之前,您可以在调用 boto3.resource('dynamodb') 之前禁用 FunctionShield 中的子进程创建,然后立即重新启用它。

function_shield.configure({
        "policy": {
            "create_child_process": "allow"
        }
    })
    boto3.resource('dynamodb')
    function_shield.configure({
        "policy": {
            "create_child_process": "alert"
        }
    })

为了将来参考,我们为 FunctionShield 打开了一个 github 存储库,您可以在其中创建问题:https://github.com/puresec/FunctionShield/