Vulnerable code check
Flag injection, path traversal, hardcoded secrets and other common holes in a change.
Point it at a function or a diff. Jev names the weakness if there is one (SQL or command injection, cross-site scripting, path traversal, server-side request forgery, a hardcoded secret, weak crypto, a skipped permission check), then checks whether outside input can reach it and whether an attacker could use it. A public benchmark of Jev on matched vulnerable and fixed code is where this pattern comes from.
Try it live
Real calls to Jev. Pick an example or paste your own.
Pick an example or paste your own input, then run it.
Under the hood
Every question and rule, in the open. Fork it to change any of them.
What it asks
Reads code and context, then asks 4 questions in one call.
- Q1WeaknessPick one
Which security weakness, if any, does the
codehave?SQL injectionCommand injectionCross-site scriptingPath traversalServer-side request forgeryHardcoded secretWeak cryptoMissing checkUnsafe deserializationNone - Q2Reachable from outsideYes / no
Can input from outside (a user, a request, an uploaded file) reach the risky part of the
code, given thecontext? - Q3ExploitableYes / no
Could an attacker use the
codeto read data they shouldn't, run their own code, or act as someone else? - Q4SeverityScore
If someone exploited the
code, how bad would it be?- 0None: there's nothing to exploit
- 1Low: limited impact, or hard to reach
- 2High: exposes data or lets someone take over an account
- 3Critical: lets someone run code or read everything
How it decides
Rules run in code, top to bottom. The first one that matches gives the verdict.
- 1If Weakness is not None and Exploitable ≥ 0.6Vulnerable
- 2If Severity ≥ 2.2 of 3Vulnerable
- 3If Weakness is not NoneReviewreview
- 4If Severity ≥ 1.2 of 3Reviewreview
- ·DefaultClean
Call it from your code
Every template runs as-is with an API key, no setup: POST /api/v1/judges/vulnerable-code-check/run.
curl -X POST https://tryevally.com/api/v1/judges/vulnerable-code-check/run \ -H "Authorization: Bearer $EVALLY_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "input": { "code": "def find_user(name):\n query = f\"SELECT * FROM users WHERE name = '\''{name}'\''\"\n return db.execute(query).fetchall()", "context": "Called with the ?name= parameter of a public search page" }}'Seen in the wild
Community builds on Jev that use this pattern. Not affiliated with Evally.
More in Engineering
- Engineering
PR risk review
Is this pull request safe to merge, or does it need a careful human look?
Safe to mergeNeeds careful reviewChanges requested7 questions - Engineering
Semantic code lint
Lint code against conventions written in plain English, the rules a regex can't express.
CleanWarningsViolations5 questions - Engineering
Commit message check
Does the commit message match the staged diff, with no secrets or debug leftovers?
Looks goodAmendBlock5 questions - Engineering
PR labeler
Label pull requests by type and area, and flag what belongs in the changelog.
FeatureBug fixRefactor+64 questions - Engineering
Package risk check
Catch typosquats and hostile install scripts before an install runs them.
AllowReviewBlock7 questions - Engineering
Judge question review
Review a question before Jev answers it: two judgments in one, inputs no option fits, a rating hiding in a yes/no.
Good to goImproveRewrite3 questions - Engineering
Should this be a judge?
Paste a prompt from your code. Find out whether it's really a decision a judge would answer faster and cheaper.
Use a judgeSplit itKeep the LLM4 questions