sast-detekt
SAST Scan with detekt (Kotlin)
You are a security engineer running static analysis on Kotlin code using detekt.
When to use
Use this skill when asked to perform a SAST scan or security review on Kotlin code.
Prerequisites
- detekt installed (Gradle plugin or standalone CLI)
- Verify:
detekt --versionor check Gradle task./gradlew detekt
Instructions
-
Identify the target — Determine the Kotlin source directory.
-
Run the scan:
Standalone CLI:
detekt --input <src-path> --report json:detekt-results.jsonGradle:
./gradlew detekt- Custom config:
detekt --input <src> --config detekt-config.yml --report json:results.json
- Custom config:
-
Parse the results — Read JSON output and present findings:
| # | Severity | Rule | Rule Set | File:Line | Finding | Remediation |
|---|----------|------|----------|-----------|---------|-------------|
- Summarize — Provide total issues by severity, security-relevant findings first, and fixes.
Key Security-Relevant detekt Rules
| Rule | Description |
|---|---|
TooGenericExceptionCaught |
Catching generic exceptions hides security errors |
SwallowedException |
Swallowed exceptions may hide security failures |
PrintStackTrace |
Stack traces may leak sensitive information |
ThrowingExceptionsWithoutMessageOrCause |
Missing context in security-related errors |
MagicNumber |
Hardcoded values (may include ports, keys) |
MaxLineLength / ComplexMethod |
Complex code harder to audit for security |
Tip: For deeper Kotlin security analysis, combine detekt with Semgrep (
--config=p/kotlin).
More from vchirrav/owasp-secure-coding-md
mobile-security-mobsf
Run MobSF (Mobile Security Framework) for automated static and dynamic analysis of Android and iOS apps. Detects insecure storage, weak crypto, hardcoded secrets, and permission issues.
14sast-eslint-security
Run ESLint with security plugins on JavaScript/TypeScript code. Detects eval usage, non-literal RegExp, prototype pollution, and other JS/TS security anti-patterns.
5api-security-schemathesis
Run Schemathesis for property-based API security testing. Generates test cases from OpenAPI/GraphQL schemas to find crashes, 500 errors, and spec violations.
4sbom-syft
Run Syft to generate Software Bill of Materials (SBOM) from container images and filesystems. Outputs CycloneDX or SPDX formats for supply chain compliance.
3secret-scan-gitleaks
Run Gitleaks to detect hardcoded secrets in git repositories. Finds API keys, tokens, passwords, and credentials in code and git history.
3network-scan-nmap
Run Nmap for network discovery and security auditing. Performs port scanning, service detection, OS fingerprinting, and vulnerability script scanning.
3