ShellOpsLog is a versatile tool designed to capture and log all executed commands during various operations, such as red and purple team engagements.
It provides a lightweight solution for tracking command history without recording their output. The logged commands are saved in a CSV file, making it easy to analyze and include in client deliverables or internal reviews.
Key Features
- Portability: ShellOpsLog functions are portable, allowing deployment on remote hosts via SSH or RDP, providing flexibility in logging commands across different environments.
- CSV Output: Logs are saved in a CSV format with columns for Timestamp, User, Path, and Command, facilitating easy review and analysis.
- Responsibility: Users are reminded to be responsible for their actions when using this tool.
ShellOpsLog offers two primary implementations:
- Bash/Zsh Version (ShellOpsLog.sh):
- Utilizes shell hooks like
PROMPT_COMMANDin Bash orpreexecin Zsh to log commands in Unix-based shells. - Usage:
- Place the script in your filesystem or clone the repository.
- Add
source /path/to/ShellOpsLog.shto your shell startup file (e.g.,~/.bashrcor~/.zshrc). - Open a new terminal and manually call or uncomment the auto-start line at the bottom of the script.
- Optionally specify a custom log directory with
start_operation_log ~/Projects/MyClient. - Stop logging with
stop_operation_log.
- Utilizes shell hooks like
- PowerShell Version (Microsoft.PowerShell_profile.ps1):
- Automatically logs commands in PowerShell sessions.
- Usage:
- Copy the script into your PowerShell profile file.
- If the file doesn’t exist, create it with
New-Item -ItemType File -Path $PROFILE -Force. - Restart PowerShell or open a new tab.
- Manually call or uncomment the auto-start line.
- Optionally specify a custom log directory with
Start-OperationLog "C:\Projects\MyClient". - Stop logging with
Stop-OperationLog.
While CMD support is available, it currently has limitations and is slated for updates in the future.
ShellOpsLog provides a simple yet effective way to track command history across different shell environments, making it a valuable tool for maintaining a clear record of activities during various operational engagements.






%20Works.png)



.webp)

