dradis-ntospider 4.11.0 → 4.13.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d76c11a66b2a62709c95d8dd714d86f46124db5dce7539f820db80ad180656c6
4
- data.tar.gz: 18c6d44a2826a78c2ba71282f0b0e711bbdbeb73c1abf32818c5fec938782749
3
+ metadata.gz: 4916affb94e8d8254bf484900e37f4e7c15e73e0fcc48ff59da7e8f5d3a3106f
4
+ data.tar.gz: d382a56a68fc803381e72fcc7c20e03f5bda1fd5b7425de5fda99b46f4684934
5
5
  SHA512:
6
- metadata.gz: de36c6b0f877233d7e1884647af7be91119aff97ffc7b4f109276bd6e2553b1984e65e5247532ef1e0d00a9bac55ef1bfed13b299d1021fca289df1ca9964a91
7
- data.tar.gz: 5c887f9f137f21a674eca4b8d276f2463be50c14f36d7eed30edd68146eeb353d1105c993cfdd5d2cba348229a5396358aafcef8f33ce609ab7850ccdbac443c
6
+ metadata.gz: 5faf4e9c5673e803adb8c1d6a55da15acb7b96401b2450bee52dcb99e80b6c5b0f700ddeac8c8409df6f0c3074c645bbbbf286cf7105f65ce413c048111e7613
7
+ data.tar.gz: 625845731709ae4ffe61842f53ca6a0d38215f5c448907ebce8c0f5fdb0ef55775e8a7d5ccee3fc0c10b8da047f7c1ff1106c6148b3b475b5bc34da6f7f577f3
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ v4.13.0 (July 2024)
2
+ - No changes
3
+
4
+ v4.12.0 (May 2024)
5
+ - Migrate integration to use Mappings Manager
6
+ - Update Dradis links in README
7
+
1
8
  v4.11.0 (January 2024)
2
9
  - No changes
3
10
 
data/README.md CHANGED
@@ -4,8 +4,7 @@
4
4
 
5
5
  The NTO Spider add-on enables users to upload NTO Spider XML files to create a structure of nodes/notes that contain the same information about the hosts/ports/services as the original file.
6
6
 
7
- The add-on requires [Dradis CE](https://dradisframework.org/) > 3.0, or [Dradis Pro](https://dradisframework.com/pro/).
8
-
7
+ The add-on requires [Dradis CE](https://dradis.com/ce/) > 3.0, or [Dradis Pro](https://dradis.com/).
9
8
 
10
9
  ## More information
11
10
 
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
25
25
  # s.add_dependency 'rails', '~> 4.1.1'
26
26
  spec.add_dependency 'dradis-plugins', '~> 4.0'
27
27
 
28
- spec.add_development_dependency 'bundler'
28
+ spec.add_development_dependency 'bundler', '~> 2'
29
29
  spec.add_development_dependency 'byebug'
30
30
  spec.add_development_dependency 'rake'
31
31
  spec.add_development_dependency 'rspec-rails'
@@ -8,7 +8,7 @@ module Dradis
8
8
 
9
9
  module VERSION
10
10
  MAJOR = 4
11
- MINOR = 11
11
+ MINOR = 13
12
12
  TINY = 0
13
13
  PRE = nil
14
14
 
@@ -52,16 +52,16 @@ module Dradis::Plugins::NTOSpider
52
52
 
53
53
  plugin_id = vuln.vuln_type
54
54
  logger.info{ "\t\t => Creating new issue (plugin_id: #{plugin_id})" }
55
- issue_text = template_service.process_template(
56
- template: 'vuln', data: vuln.xml
55
+ issue_text = mapping_service.apply_mapping(
56
+ source: 'vuln', data: vuln.xml
57
57
  )
58
58
  issue = content_service.create_issue text: issue_text, id: plugin_id
59
59
 
60
60
  # App Spider can provide multiple pieces of evidence for an issue.
61
61
  xml_vuln.xpath('./AttackList/Attack').each do |attack_xml|
62
62
  logger.info{ "\t\t => Creating new evidence" }
63
- evidence_content = template_service.process_template(
64
- template: 'evidence', data: attack_xml
63
+ evidence_content = mapping_service.apply_mapping(
64
+ source: 'evidence', data: attack_xml
65
65
  )
66
66
  content_service.create_evidence(
67
67
  issue: issue, node: host_node, content: evidence_content
@@ -0,0 +1,82 @@
1
+ module Dradis::Plugins::NTOSpider
2
+ module Mapping
3
+ DEFAULT_MAPPING = {
4
+ evidence: {
5
+ 'URL' => '{{ ntospider[evidence.attack_vuln_url] }}',
6
+ 'Param' => '{{ ntospider[evidence.attack_post_params] }}',
7
+ 'String' => '{{ ntospider[evidence.attack_matched_string] }}',
8
+ 'Request' => '{{ ntospider[evidence.attack_request] }}',
9
+ 'Response' => '{{ ntospider[evidence.attack_response] }}'
10
+ },
11
+ vuln: {
12
+ 'Title' => '{{ ntospider[vuln.vuln_type] }}',
13
+ 'Attack Class' => '{{ ntospider[vuln.attack_class] }}',
14
+ 'Attack Type' => '{{ ntospider[vuln.attack_type] }}',
15
+ 'Attack Score' => '{{ ntospider[vuln.attack_score] }}',
16
+ 'Attack Value' => '{{ ntospider[vuln.attack_value] }}',
17
+ 'Method' => '{{ ntospider[vuln.vuln_method] }}',
18
+ 'Description' => '{{ ntospider[vuln.description] }}',
19
+ 'Recommendation' => '{{ ntospider[vuln.recommendation] }}',
20
+ 'CweId' => '{{ ntospider[vuln.cwe_id] }}',
21
+ 'CAPEC' => '{{ ntospider[vuln.capec] }}',
22
+ 'DISSA_ASC' => '{{ ntospider[vuln.dissa_asc] }}',
23
+ 'OWASP2010' => '{{ ntospider[vuln.owasp2010] }}',
24
+ 'OWASP2013' => '{{ ntospider[vuln.owasp2013] }}',
25
+ 'OWASP2017' => '{{ ntospider[vuln.owasp2017] }}',
26
+ 'OVAL' => '{{ ntospider[vuln.oval] }}'
27
+ }
28
+ }.freeze
29
+
30
+ SOURCE_FIELDS = {
31
+ evidence: [
32
+ 'evidence.attack_config_description',
33
+ 'evidence.attack_description',
34
+ 'evidence.attack_id',
35
+ 'evidence.attack_matched_string',
36
+ 'evidence.attack_post_params',
37
+ 'evidence.attack_request',
38
+ 'evidence.attack_response',
39
+ 'evidence.attack_user_notes',
40
+ 'evidence.attack_value',
41
+ 'evidence.attack_vuln_url',
42
+ 'evidence.benign',
43
+ 'evidence.original_value',
44
+ 'evidence.original_response_code'
45
+ ],
46
+ vuln: [
47
+ 'vuln.attack_class',
48
+ 'vuln.attack_score',
49
+ 'vuln.attack_type',
50
+ 'vuln.attack_value',
51
+ 'vuln.capec',
52
+ 'vuln.confidence',
53
+ 'vuln.cwe_id',
54
+ 'vuln.description',
55
+ 'vuln.dissa_asc',
56
+ 'vuln.html_entity_attacked',
57
+ 'vuln.imperva_bl',
58
+ 'vuln.imperva_wl',
59
+ 'vuln.mod_security_bl',
60
+ 'vuln.mod_security_wl',
61
+ 'vuln.normalized_url',
62
+ 'vuln.oval',
63
+ 'vuln.owasp2007',
64
+ 'vuln.owasp2010',
65
+ 'vuln.owasp2013',
66
+ 'vuln.owasp2017',
67
+ 'vuln.pcre_regex_bl',
68
+ 'vuln.pcre_regex_wl',
69
+ 'vuln.recommendation',
70
+ 'vuln.scan_date',
71
+ 'vuln.snort_bl',
72
+ 'vuln.snort_wl',
73
+ 'vuln.statistically_prevalent_original_response_code',
74
+ 'vuln.vuln_method',
75
+ 'vuln.vuln_param',
76
+ 'vuln.vuln_type',
77
+ 'vuln.vuln_url',
78
+ 'vuln.wasc'
79
+ ]
80
+ }.freeze
81
+ end
82
+ end
@@ -7,5 +7,6 @@ end
7
7
 
8
8
  require 'dradis/plugins/ntospider/engine'
9
9
  require 'dradis/plugins/ntospider/field_processor'
10
+ require 'dradis/plugins/ntospider/mapping'
10
11
  require 'dradis/plugins/ntospider/importer'
11
12
  require 'dradis/plugins/ntospider/version'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dradis-ntospider
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.11.0
4
+ version: 4.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Martin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-01-17 00:00:00.000000000 Z
11
+ date: 2024-08-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dradis-plugins
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '2'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: '2'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: byebug
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -119,6 +119,7 @@ files:
119
119
  - lib/dradis/plugins/ntospider/field_processor.rb
120
120
  - lib/dradis/plugins/ntospider/gem_version.rb
121
121
  - lib/dradis/plugins/ntospider/importer.rb
122
+ - lib/dradis/plugins/ntospider/mapping.rb
122
123
  - lib/dradis/plugins/ntospider/version.rb
123
124
  - lib/ntospider/attack.rb
124
125
  - lib/ntospider/vuln.rb
@@ -126,12 +127,8 @@ files:
126
127
  - spec/fixtures/files/VulnerabilitiesSummary.xml
127
128
  - spec/ntospider_import_spec.rb
128
129
  - spec/spec_helper.rb
129
- - templates/evidence.fields
130
130
  - templates/evidence.sample
131
- - templates/evidence.template
132
- - templates/vuln.fields
133
131
  - templates/vuln.sample
134
- - templates/vuln.template
135
132
  homepage: https://dradis.com/integrations/appspider.html
136
133
  licenses:
137
134
  - GPL-2
@@ -151,7 +148,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
151
148
  - !ruby/object:Gem::Version
152
149
  version: '0'
153
150
  requirements: []
154
- rubygems_version: 3.3.7
151
+ rubygems_version: 3.5.6
155
152
  signing_key:
156
153
  specification_version: 4
157
154
  summary: NTOSpider add-on for the Dradis Framework.
@@ -1,13 +0,0 @@
1
- evidence.attack_config_description
2
- evidence.attack_description
3
- evidence.attack_id
4
- evidence.attack_matched_string
5
- evidence.attack_post_params
6
- evidence.attack_request
7
- evidence.attack_response
8
- evidence.attack_user_notes
9
- evidence.attack_value
10
- evidence.attack_vuln_url
11
- evidence.benign
12
- evidence.original_value
13
- evidence.original_response_code
@@ -1,14 +0,0 @@
1
- #[URL]#
2
- %evidence.attack_vuln_url%
3
-
4
- #[Param]#
5
- %evidence.attack_post_params%
6
-
7
- #[String]#
8
- %evidence.attack_matched_string%
9
-
10
- #[Request]#
11
- %evidence.attack_request%
12
-
13
- #[Response]#
14
- %evidence.attack_response%
@@ -1,32 +0,0 @@
1
- vuln.attack_class
2
- vuln.attack_score
3
- vuln.attack_type
4
- vuln.attack_value
5
- vuln.capec
6
- vuln.confidence
7
- vuln.cwe_id
8
- vuln.description
9
- vuln.dissa_asc
10
- vuln.html_entity_attacked
11
- vuln.imperva_bl
12
- vuln.imperva_wl
13
- vuln.mod_security_bl
14
- vuln.mod_security_wl
15
- vuln.normalized_url
16
- vuln.oval
17
- vuln.owasp2007
18
- vuln.owasp2010
19
- vuln.owasp2013
20
- vuln.owasp2017
21
- vuln.pcre_regex_bl
22
- vuln.pcre_regex_wl
23
- vuln.recommendation
24
- vuln.scan_date
25
- vuln.snort_bl
26
- vuln.snort_wl
27
- vuln.statistically_prevalent_original_response_code
28
- vuln.vuln_method
29
- vuln.vuln_param
30
- vuln.vuln_type
31
- vuln.vuln_url
32
- vuln.wasc
@@ -1,44 +0,0 @@
1
- #[Title]#
2
- %vuln.vuln_type%
3
-
4
- #[Attack Class]#
5
- %vuln.attack_class%
6
-
7
- #[Attack Type]#
8
- %vuln.attack_type%
9
-
10
- #[Attack Score]#
11
- %vuln.attack_score%
12
-
13
- #[Attack Value]#
14
- %vuln.attack_value%
15
-
16
- #[Method]#
17
- %vuln.vuln_method%
18
-
19
- #[Description]#
20
- %vuln.description%
21
-
22
- #[Recommendation]#
23
- %vuln.recommendation%
24
-
25
- #[CweId]#
26
- %vuln.cwe_id%
27
-
28
- #[CAPEC]#
29
- %vuln.capec%
30
-
31
- #[DISSA_ASC]#
32
- %vuln.dissa_asc%
33
-
34
- #[OWASP2010]#
35
- %vuln.owasp2010%
36
-
37
- #[OWASP2013]#
38
- %vuln.owasp2013%
39
-
40
- #[OWASP2017]#
41
- %vuln.owasp2017%
42
-
43
- #[OVAL]#
44
- %vuln.oval%