{"id":"GHSA-c9j2-qjfv-mm4p","kind":"vulnerability","aliases":["GHSA-c9j2-qjfv-mm4p"],"related":[],"title":"CVE-2026-94384 - Missing Authorization in AmazonConnectSalesforceLambda sfExecuteAWSService","description":"CVE-2026-94384 - Missing Authorization in AmazonConnectSalesforceLambda sfExecuteAWSService\n\n### CVE-2026-94384 - Missing Authorization in AmazonConnectSalesforceLambda sfExecuteAWSService\n\nBulletin ID: 2026-115-AWS Scope: AWS Content Type: Important (requires attention) Publication Date: 09/22/2026 10:00 AM PDT\n\nDescription:\n\nAmazon Connect Salesforce Lambda (AmazonConnectSalesforceLambda) is a Serverless Application Repository application that provides Lambda functions for integrating Amazon Connect with Salesforce. We identified CVE-2026-94384, a missing authorization issue in the sfExecuteAWSService Lambda function, which is used only during initial setup. The function dispatches caller-supplied parameters to privileged AWS service APIs without validating the caller's authorization. As a result, an IAM principal with lambda:InvokeFunction permission on the function can perform AWS operations that their own IAM permissions would otherwise deny.\n\nImpacted versions: >= 5.15 AND <= 5.24.16\n\nResolution:\n\nTo remediate this issue, upgrade to AmazonConnectSalesforceLambda version 5.26 or later. After setup is complete, either delete or disable the sfExecuteAWSService function. If you keep the function, restrict who can invoke it: within your account, grant lambda:InvokeFunction on the function only to the single IAM user the CTI Adapter uses to call it and to no other principal (for stronger enforcement, deny it for all other principals using a service control policy or permission boundary); and set the SalesforceExecuteAWSServiceUser parameter to that same IAM user so that cross-account invocation is limited to it.\n\nVerification:\n\nConfirm the sfExecuteAWSService function has been deleted or disabled after setup. If you keep the function, confirm that within your account lambda:InvokeFunction on the function is granted only to the CTI Adapter's IAM user, and that the SalesforceExecuteAWSServiceUser parameter names that same user.\n\nReferences:\n\n- CVE-2026-94384\n- GHSA-c9j2-qjfv-mm4p\n\nAcknowledgement:\n\nWe would like to thank Chang Li of Xidian University for collaborating on this issue through the coordinated vulnerability disclosure process.\n\n Please email aws-security@amazon.com with any security questions or concerns.","summary":"The AmazonConnectSalesforceLambda Serverless Application Repository app has a sfExecuteAWSService Lambda function that forwards caller-supplied parameters to privileged AWS APIs without checking authorization. Any IAM principal with lambda:InvokeFunction on that function can perform AWS operations their own IAM permissions would normally deny.","severity":"high","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["amazon-connect","aws","lab-disclosure","lambda","salesforce","serverless-application-repository","vendor"],"not_affected_if":["function-deleted-or-disabled","not-deployed","version-5.26-or-later"],"how_to_check":"- Check the installed AmazonConnectSalesforceLambda version and whether it is between `5.15` and `5.24.16`\n- Check whether a Lambda function named `sfExecuteAWSService` still exists in the account\n- Review who holds `lambda:InvokeFunction` on that function and whether `SalesforceExecuteAWSServiceUser` names a single IAM user","fix":"- Upgrade AmazonConnectSalesforceLambda to `5.26` or later\n- Delete or disable the sfExecuteAWSService function after setup is complete\n- If the function is kept, grant lambda:InvokeFunction only to the CTI Adapter's IAM user and set SalesforceExecuteAWSServiceUser to that same user","status":"open","published_at":"2026-09-22T00:00:00+00:00","first_seen_at":"2026-10-24T19:43:43+00:00","triaged_at":"2026-10-25T05:30:25+00:00","updated_at":"2026-10-25T05:30:25+00:00","category":"vendor","confidence":0.7,"triage":{"at":"2026-10-25T05:30:25Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade AmazonConnectSalesforceLambda to `5.26` or later\n- Delete or disable the sfExecuteAWSService function after setup is complete\n- If the function is kept, grant lambda:InvokeFunction only to the CTI Adapter's IAM user and set SalesforceExecuteAWSServiceUser to that same user","reach":"network","title":"AWS Amazon Connect Salesforce Lambda: missing authorization lets IAM principals bypass limits","impact":"high","summary":"The AmazonConnectSalesforceLambda Serverless Application Repository app has a sfExecuteAWSService Lambda function that forwards caller-supplied parameters to privileged AWS APIs without checking authorization. Any IAM principal with lambda:InvokeFunction on that function can perform AWS operations their own IAM permissions would normally deny.","category":"vendor","nicknames":[],"who_cares":["aws","amazon-connect","salesforce","lambda","serverless-application-repository"],"confidence":0.7,"needs_auth":"yes","worst_case":"IAM principals perform AWS operations beyond their own permissions","analyst_note":"","how_to_check":"- Check the installed AmazonConnectSalesforceLambda version and whether it is between `5.15` and `5.24.16`\n- Check whether a Lambda function named `sfExecuteAWSService` still exists in the account\n- Review who holds `lambda:InvokeFunction` on that function and whether `SalesforceExecuteAWSServiceUser` names a single IAM user","needs_analyst":false,"not_affected_if":["not-deployed","version-5.26-or-later","function-deleted-or-disabled"],"who_is_affected":"Teams that deployed the AmazonConnectSalesforceLambda app from the Serverless Application Repository to connect Amazon Connect with Salesforce, in versions 5.15 through 5.24.16. Exposure depends on which principals can invoke the sfExecuteAWSService function, so accounts where only the CTI Adapter user can invoke it have less risk. Teams that never deployed this app can skip it.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"high"},"cost_usd":0.000795,"input_tokens":4123,"output_tokens":765,"severity_before":"unknown"},"analyst_status":null,"analyst_note":null,"search":"'-115':96C '-2026':2A,78C,86C,137C,348C '-94384':3A,79C,87C,138C,349C '00':109C '09/22/2026':107C '10':108C '2026':95C '5.15':200C '5.24.16':202C '5.26':212C 'account':238C,294C,321C 'acknowledg':355C 'adapt':253C,333C 'amazon':20B,113C,130C 'amazon-connect':19B 'amazonconnectsalesforcelambda':7A,34B,83C,91C,117C,210C 'api':53B,166C 'app':38B 'applic':30B,36B,121C,123C 'attent':104C 'author':5A,56B,81C,89C,141C,172C 'aw':22B,52B,68B,97C,99C,164C,188C 'aws-security@amazon.com':379C 'boundari':279C 'bulletin':93C 'c9j2':11A,16A,352C 'call':256C 'caller':47B,159C,170C 'caller-suppli':46B,158C 'chang':361C 'check':55B 'collabor':367C 'complet':218C 'concern':385C 'confirm':301C,317C 'connect':21B,114C,131C 'content':100C 'control':275C 'coordin':373C 'cross':293C 'cross-account':292C 'cti':252C,332C 'cve':1A,77C,85C,136C,347C 'date':106C 'delet':220C,307C 'deni':76B,197C,266C 'descript':112C 'disabl':222C,309C 'disclosur':25B,375C 'dispatch':157C 'either':219C 'email':378C 'enforc':265C 'forward':45B 'function':43B,65B,127C,147C,156C,185C,225C,230C,244C,304C,316C,326C 'ghsa':10A,15A,351C 'ghsa-c9j2-qjfv-mm4p':9A,14A,350C 'grant':239C,328C 'iam':58B,72B,177C,193C,249C,288C,335C 'id':94C 'identifi':135C 'impact':198C 'import':102C 'initi':153C 'integr':129C 'invoc':295C 'invok':234C 'invokefunct':62B,181C,241C,323C 'issu':142C,207C,370C 'keep':228C,314C 'lab':24B 'lab-disclosur':23B 'lambda':26B,42B,61B,116C,126C,146C,180C,240C,322C 'later':214C 'li':362C 'like':358C 'limit':297C 'miss':4A,80C,88C,140C 'mm4p':13A,18A,354C 'name':342C 'normal':75B 'oper':69B,189C 'otherwis':196C 'paramet':49B,161C,284C,341C 'pdt':111C 'perform':67B,187C 'permiss':73B,182C,194C,278C 'pleas':377C 'polici':276C 'princip':59B,178C,262C,271C 'privileg':51B,163C 'process':376C 'provid':125C 'public':105C 'qjfv':12A,17A,353C 'question':383C 'refer':346C 'remedi':205C 'repositori':31B,37B,122C 'requir':103C 'resolut':203C 'restrict':231C 'result':175C 'salesforc':27B,115C,133C 'salesforceexecuteawsserviceus':283C,340C 'scope':98C 'secur':382C 'serverless':29B,35B,120C 'serverless-application-repositori':28B 'servic':165C,274C 'set':281C 'setup':154C,216C,311C 'sfexecuteawsservic':8A,41B,84C,92C,145C,224C,303C 'singl':248C 'stronger':264C 'suppli':48B,160C 'thank':360C 'type':101C 'univers':365C 'upgrad':208C 'use':150C,254C,272C 'user':250C,289C,336C,345C 'valid':168C 'vendor':32B 'verif':300C 'version':199C,211C 'vulner':374C 'within':236C,319C 'without':54B,167C 'would':74B,195C,357C 'xidian':364C","nicknames":[],"mitigations":[],"who_affected":"Teams that deployed the AmazonConnectSalesforceLambda app from the Serverless Application Repository to connect Amazon Connect with Salesforce, in versions 5.15 through 5.24.16. Exposure depends on which principals can invoke the sfExecuteAWSService function, so accounts where only the CTI Adapter user can invoke it have less risk. Teams that never deployed this app can skip it.","tier":"B","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-09-22T00:00:00+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"lab","external_id":"https://aws.amazon.com/security/security-bulletins/rss/2026-115-aws/#GHSA-c9j2-qjfv-mm4p","url":"https://aws.amazon.com/security/security-bulletins/rss/2026-115-aws/","severity":null,"published_at":"2026-09-22T00:00:00+00:00","modified_at":null,"first_seen_at":"2026-10-24T19:43:43+00:00","fetched_at":"2026-10-26T04:00:04+00:00","note":"AWS: CVE-2026-94384 - Missing Authorization in AmazonConnectSalesforceLambda sfExecuteAWSService"}],"documents":[{"id":2960,"url":"https://aws.amazon.com/security/security-bulletins/rss/2026-115-aws/","title":"AWS: CVE-2026-94384 - Missing Authorization in AmazonConnectSalesforceLambda sfExecuteAWSService","kind":"advisory","source":"lab","text":"CVE-2026-94384 - Missing Authorization in AmazonConnectSalesforceLambda sfExecuteAWSService\n\n### CVE-2026-94384 - Missing Authorization in AmazonConnectSalesforceLambda sfExecuteAWSService\n\nBulletin ID: 2026-115-AWS Scope: AWS Content Type: Important (requires attention) Publication Date: 09/22/2026 10:00 AM PDT\n\nDescription:\n\nAmazon Connect Salesforce Lambda (AmazonConnectSalesforceLambda) is a Serverless Application Repository application that provides Lambda functions for integrating Amazon Connect with Salesforce. We identified CVE-2026-94384, a missing authorization issue in the sfExecuteAWSService Lambda function, which is used only during initial setup. The function dispatches caller-supplied parameters to privileged AWS service APIs without validating the caller's authorization. As a result, an IAM principal with lambda:InvokeFunction permission on the function can perform AWS operations that their own IAM permissions would otherwise deny.\n\nImpacted versions: >= 5.15 AND <= 5.24.16\n\nResolution:\n\nTo remediate this issue, upgrade to AmazonConnectSalesforceLambda version 5.26 or later. After setup is complete, either delete or disable the sfExecuteAWSService function. If you keep the function, restrict who can invoke it: within your account, grant lambda:InvokeFunction on the function only to the single IAM user the CTI Adapter uses to call it and to no other principal (for stronger enforcement, deny it for all other principals using a service control policy or permission boundary); and set the SalesforceExecuteAWSServiceUser parameter to that same IAM user so that cross-account invocation is limited to it.\n\nVerification:\n\nConfirm the sfExecuteAWSService function has been deleted or disabled after setup. If you keep the function, confirm that within your account lambda:InvokeFunction on the function is granted only to the CTI Adapter's IAM user, and that the SalesforceExecuteAWSServiceUser parameter names that same user.\n\nReferences:\n\n- CVE-2026-94384\n- GHSA-c9j2-qjfv-mm4p\n\nAcknowledgement:\n\nWe would like to thank Chang Li of Xidian University for collaborating on this issue through the coordinated vulnerability disclosure process.\n\n Please email aws-security@amazon.com with any security questions or concerns.","published_at":"2026-09-22T00:00:00+00:00","relation":"advisory","confidence":null,"note":null}],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}