Public scan — anyone with this URL can view this analysis. Sign up to track your own repos privately, run scheduled re-scans, and get AI fix prompts via your dashboard.

fortra/impacket

https://github.com/fortra/impacket · scanned 2026-05-15 16:00 UTC (4 weeks ago) · 10 languages

276 raw signals (32 security + 244 graph) 55th percentile · Python · large (100-500K LoC) System graph score 64 (higher by 13)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 4 weeks ago · v1 · 13 actionable findings from 1 signal source. 8 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.

JSON
Score breakdown â 2026-05-14-v3
Component Sub-score Weight Contribution
structure_score 75.0 0.15 11.25
security_score 79.5 0.25 19.88
testing_score 100.0 0.20 20.00
documentation_score 72.0 0.15 10.80
practices_score 75.0 0.15 11.25
code_quality 43.1 0.10 4.31
Overall 1.00 77.5
Severity distribution — click a segment to filter
Active filters: excluding tests × Reset all
Scan summary Quality grade B+ (78/100). Dimensions: security 80, maintainability 75. 32 findings. 188,093 lines analyzed.

Showing 12 of 13 actionable findings. 21 raw detector signals were grouped into reader-sized issues. Click TP / FP to vote on a finding's accuracy — votes adjust the confidence weighting and improve detection across the platform.

high Security checks security path traversal conf 0.80 [SEC013] Path Traversal — User Input in File Path: User-controlled input used in file path without sanitization. Allows reading arbitrary files.
Use os.path.realpath() and verify the path starts with your expected base directory. Use secure_filename() for uploads.
examples/ticketConverter.py:106
medium Security checks security auth conf 0.92 [AUC001] No Repobility access matrix policy found: The repository uses web/API frameworks but does not define .repobility/access.yml or equivalent authorization documentation.
The repository uses web/API frameworks but does not define .repobility/access.yml or equivalent authorization documentation.
low Security checks quality Error handling conf 1.00 3 occurrences [ERR001] Silent Exception Swallowing: Silently swallowing all exceptions hides bugs. Even in cleanup code, log at DEBUG level.
Log the error: `except Exception: logger.debug('cleanup failed', exc_info=True)`. Or handle specific exception types.
3 files, 3 locations
impacket/smb3.py:712
impacket/smbserver.py:4387
impacket/tds.py:1561
low Security checks security Injection conf 0.50 3 occurrences [SEC005] Command Injection Risk: Unsafe shell execution or eval of user input.
Use subprocess with shell=False and a list of args. Never eval user input.
3 files, 3 locations
examples/mimikatz.py:109
examples/ntfs-read.py:1259
impacket/examples/smbclient.py:98
medium Security checks security Crypto conf 1.00 [SEC014] SSL Verification Disabled: SSL certificate verification is disabled, allowing man-in-the-middle attacks.
Enable SSL verification. Use verify=True (default) for requests. Pin certificates if needed.
impacket/examples/__init__.py:18
medium Security checks security Crypto conf 1.00 [SEC014] SSL Verification Disabled: SSL certificate verification is disabled, allowing man-in-the-middle attacks.
Enable SSL verification. Use verify=True (default) for requests. Pin certificates if needed.
impacket/tds.py:1457
medium Security checks quality Quality Average file size is 560 lines (recommend <300)
Refactor large files by extracting related functions into separate modules. Target files with 300+ lines first. Use the Single Responsibility Principle — each module should have one clear purpose.
medium Security checks cicd CI/CD security conf 0.90 Docker build context has no .dockerignore
Without .dockerignore, build context can include source history, local env files, dependencies, and generated artifacts.
.dockerignore CI/CD securitycontainers
high Security checks cicd CI/CD security conf 0.82 Docker final stage has no non-root USER
Docker images run as root unless the image or Dockerfile switches to a non-root user.
Dockerfile:10 CI/CD securitycontainers
low Security checks quality Quality conf 0.60 4 occurrences Duplicated implementation block across source files
Duplicate implementation blocks are maintenance debt. Keep them visible, but they are not a high-severity defect unless the duplicated logic is security-sensitive or drifting.
4 files, 4 locations
impacket/dcerpc/v5/rprn.py:7
impacket/dcerpc/v5/tsch.py:23
impacket/krb5/keytab.py:80
impacket/mqtt.py:159
duplicationquality
medium Security checks quality Quality conf 0.78 Public web service has no security.txt
security.txt gives researchers and customers a safe disclosure channel. Public web apps and APIs should publish it under /.well-known/security.txt.
.well-known/security.txt
high Security checks cicd CI/CD security conf 0.72 2 occurrences Dockerfile keeps pip download cache
Pip's package cache increases image size and can preserve unnecessary artifacts.
lines 4, 8
Dockerfile:4, 8 (2 hits)
CI/CD securitycontainers
For AI agents: Voting guide (TP/FP) MCP manifest Stdio wrapper SARIF Integrate Findings queue Vote TP/FP on findings to calibrate the engine.
For AI agents + API integrations
Email me when this repo regresses
Free. We re-scan periodically; new criticals → your inbox. No signup required for the scan itself.
API access

This page is publicly accessible at: https://repobility.com/scan/9034f894-6baa-4d67-938c-5b1fd00c9965/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/9034f894-6baa-4d67-938c-5b1fd00c9965/

Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.