Skip to main content

AST Rules

The Rules tab is the SAST rule catalog. It is where you decide which rules run, silence the ones that do not fit your codebase, and add rules of your own.

Reach it from AST defaults → SAST for the company baseline, or from a Scan Config's SAST → Configure panel to override the catalog for one asset.

AST rules list

Reading the catalog

ColumnMeaning
NameRule identifier, e.g. alias-path-traversal
LanguageLanguages the rule applies to. Some rules are generic and match any file
SeverityCritical, High, Medium, Low, or Info — the severity a finding gets
ModeEnabled or Disabled — whether the rule runs
ActionsPer-rule menu

The catalog is large — over a thousand rules ship by default — so it is paginated. Use the search box (Search by name or tags) and the filters rather than scrolling.

Filters

Four dropdowns narrow the list, and Clear resets them all:

FilterUse it to
SeverityFocus on the severities you actually gate on
LanguageShow only rules relevant to your stack
ModeAudit what you have already disabled, or confirm what is enabled
TypeSeparate Conviso-managed rules from your custom ones
tip

Filtering by Mode → Disabled is the fastest way to review the silencing decisions your team accumulated. Rules disabled during an incident and never revisited are a common blind spot.

Enabling and disabling a rule

Every rule row carries an Actions menu () with the action that applies to its current state.

Rule actions menu

ActionAvailable whenEffect
DisableThe rule is EnabledThe rule stops running. Existing findings are not deleted
EnableThe rule is DisabledThe rule runs again on the next scan
DeleteThe rule is a custom ruleRemoves the rule permanently

Rule mode is saved as you change it, for the configuration you are editing — there is no separate Save step for the Rules tab. A banner on the screen states this explicitly.

note

Disabling a rule affects future scans. Findings already reported stay in Vulnerability Management until they are triaged there. Silencing a rule is not a way to close findings.

Bulk changes

Each row has a checkbox, and the header checkbox selects the whole page. With rules selected, apply Enable or Disable to all of them at once.

This is the practical way to act on a filter: filter by language or severity, select all, and disable in one step — for example, silencing every Info rule for a language you only vendor.

caution

Bulk selection applies to the currently filtered page. Change the filter or the page before applying, and you act on a different set than you intended. Confirm the filter still reads what you expect before pressing the action.

Creating a custom rule

Press New Custom Rule to open the editor.

New custom rule dialog

Identification

FieldRequiredNotes
Rule IDYesAutomatically prefixed with custom. — you supply the rest, e.g. python.print-detection. Use a stable, descriptive id; it appears on every finding
SeverityYesThe severity findings from this rule receive. This is what your Security Gate thresholds compare against
LanguagesYesWhich languages the rule is evaluated against. Scoping it narrowly keeps scan time down and avoids false matches
MessageYesThe text shown on the finding, e.g. Use of hardcoded credentials. Write it for the developer who will read it in a pull request

Detection logic

A rule matches through patterns. You can combine both mechanisms:

FieldSyntaxUse for
PatternsemgrepStructural matches that understand code, e.g. $X == "hardcoded"
Pattern Regexregular expressionTextual matches, e.g. ^(?!.*password)

Add Pattern appends more patterns to the same rule. Multiple patterns broaden what the rule catches.

tip

Prefer a semgrep pattern over a regex whenever the thing you are matching is code. Semgrep understands syntax, so $X == "secret" matches regardless of whitespace, variable names, or formatting — a regex for the same idea will drift out of date with your codebase.

Metadata

FieldNotes
CWEThe CWE identifier, e.g. CWE-79. Feeds classification and compliance reporting
ReferencesLinks backing the rule — advisories, internal standards, documentation. Add Reference appends more
Short descriptionOne line explaining what the rule looks for

Filling CWE is worth the extra few seconds: it is what lets custom findings appear alongside managed ones in classification views and compliance reports, instead of sitting in an uncategorized bucket.

Press Create to save the rule. It appears in the catalog immediately, marked as a custom rule by the Type filter, and runs on the next scan.

Where a custom rule lives

A custom rule belongs to the configuration you created it in:

  • Created under AST defaults → available to every asset that inherits SAST.
  • Created inside an asset's Scan Config → that asset overrides SAST, and the rule applies to that asset only.

Restoring the catalog

Restore Defaults discards every rule customization for the module you are viewing and returns the catalog to what Conviso ships.

Restore defaults confirmation

caution

Restore discards every enable/disable decision and every custom rule for that module at that level. There is no undo. Before restoring a catalog your team has curated over time, export or record the disabled list — filter by Mode → Disabled to see it.

A practical workflow

  1. Run a scan with the defaults and see what comes back.
  2. Filter the findings that are noise for your codebase, and disable those rules at the company defaults level — noise is rarely specific to one repository.
  3. Where one asset genuinely differs, override SAST in that asset's Scan Config instead of bending the company baseline.
  4. Add custom rules for the patterns your team cares about that no managed rule covers — internal APIs, deprecated helpers, forbidden imports.
  5. Revisit Mode → Disabled periodically so temporary silencing does not become permanent.

Contribute to the Docs

Found something outdated or missing? Help us improve the documentation with a quick suggestion or edit.

How to contribute

Resources

By exploring our content, you'll find resources that will enhance your understanding of the importance of a Security Application Program.

Conviso Blog: Explore our blog, which offers a collection of articles and posts covering a wide range of AppSec topics. The content on the blog is primarily in English.

Conviso's YouTube Channel: Access a wealth of informative videos covering various topics related to AppSec. Please note that the content is primarily in Portuguese.