How 4steroth/terasploit works
Terasploit is a Python red-team exploitation framework. Its product workflow is to enter through the console, select and configure a module, run an exploit or auxiliary check against a target, and use payloads or sessions for follow-on work. The tree also shows payload staging, encoding, NOP generation, and post-exploitation as distinct capabilities. The README documents the framework’s purpose but not internal wiring; dashed, uncited edges indicate likely workflow relationships that the excerpts do not establish. Unread module families are represented by their existing directories.
Main entry points: console Interactive console · http HTTP exploits · encoder.py Encoder lifecycle · ms17_010_eternalblue.py EternalBlue exploit
Components 26
Console and configuration
- Interactive console
teralibs/terasploit/framework/console - Module discovery
teralibs/terasploit/framework/modules/module_storage.py - Option storage
teralibs/terasploit/framework/options/storage.py
Security modules
- HTTP exploits
modules/exploit/multi/http - EternalBlue exploit
modules/exploit/windows/smb/ms17_010_eternalblue.py - SMB scanner
modules/auxiliary/scanner/smb/smb_ms17_010_doublepulsar.py - Session handler
modules/exploit/multi/handler.py - Post-exploitation
modules/post
Payload and encoding
- Payload modules
modules/payload - Payload base
teralibs/tsf/base/payload.py - Payload assembly
teralibs/terasploit/framework/payload/assembler.py - Encoder modules
modules/encoder - Encoder lifecycle
teralibs/tsf/base/encoder.py - Encoder factory
teralibs/terasploit/framework/encoder/factory.py - Bad-character rules
teralibs/terasploit/framework/payload/badchars.py - NOP modules
modules/nop
Network transport
- HTTP exploit client
teralibs/tsf/core/exploit/remote/http_client.py - HTTP socket client
teralibs/tsf/pex/proto/http/client.py - HTTP request builder
teralibs/tsf/pex/proto/http/client_request.py - SMB client
teralibs/tsf/pex/proto/smb/client.py
Framework runtime
- Module base
teralibs/tsf/core/module/base.py - Exploit API
teralibs/tsf/base/exploit.py - Session management
teralibs/terasploit/framework/exploit/session.py - Worker and output
teralibs/terasploit/framework/thread/handler.py
Other components
- Operator
- Target system
Connections 22
- Operator → Interactive console: uses
- Interactive console → Module discovery: discovers modules
- Interactive console → Option storage: sets options
- Interactive console → Worker and output: dispatches work
- HTTP exploits → Exploit API: extends
modules/exploit/multi/http/cpanel_whm_auth_bypass_rce.py - EternalBlue exploit → Exploit API: extends
modules/exploit/windows/smb/ms17_010_eternalblue.py - SMB scanner → SMB client: uses
modules/auxiliary/scanner/smb/smb_ms17_010_doublepulsar.py - HTTP exploits → HTTP exploit client: sends requests
modules/exploit/multi/http/cpanel_whm_auth_bypass_rce.py - HTTP exploit client → HTTP socket client: creates client
teralibs/tsf/core/exploit/remote/http_client.py - HTTP socket client → HTTP request builder: builds requests
teralibs/tsf/pex/proto/http/client.py - EternalBlue exploit → Target system: tests target
- HTTP exploits → Target system: attacks target
- SMB scanner → Target system: scans target
- Payload modules → Payload base: extends
modules/payload/stages/php/shell.py - Payload base → Payload assembly: assembled by
- Encoder modules → Encoder lifecycle: extends
modules/encoder/x64/xor_dynamic.py - Encoder factory → Encoder lifecycle: loads encoders
teralibs/terasploit/framework/encoder/factory.py - Encoder factory → Bad-character rules: uses rules
teralibs/terasploit/framework/encoder/factory.py - Encoder lifecycle → Bad-character rules: filters bytes
- Session handler → Session management: manages sessions
- Post-exploitation → Session management: uses sessions
- Interactive console → Module base: runs modules