ending
ending – SQL injection framework.
Submodules:
ending.ast: SQL AST nodes and types. Build DBMS-agnostic SQL expressions using composable Python objects (Query, Identifier, Value, Substring, ...).ending.db: DBMS-specific implementations. Each sub-package (mysql, postgresql, mssql, oracle, sqlite) provides a Compiler (AST → SQL strings), Injection Methods (UNION, blind, error-based, time-based), and a Mapper (schema discovery).ending.cli: Command-line interface. Defines the Design base class that users subclass to describe their target, and exposes the entry-point commands (configure, map, query, ...).ending.configuration: Automatic injection setup. Probes the target to detect quoting syntax, fingerprint the DBMS, and select the best injection method.ending.validation: Runtime sanity checks. Verifies that a Design, its injection method, and user-supplied queries actually work on the target.ending.struct: Shared data structures: result sets, injection state/metadata, and serialisable objects used across the framework.ending.util: Utility helpers: logging, quoting functions, random identifier generation, HTTP session wrappers, and type aliases.ending.exception: Framework-wide exception hierarchy (InjectionError, CompilationError, NodeTypeError, ...).