← All skills
detecting-serverless-function-injection
79 / 100 · Review before installing
Check before installing. Some of what it can do is expected: a coding skill usually runs build and test commands.
By plurigrid/asi (GitHub) · coding · 72 stars · scanned at commit 293ce9f
Detects and prevents code injection attacks targeting serverless functions (AWS Lambda, Azure Functions, Google Cloud Functions) through event source poisoning, malicious layer injection, runtime command execution, and IAM privilege escalation via function modification. The analyst combines static analysis of function code, CloudTrail event correlation, runtime behavior monitoring, and IAM policy auditing to identify injection vectors across the expanded serverless attack surface including API …
Works with any agent that supports SKILL.md skills.
What this skill can do
Runs commands on your computer
This is disclosed by the author in the skill's SKILL.md or README. Expected for a coding skill.
Found in 28 places.
Show 17 more
- plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 57
aws apigateway get-rest-apis --query 'items[*].[id,name]' --output table - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 62
aws s3api get-bucket-notification-configuration --bucket <bucket-name> - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 66
aws lambda get-function-configuration --function-name <name> \ - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 71
aws iam list-attached-role-policies --role-name <lambda-exec-role> - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 81
aws lambda get-function --function-name <name> --query 'Code.Location' --output text | xargs curl -o function.zip - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 89
os.system(event['command']) # OS command injection - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 90
subprocess.call(event['cmd'], shell=True) # Shell injection - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 91
os.popen(event['input']) # Command injection - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 100
child_process.exec(event.command); // OS command injection - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 101
child_process.execSync(event.cmd); // Synchronous command injection - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 103
require('child_process').exec(event.input); // Import-and-execute pattern - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 107
semgrep --config "p/owasp-top-ten" --config "p/command-injection" \ - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 112
bandit -r function_code/ -f json -o bandit_results.json \ - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 115
These test IDs specifically target `exec`, `pickle`, `eval`, `subprocess` with `shell=True`, and other injection-relevant patterns. - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 139
os.system(f"aws s3 cp s3://{bucket}/{key} /tmp/file") - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 159
subprocess.run(f"echo {user_agent} >> /tmp/access.log", shell=True) - plugins/asi/skills/detecting-serverless-function-injection/SKILL.md, line 176
| filter @message like /(?i)(eval|exec|os\.system|child_process|subprocess|import os)/
and 8 more places
Sends data to these websites: attacker.com
This is disclosed by the author in the skill's SKILL.md or README.
Found in 5 places.
Show 2 more
Downloads and installs other software
The author does not mention this.
Found in 2 places.
Safer alternatives
Low-risk skills in the same category (coding) that look related. Check that one does what you need.
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'detecting-serverless-function-injection' ] || [ -L ~/.agents/skills/'detecting-serverless-function-injection' ]; then echo 'A skill folder named detecting-serverless-function-injection already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/plurigrid/asi' "$d" && git -C "$d" checkout --quiet '293ce9f76e3abcd5ba18db284688bc0d9ac6691d' -- 'plugins/asi/skills/detecting-serverless-function-injection' && mkdir -p ~/.agents/skills && cp -R "$d"/'plugins/asi/skills/detecting-serverless-function-injection' ~/.agents/skills/'detecting-serverless-function-injection' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'detecting-serverless-function-injection' ~/.claude/skills/'detecting-serverless-function-injection' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for plurigrid/asi shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/plurigrid/asi/)
Score history
| Date | Version | Score |
|---|
| 2026-11-07 | 293ce9f | 79 |