Zirkul DevSecOps
  • Welcome
  • DevSecOps
    • Getting started
    • Creating Jobs
    • Running Jobs
    • Azure DevOps Pipelines
    • Jenkins Pipelines
    • Job Script Syntax
    • Script templates
  • Zirkul Agent
    • Running the Agent
      • Command Line Interface
    • Command reference
      • Help
      • Clear
      • Var
      • Vars
      • Print
      • Date
      • Now
      • UTCNow
      • Day
      • Month
      • Year
      • Hour
      • Minute
      • Second
      • Env
      • Is base64
      • To base64
      • From base64
    • Scanner signatures
Powered by GitBook
On this page
  • Commands
  • Plugins
  • Options
  • External Variables
  1. Zirkul Agent
  2. Running the Agent

Command Line Interface

PreviousRunning the AgentNextCommand reference

Last updated 10 months ago

Zirkul Agent was initially designed as a command line tool for security automation, you can simply run zirkul from terminal for starting the interactive command line interface:

zirkul

You can also get more information related to parameters with:

zirkul --help

The command line interface support commands, options and plugins created for making a cross-platform terminal loaded with helpful cyber security functionalities available in OSX, Linux and Windows.

Commands

Commands are used for running built-in functionalities and configuring system options:

echo "Hello world!"

See all the commands available sending the question" ? " character:

Plugins

Plugins are the main functionality of the Agent allowing the tool to integrate with almost any tool either from command line or trough REST APIs. Plugins are made as Python scripts making it very easy to create and extend.

Example, loading ZAP plugin:

load zap

There are different types of plugins for "functions", "exploits" or "integrations":

  • Functions: Processing and/or returning values without interacting with external tools. Example: ` echo date ` will return the current date in text format.

  • Exploits: Testing known vulnerabilities (CVEs) receiving parameters and returning if the execution was successful or not. Example: ` load ms15-034 `

  • Integrations: These plugins are used for interacting with external tools such as command line tools or remote services through Web APIs. Example: Running scans and returning results from tools such as ZAP, Burp Suite, nmap, sqlmap, Metasploit, etc.

Options

Options are used for configuring parameters sent to plugins, usually separated by colon ' : '

Example:

load zap
    url: "https://evil.com" # The option is 'url', note ':' is required.

External Variables

Zirkul Agent can get external variables either from command line arguments or environment variables as follows.

Command line argument "--variables"

With the argument ' --variables ' you can send as many as the terminal allows, example:

zirkul --variables "var_name=123 another_var='Text with spaces'"

Every variable must be separated by spaces, any value including spaces must be enclosed with single quotes.

Environment variables

Environment variables are defined at system level in your computer, usually can be set with the command:

export MY_VAR="This is the value"
echo env("MY_VAR")
=> This is the value

From Zirkul Agent, you can get the environment's variable value with the :

See more information in the .

env function
command reference