Scala Scan rules
Contrast Scan supports these rules for Scala.
Severity | Contrast rule | Engine rule ID | Description |
---|---|---|---|
Critical | Too Broad CORS Policy | OPT.SCALA.SECURITY.TooBroadCORSPolicy | TooBroadCORSPolicy: Too much allowed origins in HTML5 Access-Control-Allow-Origin header |
Critical | Too Much Origins Allowed | OPT.SCALA.SECURITY.TooMuchOriginsAllowed | TooMuchOriginsAllowedRule: CORS policy (Cross-origin resource sharing) too broad |
Critical | Code Injection | OPT.SCALA.SECURITY.CodeInjection | CodeInjection: Avoid non-neutralized user-controlled input in dynamic code evaluation |
Critical | Command Injection | OPT.SCALA.SECURITY.CommandInjection | CommandInjection: Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') |
Critical | Connection String Parameter Pollution | OPT.SCALA.SECURITY.ConnectionStringParameterPollution | ConnectionStringParameterPollution: Connection string polluted with untrusted input |
Critical | Cross Site Scripting | OPT.SCALA.SECURITY.CrossSiteScripting | CrossSiteScripting: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') |
Critical | Http Splitting | OPT.SCALA.SECURITY.HttpSplitting | HttpSplitting: Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Response Splitting') |
Critical | JSON Injection | OPT.SCALA.SECURITY.JSONInjection | JSONInjection: Avoid using non-neutralized user-controlled input into JSON entities - JSON Injection |
Critical | Ldap Injection | OPT.SCALA.SECURITY.LdapInjection | LdapInjection: Avoid non-neutralized user-controlled input in LDAP search filters |
Critical | Mail Command Injection | OPT.SCALA.SECURITY.MailCommandInjection | MailCommandInjection: Mail Command Injection |
Critical | No SQL Injection | OPT.SCALA.SECURITY.NoSQLInjection | NoSQLInjection: Improper neutralization of special elements in data query logic (NoSQL injection) |
Critical | Process Control | OPT.SCALA.SECURITY.ProcessControl | ProcessControl: Library loaded from untrusted source |
Critical | Regex Injection | OPT.SCALA.SECURITY.RegexInjection | RegexInjection: Prevent denial of service attack through malicious regular expression ('Regex Injection') |
Critical | Same Origin Method Execution | OPT.SCALA.SECURITY.SameOriginMethodExecution | SameOriginMethodExecution: Same Origin Method Execution (SOME) |
Critical | SQL Injection | OPT.SCALA.SECURITY.SqlInjection | SqlInjection: Avoid SQL code formed with non neutralized user input (vulnerable to SQL Injection attacks) |
Critical | Xml Entity Injection | OPT.SCALA.SECURITY.XmlEntityInjection | XmlEntityInjection: XML entity injection |
Critical | Accessibility Subversion | OPT.SCALA.SECURITY.AccessibilitySubversion | AccessibilitySubversionRule: Java access restriction subverted (Reflection) |
Critical | Anonymous Ldap Bind | OPT.SCALA.SECURITY.AnonymousLdapBind | AnonymousLdapBind: Access Control - Anonymous LDAP Bind |
Critical | Password In Redirect | OPT.SCALA.SECURITY.PasswordInRedirect | PasswordInRedirect: Password Management - Password in Redirect |
Critical | Path Traversal | OPT.SCALA.SECURITY.PathTraversal | PathTraversal: Avoid non-neutralized user-controlled input composed in a pathname to a resource |
Critical | Hardcoded Crypto Key | OPT.SCALA.SECURITY.HardcodedCryptoKey | HardcodedCryptoKey: Hardcoded cryptographic keys |
Critical | Non Random IV With CBC Mode | OPT.SCALA.SECURITY.NonRandomIVWithCBCMode | NonRandomIVWithCBCMode: Not using a Random IV with CBC Mode |
Critical | Weak Cryptographic Hash | OPT.SCALA.SECURITY.WeakCryptographicHash | WeakCryptographicHash: Weak cryptographic hash |
Critical | Weak Encryption | OPT.SCALA.SECURITY.WeakEncryption | WeakEncryption: Weak symmetric encryption algorithm |
High | Akka Security Misconfiguration | OPT.SCALA.SECURITY.AkkaSecurityMisconfiguration | AkkaSecurityMisconfiguration: Security misconfiguration in Akka framework. |
High | Play Security Misconfiguration | OPT.SCALA.SECURITY.PlaySecurityMisconfiguration | PlaySecurityMisconfiguration: Security misconfiguration in Play framework. |
High | Cross Site Request Forgery | OPT.SCALA.SECURITY.CrossSiteRequestForgery | CrossSiteRequestForgery: Cross-site request forgery (CSRF) |
High | External Control Of Configuration Setting | OPT.SCALA.SECURITY.ExternalControlOfConfigurationSetting | ExternalControlOfConfigurationSetting: External Control of System or Configuration Setting |
High | Http Parameter Pollution | OPT.SCALA.SECURITY.HttpParameterPollution | HttpParameterPollution: HTTP parameter pollution (HPP) |
High | Open Redirect | OPT.SCALA.SECURITY.OpenRedirect | OpenRedirect: Do not allow to control the URL used in a redirect by an unvalidated input |
High | Resource Injection | OPT.SCALA.SECURITY.ResourceInjection | ResourceInjection: Improper control of resource identifiers ("Resource Injection") |
High | Server Side Request Forgery | OPT.SCALA.SECURITY.ServerSideRequestForgery | ServerSideRequestForgery: Creation of requests from a vulnerable server using untrusted input (server side request forgery, SSRF) |
High | Trust Boundary Violation | OPT.SCALA.SECURITY.TrustBoundaryViolation | TrustBoundaryViolation: Trust boundary violation |
High | Unsafe Reflection | OPT.SCALA.SECURITY.UnsafeReflection | UnsafeReflection: Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection') |
High | XPath Injection | OPT.SCALA.SECURITY.XPathInjection | XPathInjection: Improper Neutralization of Data within XPath Expressions ('XPath Injection') |
High | Xslt Injection | OPT.SCALA.SECURITY.XsltInjection | XsltInjection: XML Injection (aka Blind XPath Injection) |
High | Hardcoded Ip | OPT.SCALA.SECURITY.HardcodedIp | HardcodedIp: Do not write IP address in source code |
High | Information Exposure Through Error Message | OPT.SCALA.SECURITY.InformationExposureThroughErrorMessage | InformationExposureThroughErrorMessage: Avoid sensitive information exposure through error messages |
High | Cookies In Security Decision | OPT.SCALA.SECURITY.CookiesInSecurityDecision | CookiesInSecurityDecision: Reliance on Cookies without Validation and Integrity Checking in a Security Decision |
High | User Controlled SQL Primary Key | OPT.SCALA.SECURITY.UserControlledSQLPrimaryKey | UserControlledSQLPrimaryKey: Avoid using an user controlled Primary Key into a query |
High | Hardcoded Salt | OPT.SCALA.SECURITY.HardcodedSalt | HardcodedSalt: A hardcoded salt can compromise system security |
High | Inadequate Padding | OPT.SCALA.SECURITY.InadequatePadding | InadequatePadding: Inadequate padding |
High | Insecure Transport | OPT.SCALA.SECURITY.InsecureTransport | InsecureTransport: Insecure transport |
High | Insufficient Key Size | OPT.SCALA.SECURITY.InsufficientKeySize | InsufficientKeySize: Weak cryptography, insufficient key length |
Info | Log Forging | OPT.SCALA.SECURITY.LogForging | LogForging: Improper Output Neutralization for Logs |
Medium | Plaintext Storage In A Cookie Rule | OPT.SCALA.SECURITY.PlaintextStorageInACookieRule | PlaintextStorageInACookieRule: Cleartext Storage of Sensitive Information in a Cookie |
Medium | Unsafe Cookie | OPT.SCALA.SECURITY.UnsafeCookie | UnsafeCookie: Generate server-side cookies with adequate security properties |
Medium | Avoid Host Name Checks | OPT.SCALA.SECURITY.AvoidHostNameChecks | AvoidHostNameChecks: Avoid checks on client-side hostname, that are not reliable due to DNS poisoning |
Medium | Format String Injection | OPT.SCALA.SECURITY.FormatStringInjection | FormatStringInjection: Exclude unsanitized user input from format strings |
Medium | Serialization Injection | OPT.SCALA.SECURITY.SerializationInjection | SerializationInjection: Deserialization of untrusted data |
Medium | Hardcoded Username Password | OPT.SCALA.SECURITY.HardcodedUsernamePassword | HardcodedUsernamePassword: Use of Hard-coded Credentials |
Medium | JSON P Hijacking | OPT.SCALA.SECURITY.JSONPHijacking | JSONPHijacking: Sensitive information exposed through JSONP |
Medium | Password In Configuration File | OPT.SCALA.SECURITY.PasswordInConfigurationFile | PasswordInConfigurationFile: Use of credentials into configuration file |
Medium | Avoid Native Calls | OPT.SCALA.SECURITY.AvoidNativeCalls | AvoidNativeCalls: Avoid calls from Scala to native (JNI) code |
Medium | Plaintext Storage Of Password | OPT.SCALA.SECURITY.PlaintextStorageOfPassword | PlaintextStorageOfPassword: Plaintext Storage of a Password |
Medium | Privacy Violation | OPT.SCALA.SECURITY.PrivacyViolation | PrivacyViolation: Exposure of Private Information ('Privacy Violation') |
Medium | Serializable Class Containing Sensitive Data | OPT.SCALA.SECURITY.SerializableClassContainingSensitiveData | SerializableClassContainingSensitiveData: Serializable Class Containing Sensitive Data |
Medium | Detail Error Leak | OPT.SCALA.SECURITY.DetailErrorLeak | DetailErrorLeakRule: Do not send detail error information to client |
Medium | Execution After Redirect | OPT.SCALA.SECURITY.ExecutionAfterRedirect | ExecutionAfterRedirect: Execution After Redirect (EAR) |
Medium | Potential Infinite Loop | OPT.SCALA.SECURITY.PotentialInfiniteLoop | PotentialInfiniteLoop: Loop with Unreachable Exit Condition ('Infinite Loop') |
Medium | Unchecked Input In Loop Condition | OPT.SCALA.SECURITY.UncheckedInputInLoopCondition | UncheckedInputInLoopCondition: Unchecked input in loop condition |
Medium | Insecure Randomness | OPT.SCALA.SECURITY.InsecureRandomness | InsecureRandomness: Standard pseudo-random number generators cannot withstand cryptographic attacks |