appscan-rules.schema.json
Specify custom rules according to the following guidelines.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://cloud.appscan.com/appscan.rules.schema.json",
"title": "AppScan Custom Rules",
"description": "Custom rules to be applied to a scan.",
"type": "object",
"additionalProperties": false,
"properties": {
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"description": "The human readable description of the vulnerability",
"type": "string",
"minLength": 1,
"maxLength": 60
},
"vulnerability": {
"description": "The vulnerability type.",
"type": "string",
"enum": [
"AccessControl_InsecureFilePermissions",
"Authentication_Credentials_Cookies",
"Authentication_Credentials_Unprotected_Transport",
"Authentication_Credentials_Unprotected",
"Authentication_Credentials_Weak",
"Authentication_Entity",
"BufferOverflow_ArrayIndexOutOfBounds",
"BufferOverflow_BufferSizeOutOfBounds",
"BufferOverflow_FormatString",
"BufferOverflow_IntegerOverflow",
"BufferOverflow_Internal",
"BufferOverflow",
"Communications_InsecureIntent",
"Communications_SSL",
"Communications_Unencrypted",
"Concurrency_Singleton",
"Configuration",
"ContentSpoofing",
"CrossApplicationScripting",
"CrossSiteRequestForgery",
"CrossSiteScripting_Reflected",
"CrossSiteScripting_Stored",
"CrossSiteScripting",
"Cryptography_InsecureAlgorithm",
"Cryptography_NonStandard",
"Cryptography_PoorEntropy",
"Cryptography",
"ErrorHandling_RevealDetails_Message",
"ErrorHandling_RevealDetails_StackTrace",
"FileUpload",
"Format_String_Attacks",
"Injection_AndroidFragment",
"Injection_Aspect",
"Injection_DBConnectionString",
"Injection_File",
"Injection_HttpRequestSplitting",
"Injection_HttpResponseSplitting",
"Injection_LDAP",
"Injection_Mail",
"Injection_NoSQL",
"Injection_OS",
"Injection_PDFForm",
"Injection_Predicate",
"Injection_RegEx",
"Injection_SecondOrder",
"Injection_SQL",
"Injection_XML",
"Injection_XPath",
"Injection_XSLT",
"Injection_XXE",
"Injection",
"InputValidation_UnlimitedSize",
"Integrity",
"JSON_Hijacking",
"Malicious_DynamicCode_Construction",
"Native_Unsafe",
"PathTraversal",
"Phishing_Email",
"Privacy_DataLeakage",
"Privacy",
"PrivilegeEscalation",
"PrototypePollution",
"SessionManagement_Cookies",
"SessionManagement_Timeout_Absolute",
"SSRF",
"Validation_ClientOnly",
"Validation_EncodingRequired_Struts",
"Validation_EncodingRequired",
"Validation_Required_BusinessLogic",
"Validation_Required_DBConnectionStringManipulation",
"Validation_Required_HiddenFields",
"Validation_Required_URL_Domain",
"Validation_Required_URL_Port",
"Validation_Required_URL_Redirect",
"Validation_Required_URL",
"Validation_Required_WriteToSocket",
"Validation_Required_WriteToStream",
"Validation_Required"
]
},
"severity": {
"description": "The severity of the issue(s) found by this rule.",
"type": "string",
"enum": [
"Critical",
"High",
"Medium",
"Low",
"Info"
]
},
"pattern": {
"description": "The regular expression to match against.",
"type": "string",
"minLength": 1,
"maxLength": 60
},
"languages": {
"description": "The programming language(s) this rule applies to. Use 'All' to indicate all languages.",
"type": "array",
"items": {
"type": "string",
"enum": [
"All",
"ABAP",
"Apex",
"Asp",
"ASP.NET",
"C",
"Cobol",
"ColdFusion",
"C#",
"CSS",
"Dart",
"ESQL",
"Golang",
"Groovy",
"Html",
"IaC",
"Java",
"JavaScript",
"Kotlin",
"Objective-C",
"Perl",
"PHP",
"PLSQL",
"Python",
"Rpg",
"Ruby",
"Rust",
"Scala",
"Secrets",
"Swift",
"TSQL",
"TypeScript",
"VB.NET",
"Xamarin"
]
},
"uniqueItems": true,
"minItems": 1
}
},
"required": [
"description",
"vulnerability",
"severity",
"pattern",
"languages"
],
"additionalProperties": false
},
"uniqueItems": true,
"minItems": 1
}
}
}