Console Overview

The RTFMv2 Console is a powerful command-line interface designed for both interactive and automated penetration testing workflows. It provides comprehensive session management, command execution, Lua scripting capabilities, and Node-RED integration for visual workflow automation.

Console Modes

The RTFMv2 Console supports three distinct operational modes:

1. Interactive Mode

Interactive mode provides a full-featured shell experience with advanced editing capabilities.

Starting Interactive Mode:

RTFMv2.Console.exe

Features: - Command history (navigate with ↑/↓ arrow keys) - Tab completion for commands and options - Cursor navigation (←/→/Home/End) - Session-aware prompt: <session-id>> - Lua scripting hooks (OnPrompt, OnBeforeExecute, OnAfterExecute) - Exit with exit or quit

Example Session:

RTFMv2 Console v2.1
>> new --name "PenTest2024" --host "192.168.1.0/24" --pass "mypassword"
Session created: PenTest2024-abc123
PenTest2024-abc123>> list --commands
Available commands:
  help, list, new, load, save, run, shell, template...
PenTest2024-abc123>> exit

2. Argument Mode

Execute single commands and exit—ideal for scripting and automation.

Usage:

RTFMv2.Console.exe <command> [options]

Example:

RTFMv2.Console.exe new --name "test" --host "192.168.1.1" --pass "password"

3. Node-RED Mode

Special integration mode that starts Node-RED and establishes WebSocket communication.

Starting Node-RED Mode:

RTFMv2.Console.exe nodered

What It Does: - Automatically launches Node-RED on port 1880 - Starts WebSocket server on port 5000 - Listens for commands from Node-RED flows - Returns command results to Node-RED nodes - Opens Node-RED UI at http://localhost:1880

See the Node-RED Integration guide for detailed information.

Getting Help

Display Command Help

<command> -h

Examples:

help -h
new -h
shell -h
template -h

List All Commands

help

Show Application Banner

help --showbanner

Session Management

Sessions organize all data, findings, and activities for a specific engagement.

Creating a New Session

new --name "SessionName" --host "target" --pass "password"

Parameters: - --name: Session identifier (required) - --host: Target IP, IP range, or domain (required) - --pass: Database encryption password (required)

Example:

new --name "CorporateTest" --host "10.0.0.0/24" --pass "SecurePass123"

Loading an Existing Session

load --dir "./SessionDirectory" --pass "password"

Example:

load --dir "./PenTest2024" --pass "SecurePass123"

Saving the Current Session

save ./SessionDirectory --pass "password"

Note: Save is only available in interactive mode.

Command Categories

RTFMv2 commands are organized into these categories:

  • Session Management: new, load, save
  • Information: help, list, hostinfo
  • Execution: run, RunScript, template, shell
  • Integration: server, plugins, file
  • Extensibility: Lua scripts (custom commands)

Next Steps

Quick Reference

Task Command
Start interactive console RTFMv2.Console.exe
Create new session new --name "test" --host "192.168.1.1" --pass "pass"
Load existing session load --dir ./session --pass "pass"
List available commands help or list --commands
Show session info list --session
Run OS command run --custom "ls -la"
Enter shell mode shell
Start Node-RED mode RTFMv2.Console.exe nodered
Exit console exit or quit