Check the report below, then download or share it. Download PDF Open PDF Back to results

MalDet · Static Security Report

simplecov

github.com/simplecov-ruby/simplecov
Scanned 30 October 2026 at 07:19  ·  Report generated 30 October 2026  ·  Ruby  ·  4,926 stars
Overall assessment
High
Combined score 127  ·  51 findings after filtering

Summary

51 findings likely need attention. Most notable: Detected controller which does not enable cross-site request forgery protections using ... (100% confidence).

Generated from finding counts. A plain-English summary was not available for this scan.

Risk, by type

MalDet scores two different questions separately, because they call for different responses: code can be badly written without being hostile, and hostile code is not always badly written.

Vulnerability
High (125)
Insecure coding an attacker could exploit. Usually mistakes, and usually fixable in place.
Malicious pattern
Low (2)
Signs the code may be trying to do harm: hidden payloads, credential access, persistence, exfiltration.

What each detector found

DetectorLooks for HighMediumLowTotal
semgrep Insecure coding patterns across many languages 5 44 0 49
guarddog Malicious package and install-time behaviour 0 0 2 2

51 of 51 findings were rated more likely genuine than noise by the classifier.

Evidence

Identical findings are grouped, so a single rule firing many times takes one row. Ordered worst first. “Seen” is how many times that finding occurred.

SeverityDetectorFindingSeenExample location
high semgrep Detected controller which does not enable cross-site request forgery protections using 'protect_from_forgery'. Add 'protect_from_forgery :with => :exception' to your controller class. 1 /test_projects/rails/rspec_rails/app/controllers/application_controller.rb:1
high semgrep This GitHub Actions workflow file uses `pull_request_target` and checks out code from the incoming pull request. When using `pull_request_target`, the Action runs in the context of the target repository, which includes access to all repository secrets. Normally, this is safe because the Action only 1 /.github/workflows/dependabot_assets.yml:38
high semgrep Using variable interpolation `${{...}}` with `github` context data in a `run:` step could allow an attacker to inject their own code into the runner. This would allow them to steal secrets and code. `github` context data can have arbitrary user input and should be treated as untrusted. Instead, use 3 /.github/workflows/push_gem.yml:68
medium semgrep Detected non-static command inside system. Audit the input to 'system'. If unverified user data can reach this call site, this is a code injection vulnerability. A malicious actor can inject a malicious script to execute arbitrary code. 3 /lib/simplecov/cli/open.rb:20
medium semgrep Detected non-static command inside Open3.capture3. Audit the input to 'Open3.capture3'. If unverified user data can reach this call site, this is a code injection vulnerability. A malicious actor can inject a malicious script to execute arbitrary code. 2 /spec/assets_spec.rb:75
medium semgrep Detected non-static command inside spawn. Audit the input to 'spawn'. If unverified user data can reach this call site, this is a code injection vulnerability. A malicious actor can inject a malicious script to execute arbitrary code. 2 /lib/simplecov/cli/watch.rb:55
medium semgrep Detected non-static command inside Open3.popen2e. Audit the input to 'Open3.popen2e'. If unverified user data can reach this call site, this is a code injection vulnerability. A malicious actor can inject a malicious script to execute arbitrary code. 1 /spec/support/sandbox_project.rb:65
medium semgrep Should not use SHA1 to generate hashes. There is a proven SHA1 hash collision by Google, which could lead to vulnerabilities. Use SHA256, SHA3 or other hashing functions instead. 2 /spec/sandbox/file_id_collisions_spec.rb:46
medium semgrep Detected an element with disabled HTML escaping. If external data can reach this, this is a cross-site scripting (XSS) vulnerability. Ensure no external data can reach here, or remove 'escape=false' from this element. 1 /lib/simplecov/formatter/html_formatter/public/index.html:69
medium semgrep Found that the setting for providing detailed exception reports in Rails is set to true. This can lead to information exposure, where sensitive system or internal information is displayed to the end user. Instead, turn this setting off. 4 /test_projects/rails/view_demo/config/environments/test.rb:11
medium semgrep Detected non-static command inside `...`. If unverified user data can reach this call site, this is a code injection vulnerability. A malicious actor can inject a malicious script to execute arbitrary code. 2 /benchmarks/report_scale.rb:61
medium semgrep GitHub Actions step uses a mutable tag or branch reference. Tags and branch names can be silently repointed by the action owner, enabling supply-chain attacks — as seen in the trivy-action and kics-github-action compromises. Pin the reference to a full 40-character commit SHA instead, e.g. `uses: ac 27 /.github/workflows/typecheck.yml:21
low guarddog Detects access to sensitive files (credentials, configs, keys) [threat-filesystem-read] 2 /spec/simple_cov/cli_spec.rb:9047

How to read this report