How to Find AWS Lambda Functions with Obsolete Runtimes
If you have functions running on a runtime that will be deprecated in the next 60 days, Lambda notifies you by email that you should prepare by migrating your function to a supported runtime.
In some cases, such as security issues that require a backwards-incompatible update, or software that does not support a long-term support (LTS) schedule, advance notice might not be possible.
After a runtime is deprecated, Lambda might retire it completely at any time by disabling invocation. Deprecated runtimes are not eligible for security updates or technical support.
This security check is part of the CIS Amazon Web Services Benchmarks and is rated severity medium.
This guide assumes that you have already installed and configured Resoto to collect your AWS resources.
Execute the following
searchcommand in Resoto Shell or Resoto UI:
> search is(aws_lambda_function) and function_runtime in [python3.6, python2.7, dotnetcore2.1, ruby2.5, nodejs10.x, nodejs8.10, nodejs4.3, nodejs6.10, dotnetcore1.0, dotnetcore2.0, nodejs4.3-edge, nodejs]
kind=aws_lambda_function, ..., region=resoto-poweruser
kind=aws_lambda_function, ..., account=poweruser-team
searchcommand into the
> search is(aws_lambda_function) and function_runtime in [python3.6, python2.7, dotnetcore2.1, ruby2.5, nodejs10.x, nodejs8.10, nodejs4.3, nodejs6.10, dotnetcore1.0, dotnetcore2.0, nodejs4.3-edge, nodejs] | dump
The command output will list the details of all non-compliant
- Migrating your deprecated functions to a supported runtime.
- Testing new runtimes as they are made available.
- Rolling out new runtimes in production as soon as possible.
Please refer to the AWS Lambda documentation for details.