MalDet · Static Security Report
This repository has been flagged as having a medium vulnerability risk score of 28.0, which indicates that the code contains several insecure coding patterns an attacker could potentially exploit. While the overall malicious-pattern risk is low at 9.0, suggesting the code isn't intentionally harmful, there are specific issues that look more like ordinary mistakes than deliberate attacks. The scan found multiple instances of weak cryptographic hashes like SHA1 and MD5, which are outdated and should not be used for security purposes. Additionally, several lines of code appear to contain hardcoded passwords or sensitive tokens such as AWS credentials, which is a common error in production software rather than proof of malicious intent. There are also two high-severity YARA rules that detected the execution of encoded payloads and downloads followed by execution, but these were identified with very low confidence scores, meaning they likely represent false positives from test fixtures or scripts rather than active threats.
Written by a language model running locally on the scanning machine, from the findings in this report. The risk levels above and below were decided by the scoring model, not by this summary.
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.
| Detector | Looks for | High | Medium | Low | Total |
|---|---|---|---|---|---|
| bandit | Insecure coding patterns in Python source | 0 | 8 | 42 | 50 |
| yara | Signatures of malicious behaviour in source files | 3 | 0 | 8 | 11 |
| guarddog | Malicious package and install-time behaviour | 0 | 3 | 0 | 3 |
21 of 64 findings were rated more likely genuine than noise by the classifier.
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.
| Severity | Detector | Finding | Seen | Example location |
|---|---|---|---|---|
| high | yara | YARA rule matched: detect_base64_exec — Encoded payload decoded and then executed | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/credentials.py |
| high | yara | YARA rule matched: detect_download_and_execute — Downloads a remote resource AND executes it - the actually dangerous combination, not just downloading alone | 2 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/vendored/six.py |
| medium | guarddog | Detects access to sensitive files (credentials, configs, keys) [threat-filesystem-read] | 3 | /internal/provider/framework/provider.go:155 |
| medium | bandit | Use of weak SHA1 hash for security. Consider usedforsecurity=False | 4 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/credentials.py:847 |
| medium | bandit | Use of weak MD5 hash for security. Consider usedforsecurity=False | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/compat.py:162 |
| medium | bandit | Audit url open for permitted schemes. Allowing use of file:/ or custom schemes is often unexpected. | 1 | /internal/service/sns/test-fixtures/lambda_confirm_sns_extracted/main.py:24 |
| medium | bandit | Use of exec detected. | 2 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/six.py:740 |
| low | bandit | Possible hardcoded password: 'aws_secret_access_key' | 3 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/credentials.py:1426 |
| low | bandit | Possible hardcoded password: 'AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/credentials.py:2074 |
| low | bandit | Possible hardcoded password: 'colon' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/jmespath/parser.py:234 |
| low | bandit | Possible hardcoded password: '21600' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/utils.py:398 |
| low | bandit | Possible hardcoded password: 'number' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/jmespath/parser.py:240 |
| low | bandit | Possible hardcoded password: 'rbracket' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/jmespath/parser.py:233 |
| low | bandit | Possible hardcoded password: ' ' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/dateutil/parser/_parser.py:122 |
| low | bandit | Possible hardcoded password: 'h' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/useragent.py:83 |
| low | bandit | Possible hardcoded password: 'q' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/useragent.py:89 |
| low | bandit | Possible hardcoded password: 'AWSSecretKey' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/credentials.py:1334 |
| low | bandit | Possible hardcoded password: 'AWS_CONTAINER_AUTHORIZATION_TOKEN' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/credentials.py:2073 |
| low | bandit | Possible hardcoded password: 'AWS_WEB_IDENTITY_TOKEN_FILE' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/credentials.py:1883 |
| low | bandit | Possible hardcoded password: 'AWS_SECRET_ACCESS_KEY' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/credentials.py:1189 |
| low | bandit | Possible hardcoded password: 'latest/api/token' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/utils.py:397 |
| low | bandit | Using ElementTree to parse untrusted XML data is known to be vulnerable to XML attacks. Replace ElementTree with the equivalent defusedxml package, or make sure defusedxml.defuse_stdlib() is called. | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/serialize.py:49 |
| low | bandit | Using xml.etree.ElementTree to parse untrusted XML data is known to be vulnerable to XML attacks. Replace xml.etree.ElementTree with the equivalent defusedxml package, or make sure defusedxml.defuse_stdlib() is called. | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/compat.py:87 |
| low | bandit | Possible hardcoded password: 'None' | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/botocore/paginate.py:389 |
| low | bandit | Consider possible security implications associated with the subprocess module. | 2 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/dateutil/zoneinfo/rebuild.py:6 |
| low | bandit | Starting a process with a partial executable path | 1 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/dateutil/zoneinfo/rebuild.py:52 |
| low | bandit | subprocess call - check for execution of untrusted input. | 2 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/dateutil/zoneinfo/rebuild.py:62 |
| low | yara | YARA rule matched: detect_downloader — Downloads a remote resource - common and low-signal alone; see detect_download_and_execute for the composite version | 8 | /.teamcity/scripts/pullrequest_tests/install_gh_cli.sh |
| low | bandit | Use of assert detected. The enclosed code will be removed when compiling to optimised byte code. | 18 | /internal/service/bedrockagentcore/test-fixtures/mcp_lambda_extracted/urllib3/util/ssltransport.py:160 |