module Noir::CLI::RulesCommand

Overview

noir rules <list|update|path>

Managed resource: the passive-scan rules repository (cloned from owasp-noir/noir-passive-rules into ~/.config/noir/passive_rules/).

Defined in:

cli/commands/rules.cr

Constant Summary

ACTIONS = ["list", "update", "path"] of ::String

Class Method Summary

Class Method Detail

def self.effective_rules_path : String #

What noir scan -P actually reads rules from: the user-managed path when populated, otherwise the image-baked bundle at /opt/noir/passive_rules. list/path report this so they never claim "no rules" on a Docker install where passive scanning is fully working off the bundled ruleset.


[View source]
def self.list_rules(io : IO = STDOUT) #

[View source]
def self.parse_argv(argv : Array(String)) : Parsed #

[View source]
def self.print_help(io : IO = STDOUT) #

[View source]
def self.rules_path : String #

The writable, user-managed rules directory: where noir rules update clones/pulls. Kept distinct from .effective_rules_path (which may resolve to the read-only image-baked bundle) so update always targets a path it can actually write to.


[View source]
def self.run(argv : Array(String)) #

[View source]
def self.update_rules(debug : Bool = false, verbose : Bool = false) #

[View source]