aspisec 0.0.2 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/LICENSE +2 -1
- data/bin-ruby/aspisec +7 -7
- data/lib-ruby/aspisec/clean.rb +31 -11
- data/lib-ruby/aspisec/config.rb +57 -146
- data/lib-ruby/aspisec/configs/amass.rb +22 -0
- data/lib-ruby/aspisec/configs/bloodhound.rb +27 -0
- data/lib-ruby/aspisec/configs/crackmapexec.rb +28 -0
- data/lib-ruby/aspisec/configs/dbgate.rb +25 -0
- data/lib-ruby/aspisec/configs/ffuf.rb +19 -0
- data/lib-ruby/aspisec/configs/filezilla.rb +28 -0
- data/lib-ruby/aspisec/configs/hashcat.rb +33 -0
- data/lib-ruby/aspisec/configs/home_history_files.rb +59 -0
- data/lib-ruby/aspisec/configs/john.rb +24 -0
- data/lib-ruby/aspisec/configs/jwt_tool.rb +19 -0
- data/lib-ruby/aspisec/configs/lsassy.rb +22 -0
- data/lib-ruby/aspisec/configs/manspider.rb +25 -0
- data/lib-ruby/aspisec/configs/metasploit.rb +36 -0
- data/lib-ruby/aspisec/configs/mobsf.rb +30 -0
- data/lib-ruby/aspisec/configs/mongodb_compass.rb +19 -0
- data/lib-ruby/aspisec/configs/mongodb_mongosh.rb +24 -0
- data/lib-ruby/aspisec/configs/ncrack.rb +19 -0
- data/lib-ruby/aspisec/configs/netexec.rb +28 -0
- data/lib-ruby/aspisec/configs/recaf.rb +24 -0
- data/lib-ruby/aspisec/configs/remmina.rb +20 -0
- data/lib-ruby/aspisec/configs/semgrep.rb +22 -0
- data/lib-ruby/aspisec/configs/spiderfoot.rb +24 -0
- data/lib-ruby/aspisec/configs/sqlmap.rb +27 -0
- data/lib-ruby/aspisec/configs/theharvester.rb +18 -0
- data/lib-ruby/aspisec/configs/weevely.rb +31 -0
- data/lib-ruby/aspisec/configs/whatwaf.rb +18 -0
- data/lib-ruby/aspisec/module.rb +35 -0
- data/lib-ruby/aspisec/modules/amass.rb +38 -0
- data/lib-ruby/aspisec/modules/bloodhound.rb +38 -0
- data/lib-ruby/aspisec/modules/dbgate.rb +38 -0
- data/lib-ruby/aspisec/modules/ffuf.rb +33 -0
- data/lib-ruby/aspisec/modules/filezilla.rb +43 -0
- data/lib-ruby/aspisec/modules/home_history_files.rb +67 -0
- data/lib-ruby/aspisec/modules/jwt_tool.rb +33 -0
- data/lib-ruby/aspisec/modules/lsassy.rb +38 -0
- data/lib-ruby/aspisec/modules/manspider.rb +38 -0
- data/lib-ruby/aspisec/modules/mobsf.rb +49 -0
- data/lib-ruby/aspisec/modules/mongodb_compass.rb +33 -0
- data/lib-ruby/aspisec/modules/mongodb_mongosh.rb +38 -0
- data/lib-ruby/aspisec/modules/ncrack.rb +33 -0
- data/lib-ruby/aspisec/modules/recaf.rb +38 -0
- data/lib-ruby/aspisec/modules/remmina.rb +34 -0
- data/lib-ruby/aspisec/modules/semgrep.rb +38 -0
- data/lib-ruby/aspisec/modules/spiderfoot.rb +38 -0
- data/lib-ruby/aspisec/modules/weevely.rb +43 -0
- data/lib-ruby/aspisec/modules/whatwaf.rb +33 -0
- data/lib-ruby/aspisec/version.rb +1 -1
- metadata +60 -18
@@ -0,0 +1,67 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# Module for various history files stored in the user home directory.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @example
|
11
|
+
# # Get the global config
|
12
|
+
# conf = Aspisec::Config.new.conf
|
13
|
+
# # Create a HomeHistoryFiles module instance
|
14
|
+
# hhf = Aspisec::Modules::HomeHistoryFiles.new(conf)
|
15
|
+
# # Locations available
|
16
|
+
# hhf.locations_list # => ["python", "postgresql", "ruby_irb", "ruby_rdbg", "redis_cli", "bash", "zsh", "zsh_alt"]
|
17
|
+
class HomeHistoryFiles < Aspisec::Module
|
18
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
19
|
+
# @return [Location]
|
20
|
+
attr_reader :python
|
21
|
+
|
22
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
23
|
+
# @return [Location]
|
24
|
+
attr_reader :postgresql
|
25
|
+
|
26
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
27
|
+
# @return [Location]
|
28
|
+
attr_reader :ruby_irb
|
29
|
+
|
30
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
31
|
+
# @return [Location]
|
32
|
+
attr_reader :ruby_rdbg
|
33
|
+
|
34
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
35
|
+
# @return [Location]
|
36
|
+
attr_reader :redis_cli
|
37
|
+
|
38
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
39
|
+
# @return [Location]
|
40
|
+
attr_reader :bash
|
41
|
+
|
42
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
43
|
+
# @return [Location]
|
44
|
+
attr_reader :zsh
|
45
|
+
|
46
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
47
|
+
# @return [Location]
|
48
|
+
attr_reader :zsh_alt
|
49
|
+
|
50
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
51
|
+
# `tool_name` is hardcoded for each module.
|
52
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
53
|
+
def initialize(conf, logger: nil)
|
54
|
+
super(conf, 'home-history-files', logger:)
|
55
|
+
@python = Location.new(@conf, 'python')
|
56
|
+
@postgresql = Location.new(@conf, 'postgresql')
|
57
|
+
@ruby_irb = Location.new(@conf, 'ruby-irb')
|
58
|
+
@ruby_rdbg = Location.new(@conf, 'ruby-rdbg')
|
59
|
+
@redis_cli = Location.new(@conf, 'redis-cli')
|
60
|
+
@bash = Location.new(@conf, 'bash')
|
61
|
+
@zsh = Location.new(@conf, 'zsh')
|
62
|
+
@zsh_alt = Location.new(@conf, 'zsh-alt')
|
63
|
+
@locations_list = %w[python postgresql ruby_irb ruby_rdbg redis_cli bash zsh zsh_alt]
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# jwt_tool module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://github.com/ticarpi/jwt_tool
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a JwtTool module instance
|
15
|
+
# jwt = Aspisec::Modules::JwtTool.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# jwt.locations_list # => ["logs"]
|
18
|
+
class JwtTool < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :logs
|
22
|
+
|
23
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
24
|
+
# `tool_name` is hardcoded for each module.
|
25
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
26
|
+
def initialize(conf, logger: nil)
|
27
|
+
super(conf, 'jwt_tool', logger:)
|
28
|
+
@logs = Location.new(@conf, 'logs')
|
29
|
+
@locations_list = %w[logs]
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# lsassy module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://github.com/Hackndo/lsassy
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a Lsassy module instance
|
15
|
+
# lsa = Aspisec::Modules::Lsassy.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# lsa.locations_list # => ["masterkeys", "tickets"]
|
18
|
+
class Lsassy < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :masterkeys
|
22
|
+
|
23
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
24
|
+
# @return [Location]
|
25
|
+
attr_reader :tickets
|
26
|
+
|
27
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
28
|
+
# `tool_name` is hardcoded for each module.
|
29
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
30
|
+
def initialize(conf, logger: nil)
|
31
|
+
super(conf, 'lsassy', logger:)
|
32
|
+
@masterkeys = Location.new(@conf, 'masterkeys')
|
33
|
+
@tickets = Location.new(@conf, 'tickets')
|
34
|
+
@locations_list = %w[masterkeys tickets]
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# MANSPIDER module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://github.com/blacklanternsecurity/MANSPIDER
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a Manspider module instance
|
15
|
+
# ms = Aspisec::Modules::Manspider.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# ms.locations_list # => ["logs", "loot"]
|
18
|
+
class Manspider < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :logs
|
22
|
+
|
23
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
24
|
+
# @return [Location]
|
25
|
+
attr_reader :loot
|
26
|
+
|
27
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
28
|
+
# `tool_name` is hardcoded for each module.
|
29
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
30
|
+
def initialize(conf, logger: nil)
|
31
|
+
super(conf, 'manspider', logger:)
|
32
|
+
@logs = Location.new(@conf, 'logs')
|
33
|
+
@loot = Location.new(@conf, 'loot')
|
34
|
+
@locations_list = %w[logs loot]
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# MobSF module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://mobsf.github.io/docs/
|
11
|
+
# @see https://github.com/MobSF/Mobile-Security-Framework-MobSF
|
12
|
+
# @example
|
13
|
+
# # Get the global config
|
14
|
+
# conf = Aspisec::Config.new.conf
|
15
|
+
# # Create a Mobsf module instance
|
16
|
+
# mob = Aspisec::Modules::Mobsf.new(conf)
|
17
|
+
# # Locations available
|
18
|
+
# mob.locations_list # => ["logs", "downloads", "uploads", "database"]
|
19
|
+
class Mobsf < Aspisec::Module
|
20
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
21
|
+
# @return [Location]
|
22
|
+
attr_reader :logs
|
23
|
+
|
24
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
25
|
+
# @return [Location]
|
26
|
+
attr_reader :downloads
|
27
|
+
|
28
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
29
|
+
# @return [Location]
|
30
|
+
attr_reader :uploads
|
31
|
+
|
32
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
33
|
+
# @return [Location]
|
34
|
+
attr_reader :database
|
35
|
+
|
36
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
37
|
+
# `tool_name` is hardcoded for each module.
|
38
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
39
|
+
def initialize(conf, logger: nil)
|
40
|
+
super(conf, 'mobsf', logger:)
|
41
|
+
@logs = Location.new(@conf, 'logs')
|
42
|
+
@downloads = Location.new(@conf, 'downloads')
|
43
|
+
@uploads = Location.new(@conf, 'uploads')
|
44
|
+
@database = Location.new(@conf, 'database')
|
45
|
+
@locations_list = %w[logs downloads uploads database]
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# MongoDB Compass module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://www.mongodb.com/products/tools/compass
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a MongodbCompass module instance
|
15
|
+
# mdc = Aspisec::Modules::MongodbCompass.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# mdc.locations_list # => ["logs"]
|
18
|
+
class MongodbCompass < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :logs
|
22
|
+
|
23
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
24
|
+
# `tool_name` is hardcoded for each module.
|
25
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
26
|
+
def initialize(conf, logger: nil)
|
27
|
+
super(conf, 'mongodb-compass', logger:)
|
28
|
+
@logs = Location.new(@conf, 'logs')
|
29
|
+
@locations_list = %w[logs]
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# MongoDB Shell (mongosh) module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://www.mongodb.com/docs/mongodb-shell/
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a MongodbMongosh module instance
|
15
|
+
# msh = Aspisec::Modules::MongodbMongosh.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# msh.locations_list # => ["logs", "history"]
|
18
|
+
class MongodbMongosh < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :logs
|
22
|
+
|
23
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
24
|
+
# @return [Location]
|
25
|
+
attr_reader :history
|
26
|
+
|
27
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
28
|
+
# `tool_name` is hardcoded for each module.
|
29
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
30
|
+
def initialize(conf, logger: nil)
|
31
|
+
super(conf, 'mongodb-mongosh', logger:)
|
32
|
+
@logs = Location.new(@conf, 'logs')
|
33
|
+
@history = Location.new(@conf, 'history')
|
34
|
+
@locations_list = %w[logs history]
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# ncrack module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://github.com/nmap/ncrack
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a Ncrack module instance
|
15
|
+
# ncr = Aspisec::Modules::Ncrack.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# ncr.locations_list # => ["restore"]
|
18
|
+
class Ncrack < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :restore
|
22
|
+
|
23
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
24
|
+
# `tool_name` is hardcoded for each module.
|
25
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
26
|
+
def initialize(conf, logger: nil)
|
27
|
+
super(conf, 'ncrack', logger:)
|
28
|
+
@restore = Location.new(@conf, 'restore')
|
29
|
+
@locations_list = %w[restore]
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# Recaf module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://github.com/Col-E/Recaf
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a Recaf module instance
|
15
|
+
# rec = Aspisec::Modules::Recaf.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# rec.locations_list # => ["classpath", "logs"]
|
18
|
+
class Recaf < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :classpath
|
22
|
+
|
23
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
24
|
+
# @return [Location]
|
25
|
+
attr_reader :logs
|
26
|
+
|
27
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
28
|
+
# `tool_name` is hardcoded for each module.
|
29
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
30
|
+
def initialize(conf, logger: nil)
|
31
|
+
super(conf, 'recaf', logger:)
|
32
|
+
@classpath = Location.new(@conf, 'classpath')
|
33
|
+
@logs = Location.new(@conf, 'logs')
|
34
|
+
@locations_list = %w[classpath logs]
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# Remmina module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://remmina.org
|
11
|
+
# @see https://gitlab.com/Remmina/Remmina
|
12
|
+
# @example
|
13
|
+
# # Get the global config
|
14
|
+
# conf = Aspisec::Config.new.conf
|
15
|
+
# # Create a Remmina module instance
|
16
|
+
# rem = Aspisec::Modules::Remmina.new(conf)
|
17
|
+
# # Locations available
|
18
|
+
# rem.locations_list # => ["configs"]
|
19
|
+
class Remmina < Aspisec::Module
|
20
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
21
|
+
# @return [Location]
|
22
|
+
attr_reader :configs
|
23
|
+
|
24
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
25
|
+
# `tool_name` is hardcoded for each module.
|
26
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
27
|
+
def initialize(conf, logger: nil)
|
28
|
+
super(conf, 'remmina', logger:)
|
29
|
+
@configs = Location.new(@conf, 'configs')
|
30
|
+
@locations_list = %w[configs]
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# Semgrep module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://github.com/returntocorp/semgrep
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a Semgrep module instance
|
15
|
+
# smg = Aspisec::Modules::Semgrep.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# smg.locations_list # => ["logs1", "logs2"]
|
18
|
+
class Semgrep < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :logs1
|
22
|
+
|
23
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
24
|
+
# @return [Location]
|
25
|
+
attr_reader :logs2
|
26
|
+
|
27
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
28
|
+
# `tool_name` is hardcoded for each module.
|
29
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
30
|
+
def initialize(conf, logger: nil)
|
31
|
+
super(conf, 'semgrep', logger:)
|
32
|
+
@logs1 = Location.new(@conf, 'logs1')
|
33
|
+
@logs2 = Location.new(@conf, 'logs2')
|
34
|
+
@locations_list = %w[logs1 logs2]
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# Spiderfoot module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://github.com/smicallef/spiderfoot
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a Spiderfoot module instance
|
15
|
+
# spf = Aspisec::Modules::Spiderfoot.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# spf.locations_list # => ["database", "logs"]
|
18
|
+
class Spiderfoot < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :database
|
22
|
+
|
23
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
24
|
+
# @return [Location]
|
25
|
+
attr_reader :logs
|
26
|
+
|
27
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
28
|
+
# `tool_name` is hardcoded for each module.
|
29
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
30
|
+
def initialize(conf, logger: nil)
|
31
|
+
super(conf, 'spiderfoot', logger:)
|
32
|
+
@database = Location.new(@conf, 'database')
|
33
|
+
@logs = Location.new(@conf, 'logs')
|
34
|
+
@locations_list = %w[database logs]
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# weevely module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://github.com/epinna/weevely3
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a Weevely module instance
|
15
|
+
# wvl = Aspisec::Modules::Weevely.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# wvl.locations_list # => ["history", "sessions", "logs"]
|
18
|
+
class Weevely < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :history
|
22
|
+
|
23
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
24
|
+
# @return [Location]
|
25
|
+
attr_reader :sessions
|
26
|
+
|
27
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
28
|
+
# @return [Location]
|
29
|
+
attr_reader :logs
|
30
|
+
|
31
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
32
|
+
# `tool_name` is hardcoded for each module.
|
33
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
34
|
+
def initialize(conf, logger: nil)
|
35
|
+
super(conf, 'weevely', logger:)
|
36
|
+
@history = Location.new(@conf, 'history')
|
37
|
+
@sessions = Location.new(@conf, 'sessions')
|
38
|
+
@logs = Location.new(@conf, 'logs')
|
39
|
+
@locations_list = %w[history sessions logs]
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'aspisec/module'
|
4
|
+
|
5
|
+
module Aspisec
|
6
|
+
module Modules
|
7
|
+
# WhatWaf module.
|
8
|
+
# Inherits {Aspisec::Module}.
|
9
|
+
# For more examples of methods, see {Aspisec::Modules::Sqlmap}.
|
10
|
+
# @see https://github.com/Ekultek/WhatWaf
|
11
|
+
# @example
|
12
|
+
# # Get the global config
|
13
|
+
# conf = Aspisec::Config.new.conf
|
14
|
+
# # Create a Whatwaf module instance
|
15
|
+
# whw = Aspisec::Modules::Whatwaf.new(conf)
|
16
|
+
# # Locations available
|
17
|
+
# whw.locations_list # => ["database"]
|
18
|
+
class Whatwaf < Aspisec::Module
|
19
|
+
# see {Aspisec::Config::DEFAULT_CONFIG} or call {Aspisec::Module::Location#description}.
|
20
|
+
# @return [Location]
|
21
|
+
attr_reader :database
|
22
|
+
|
23
|
+
# Inherits from {Aspisec::Module} but has only the `conf` argument,
|
24
|
+
# `tool_name` is hardcoded for each module.
|
25
|
+
# @param conf [Aspisec::Config] an instance of the global configuration
|
26
|
+
def initialize(conf, logger: nil)
|
27
|
+
super(conf, 'whatwaf', logger:)
|
28
|
+
@database = Location.new(@conf, 'database')
|
29
|
+
@locations_list = %w[database]
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
data/lib-ruby/aspisec/version.rb
CHANGED