PyPI / botocore / 1.43.117

botocore 1.43.117

Source
https://github.com/boto/botocore
Tag scanned
1.43.117
Compared with
1.43.116 (0 signals introduced since)
Files
339 scanned, 3127 skipped (binary, oversized, or unrecognised)
Signals
0 critical · 0 warn · 32 info
Scan time
20.2 s
LLM review
Reviewed by claude-haiku-5-5 (Anthropic): 31 of 31 warn and critical signals; 31 demoted to info.
Disclude version
4.1.0
Scanned (UTC)
2026-10-22 00:59

Signals

Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.

  1. info critical → info by review dynamic-import botocore/vendored/six.py:87:5

    `__import__` called on a non-literal expression (ast pass, confidence 0.70)

        """Import module, returning the module after the last dot."""
        __import__(name)
        return sys.modules[name]
    likely benign LLM, confidence 0.80 Vendored six compatibility helper that dynamically imports a module by name.
    Reasoning

    This is the standard six.py import_module helper, where __import__ on a caller-supplied module name is the documented purpose. Vendored library code, so the dynamic import is legitimate, though it is a generic pattern a scanner would flag.

  2. info critical → info by review frame-introspection botocore/vendored/six.py:728:21

    `sys._getframe` — call-stack frame introspection — file also calls `sys.exit`/`exec`/`eval` (anti-analysis shape) (ast pass, confidence 0.85)

            if _globs_ is None:
                frame = sys._getframe(1)
                _globs_ = frame.f_globals
                if _locs_ is None:
    likely benign LLM, confidence 0.85 Vendored six exec_ shim using sys._getframe to default to the caller's globals.
    Reasoning

    This is the well-known six.exec_ wrapper that reads the caller's frame globals when none are given, a standard compatibility shim. The flagged sys.exit/exec co-occurrence is a generic heuristic match in a vendored utility, not an anti-analysis technique.

  3. info warn → info by review long-line docs/source/_templates/page.html:231:1

    line length 2058 characters (raw pass, confidence 0.65)

                      <path fill="currentColor" d="M39.2,391.3c-4.2,0.6-7.1,4.4-6.5,8.5c0.4,3,2.6,5.5,5.5,6.3 c0,0,18.5,6.1,50,8.7c25.3,2.1,54-1.8,54-1.8c4.2-0.1,7.5-3.6,7.4-7.8c-0.1-4.2-3.6-7.5-7.8-7.4c-0.5,0-1,0.1-1.5,0.2 c0,0-28.1,3.5-50.9,1.6c-30.1-2.4-46.5-7.9-46.5-7.9C41.7,391.3,40.4,391.1,39.2,391.3z M39.2,353.6c-4.
    likely benign LLM, confidence 0.90 Long inline SVG path data in a docs HTML template.
    Reasoning

    The long line is an inline SVG path with numeric coordinate data in a documentation template. It is ordinary vector graphics, not hidden content or obfuscated code.

  4. line length 626 characters (raw pass, confidence 0.50)

                      <path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1
  5. info warn → info by review dynamic-execution scripts/new-change:123:13

    `subprocess.Popen` called with `shell=True` and a literal command (ast pass, confidence 0.70)

            editor = env.get('VISUAL', env.get('EDITOR', 'vim'))
            p = subprocess.Popen(f'{editor} {f.name}', shell=True)
            p.communicate()
            with open(f.name) as f:
    likely benign LLM, confidence 0.85 Developer script launching the user's editor through a shell on a temp file.
    Reasoning

    The script opens the user's configured VISUAL or EDITOR in a temp file via shell=True. The command is built from environment variables, which is a common and expected pattern for launching an editor, and the file path is a temp file the script created. Low risk, though shell=True with an env-derived string is worth noting.

  6. info warn → info by review decoder-decompress-payload tests/functional/test_compress.py:132:23

    file imports decoder module(s) gzip and calls `.decompress()` — embedded payload decompressed at runtime (ast pass, confidence 0.75)

            serialized_body = f"{additional_params}&{serialized_params}"
            actual_body = gzip.decompress(http_stubber.requests[0].body)
            assert serialized_body.encode('utf-8') == actual_body
    likely benign LLM, confidence 0.90 Test decompresses a captured gzip request body to validate its contents.
    Reasoning

    This is a test verifying gzip-compressed request bodies sent by the SDK. Decompressing the captured request body in the test is the expected check, not a hidden payload.

  7. info warn → info by review encoding-base64 tests/functional/test_httpchecksum.py:230:43

    base64-like blob (44 bytes, compression ratio 1.25) (raw pass, confidence 0.60)

                    "x-amz-request-algorithm": "SHA256",
                    "x-amz-checksum-sha256": "ZOyIygCyaOW6GjVnihtTFtIS9PNmskdyMlNKiuyjfzw=",
                },
            ),
    likely benign LLM, confidence 0.95 Base64 SHA256 checksum fixture in an HTTP checksum test.
    Reasoning

    This is a base64-encoded SHA256 checksum value used as a test fixture for an x-amz-checksum header. Checksum strings are expected in AWS SDK test data.

  8. info warn → info by review encoding-base64 tests/functional/test_httpchecksum.py:238:43

    base64-like blob (88 bytes, compression ratio 1.12) (raw pass, confidence 0.60)

                    "x-amz-request-algorithm": "SHA512",
                    "x-amz-checksum-sha512": "t/eDuu2Cl/DbkXRiGE/08I5pwtXl95qUJgD5cl9Yzh8pwYE5v4CwbA//K900c4RS7PQMSIwip+PYDN9vnBwNRw==",
                },
            ),
    likely benign LLM, confidence 0.95 Base64 SHA512 checksum fixture in an HTTP checksum test.
    Reasoning

    This is a base64-encoded SHA512 checksum value used as a test fixture for an x-amz-checksum header, consistent with the surrounding test cases.

  9. info warn → info by review encoding-base64 tests/functional/test_httpchecksum.py:357:43

    base64-like blob (44 bytes, compression ratio 1.25) (raw pass, confidence 0.60)

                {
                    "x-amz-checksum-sha256": "ZOyIygCyaOW6GjVnihtTFtIS9PNmskdyMlNKiuyjfzw="
                },
            ),
    likely benign LLM, confidence 0.95 Base64 SHA256 checksum fixture in an HTTP checksum test.
    Reasoning

    Repeated SHA256 checksum fixture value in a test parametrization, expected test data.

  10. info warn → info by review encoding-base64 tests/functional/test_httpchecksum.py:369:43

    base64-like blob (88 bytes, compression ratio 1.12) (raw pass, confidence 0.60)

                {
                    "x-amz-checksum-sha512": "t/eDuu2Cl/DbkXRiGE/08I5pwtXl95qUJgD5cl9Yzh8pwYE5v4CwbA//K900c4RS7PQMSIwip+PYDN9vnBwNRw=="
                },
            ),
    likely benign LLM, confidence 0.95 Base64 SHA512 checksum fixture in an HTTP checksum test.
    Reasoning

    Repeated SHA512 checksum fixture value in a test parametrization, expected test data.

  11. info warn → info by review encoding-base64 tests/functional/test_httpchecksum.py:478:43

    base64-like blob (44 bytes, compression ratio 1.25) (raw pass, confidence 0.60)

                {
                    "x-amz-checksum-sha256": "ZOyIygCyaOW6GjVnihtTFtIS9PNmskdyMlNKiuyjfzw="
                },
            ),
    likely benign LLM, confidence 0.95 Base64 SHA256 checksum fixture in an HTTP checksum test.
    Reasoning

    Repeated SHA256 checksum fixture value in a test parametrization, expected test data.

  12. info warn → info by review encoding-base64 tests/functional/test_httpchecksum.py:485:43

    base64-like blob (88 bytes, compression ratio 1.12) (raw pass, confidence 0.60)

                {
                    "x-amz-checksum-sha512": "t/eDuu2Cl/DbkXRiGE/08I5pwtXl95qUJgD5cl9Yzh8pwYE5v4CwbA//K900c4RS7PQMSIwip+PYDN9vnBwNRw=="
                },
            ),
    likely benign LLM, confidence 0.95 Base64 SHA512 checksum fixture in an HTTP checksum test.
    Reasoning

    Repeated SHA512 checksum fixture value in a test parametrization, expected test data.

  13. info warn → info by review encoding-base64 tests/functional/test_httpchecksum.py:594:14

    base64-like blob (44 bytes, compression ratio 1.25) (raw pass, confidence 0.60)

                {"x-amz-checksum-sha256": "bm90LWEtY2hlY2tzdW0="},
                "ZOyIygCyaOW6GjVnihtTFtIS9PNmskdyMlNKiuyjfzw=",
            ),
            (
    likely benign LLM, confidence 0.95 Base64 SHA256 checksum fixture in a checksum validation test case.
    Reasoning

    Base64 SHA256 checksum fixture alongside a plain-text test value 'bm90LWEtY2hlY2tzdW0=' (not-a-checksum), consistent with test parametrization of checksum validation.

  14. info warn → info by review encoding-base64 tests/functional/test_httpchecksum.py:600:14

    base64-like blob (88 bytes, compression ratio 1.12) (raw pass, confidence 0.60)

                {"x-amz-checksum-sha512": "bm90LWEtY2hlY2tzdW0="},
                "t/eDuu2Cl/DbkXRiGE/08I5pwtXl95qUJgD5cl9Yzh8pwYE5v4CwbA//K900c4RS7PQMSIwip+PYDN9vnBwNRw==",
            ),
        ]
    likely benign LLM, confidence 0.95 Base64 SHA512 checksum fixture in a checksum validation test case.
    Reasoning

    Base64 SHA512 checksum fixture in a checksum validation test case, matching the surrounding test data.

  15. info warn → info by review encoding-base64 tests/unit/auth/aws4_testsuite/post-sts-token/readme.txt:15:1

    base64-like blob (336 bytes, compression ratio 0.85) (raw pass, confidence 0.60)

    AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabI
    likely benign LLM, confidence 0.97 Base64-like AWS STS session token sample from a SigV4 test suite readme.
    Reasoning

    The blob is the AWS SigV4 test-suite example session token (the EXAMPLE string is embedded), a documented public test vector in a readme, not a payload.

  16. info warn → info by review encoding-base64 tests/unit/auth/test_signers.py:217:32

    base64-like blob (44 bytes, compression ratio 1.25) (raw pass, confidence 0.60)

                result,
                ('Foo=%E2%9C%93', 'VCtWuwaOL0yMffAT8W4y0AFW3W4KUykBqah9S40rB+Q='),
            )
    likely benign LLM, confidence 0.97 Expected base64 HMAC signature constant in signer unit test.
    Reasoning

    Base64 HMAC signature expected value in a unit test asserting signer output; standard test fixture.

  17. info warn → info by review encoding-base64 tests/unit/auth/test_signers.py:231:14

    base64-like blob (44 bytes, compression ratio 1.25) (raw pass, confidence 0.60)

                request.data['Signature'],
                'Tiecw+t51tok4dTT8B4bg47zxHEM/KcD55f2/x6K22o=',
            )
            self.assertEqual(request.data['SignatureMethod'], 'HmacSHA256')
    likely benign LLM, confidence 0.97 Expected HMAC signature string in a signer unit test assertion.
    Reasoning

    Expected signature value compared with assertEqual in a signer test; ordinary test data.

  18. info warn → info by review encoding-base64 tests/unit/auth/test_signers.py:243:27

    base64-like blob (44 bytes, compression ratio 1.25) (raw pass, confidence 0.60)

                'Foo': '\u2713',
                'Signature': 'VCtWuwaOL0yMffAT8W4y0AFW3W4KUykBqah9S40rB+Q=',
            }
            result = self.signer.calc_signature(request, params)
    likely benign LLM, confidence 0.97 Signature fixture value in a signer unit test.
    Reasoning

    Signature fixture in a test dict for calc_signature; ordinary test data.

  19. info warn → info by review encoding-base64 tests/unit/auth/test_signers.py:248:32

    base64-like blob (44 bytes, compression ratio 1.25) (raw pass, confidence 0.60)

                result,
                ('Foo=%E2%9C%93', 'VCtWuwaOL0yMffAT8W4y0AFW3W4KUykBqah9S40rB+Q='),
            )
    likely benign LLM, confidence 0.97 Expected signature tuple value in a signer unit test.
    Reasoning

    Expected signature tuple in a signer test; benign fixture.

  20. info warn → info by review encoding-base64 tests/unit/auth/test_signers.py:262:14

    base64-like blob (44 bytes, compression ratio 1.25) (raw pass, confidence 0.60)

                request.params['Signature'],
                'Un97klqZCONP65bA1+Iv4H3AcB2I40I4DBvw5ZERFPw=',
            )
            self.assertEqual(request.params['SignatureMethod'], 'HmacSHA256')
    likely benign LLM, confidence 0.97 Expected HMAC signature assertion value in a signer test.
    Reasoning

    Expected signature in an assertion within a signer test; benign.

  21. info warn → info by review encoding-base64 tests/unit/auth/test_signers.py:294:18

    base64-like blob (54 bytes, compression ratio 1.20) (raw pass, confidence 0.60)

                    'AWS3-HTTPS AWSAccessKeyId=access_key,Algorithm=HmacSHA256,'
                    'Signature=M245fo86nVKI8rLpH4HgWs841sBTUKuwciiTpjMDgPs='
                ),
            )
    likely benign LLM, confidence 0.96 Signature value in an expected auth header in a signer test.
    Reasoning

    Expected Signature value embedded in an Authorization header string in a test; benign.

  22. info warn → info by review encoding-base64 tests/unit/test_auth_bearer.py:30:19

    base64-like blob (48 bytes, compression ratio 1.23) (raw pass, confidence 0.60)

            "headers": {},
            "token": "eW91J3JlIG5vdCBzdXBwb3NlZCB0byBkZWNvZGUgdGhpcyE=",
            "expectedHeaders": {
                "Authorization": "Bearer eW91J3JlIG5vdCBzdXBwb3NlZCB0byBkZWNvZGUgdGhpcyE="
    likely benign LLM, confidence 0.97 Base64 bearer token test value with a joking plaintext.
    Reasoning

    The decoded text 'you're not supposed to decode this!' is a deliberate test string for bearer token handling; the blob is test data, not hidden payload.

  23. info warn → info by review encoding-base64 tests/unit/test_auth_bearer.py:32:38

    base64-like blob (48 bytes, compression ratio 1.23) (raw pass, confidence 0.60)

            "expectedHeaders": {
                "Authorization": "Bearer eW91J3JlIG5vdCBzdXBwb3NlZCB0byBkZWNvZGUgdGhpcyE="
            },
        },
    likely benign LLM, confidence 0.96 Expected Authorization header bearer token in a test.
    Reasoning

    Same bearer token test fixture repeated in expectedHeaders; benign test data.

  24. info warn → info by review payload-bytes-literal tests/unit/test_compress.py:62:5

    concatenated bytes literal contains 75 `\xNN` escapes (88% of content) — binary payload shape (ast pass, confidence 0.85)

    REQUEST_BODY_COMPRESSED = (
        b'\x1f\x8b\x08\x00\x01\x00\x00\x00\x02\xffsL.\xc9\xcc\xcf\xb3\r(-\xf1M-)'
        b'\xcaLvI,IT\x0bK-*\x06\x89\x1a\x19\x18\x1a\xe8\x1aX\xe8\x1a\x18\xaa\xf9%'
        b'\xe6\xa6\x16\x17$&\xa7\xda\xc2Yj\x08\x1dz\xb9\xa9\xb9I\xa9Ez\x86z\x101\x90'
    likely benign LLM, confidence 0.93 Gzip-compressed request body bytes literal in a compression unit test.
    Reasoning

    A gzip byte stream literal used as a compressed request body fixture in a compression test; binary test data is expected here.

  25. info warn → info by review payload-bytes-literal tests/unit/test_eventstream.py:149:9

    concatenated bytes literal contains 63 `\xNN` escapes (88% of content) — binary payload shape (ast pass, confidence 0.85)

        (
            b"\x00\x00\x00\x62\x00\x00\x00\x52\x03\xb5\xcb\x9c"
            b"\x010\x00\x011\x01\x012\x02\x02\x013\x03\x00\x03"
            b"\x014\x04\x00\x00\x00\x04\x015\x05\x00\x00\x00\x00\x00\x00\x00\x05"
    likely benign LLM, confidence 0.93 Eventstream binary header bytes literal in a unit test.
    Reasoning

    Binary eventstream header encoding bytes in a protocol parser test; expected for this format.

  26. info warn → info by review payload-bytes-literal tests/unit/test_eventstream.py:364:9

    concatenated bytes literal contains 47 `\xNN` escapes (84% of content) — binary payload shape (ast pass, confidence 0.85)

        headers_data = (
            b"\x010\x00\x011\x01\x012\x02\x02\x013\x03\x00\x03"
            b"\x014\x04\x00\x00\x00\x04\x015\x05\x00\x00\x00\x00\x00\x00\x00\x05"
            b"\x016\x06\x00\x05bytes\x017\x07\x00\x04utf8"
    likely benign LLM, confidence 0.93 Eventstream header bytes fixture in a unit test.
    Reasoning

    Binary eventstream header fixture data for parser tests; expected for the protocol.

  27. info warn → info by review encoding-base64 tests/unit/test_httpchecksum.py:828:23

    base64-like blob (44 bytes, compression ratio 1.25) (raw pass, confidence 0.60)

        (Sha1Checksum, "Kq5sNclPz7QV2+lfQIuc6R7oRu0="),
        (Sha256Checksum, "uU0nuZNNPgilLlLX2n2r+sSE7+N6U4DukIj3rOLvzek="),
        (
            Sha512Checksum,
    likely benign LLM, confidence 0.96 Expected base64 checksum digest values in a checksum test.
    Reasoning

    Expected base64 checksum digests for SHA1/SHA256 in a checksum test table; standard fixture.

  28. info warn → info by review encoding-base64 tests/unit/test_httpchecksum.py:831:10

    base64-like blob (88 bytes, compression ratio 1.12) (raw pass, confidence 0.60)

            Sha512Checksum,
            "MJ7MSJwS1utMxA9QyQLytNDtd+5RGnx6m808qG1M2G+YndNbxf9JlnDaNCVbRbDP2DDoH2Bdz33FVC6TrpzXbw==",
        ),
    ]
    likely benign LLM, confidence 0.96 Expected base64 SHA512 checksum value in a checksum test.
    Reasoning

    Expected base64 SHA512 checksum value in the same checksum test table; benign fixture.

  29. info warn → info by review encoding-base64 tests/unit/test_paginate.py:40:14

    base64-like blob (64 bytes, compression ratio 1.17) (raw pass, confidence 0.60)

            token = (
                'eyJib3RvX2VuY29kZWRfa2V5cyI6IFtbImZvbyJdXSwgImZvbyI6ICJZbUZ5In0='
            )
            expected = {'foo': b'bar'}
    likely benign LLM, confidence 0.93 Base64-encoded pagination token used as test input in a paginator unit test.
    Reasoning

    Raw-pass base64 signal in a unit test. The blob decodes to JSON resembling a pagination token ({"boto_encoded_keys": [["foo"]], "foo": "YmFy"}), and the test asserts the decoded value is {'foo': b'bar'}. This is a deliberate test fixture for a pagination round-trip, not a hidden payload.

  30. info warn → info by review encoding-base64 tests/unit/test_paginate.py:55:14

    base64-like blob (64 bytes, compression ratio 1.17) (raw pass, confidence 0.60)

            token = (
                'eyJib3RvX2VuY29kZWRfa2V5cyI6IFtbImZvbyIsICJiYXIiLCAxXV0sICJmb28i'
                'OiB7ImJhciI6IFsiYmF6IiwgIlltbHUiXX19'
            )
    likely benign LLM, confidence 0.93 Split base64 pagination token fixture in a paginator test.
    Reasoning

    The string is a multi-part base64 pagination token that decodes to structured JSON with nested keys and values. It sits in a test file alongside expected decoded values, which is the normal way to test token parsing. The raw-pass base64 heuristic fires on the length and shape alone.

  31. info warn → info by review encoding-base64 tests/unit/test_paginate.py:63:14

    base64-like blob (64 bytes, compression ratio 1.17) (raw pass, confidence 0.60)

            token = (
                'eyJib3RvX2VuY29kZWRfa2V5cyI6IFtbImZvbyIsICJiaW4iXSwgWyJmb28iLCAi'
                'YmFyIl1dLCAiZm9vIjogeyJiaW4iOiAiWW1GdCIsICJiYXIiOiAiWW1GNiJ9fQ=='
            )
    likely benign LLM, confidence 0.93 Multi-line base64 pagination token fixture for a paginator test.
    Reasoning

    Concatenated base64 literal that decodes to a JSON pagination token with nested lists and dicts. The test's expected value is built from the same content. No execution, no dropper pipeline, and no obfuscated identifiers are present, so this is a test fixture.

  32. info warn → info by review encoding-base64 tests/unit/test_paginate.py:64:14

    base64-like blob (64 bytes, compression ratio 1.17) (raw pass, confidence 0.60)

                'eyJib3RvX2VuY29kZWRfa2V5cyI6IFtbImZvbyIsICJiaW4iXSwgWyJmb28iLCAi'
                'YmFyIl1dLCAiZm9vIjogeyJiaW4iOiAiWW1GdCIsICJiYXIiOiAiWW1GNiJ9fQ=='
            )
            expected = {'foo': {'bar': b'baz', 'bin': b'bam'}}
    likely benign LLM, confidence 0.93 Continuation of a base64 pagination token fixture in a paginator test.
    Reasoning

    Continuation of the same multi-line base64 pagination token fixture, with the expected decoded structure asserted on the following line. The content is benign test data that the raw-pass heuristic flags only because it looks like base64.

Reproduce This Scan

Run disclude locally to verify. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.

cargo install disclude --version 4.1.0
git clone https://github.com/boto/botocore botocore && cd botocore
git checkout 1.43.117
disclude scan --severity info --diff 1.43.116 .