yavdb 0.3.0 → 0.4.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
  SHA1:
3
- metadata.gz: f1f0cdfd79936efa10947a4b983c295f7059d930
4
- data.tar.gz: 2ba6d7e40d9cb9d56249ff767ec5156520a610ae
3
+ metadata.gz: ca645bf2ce6d083015c0c97363f5f46aab4e27cf
4
+ data.tar.gz: 1cff5ebc4091c93e0ed8d57c4b692ca3c7861b85
5
5
  SHA512:
6
- metadata.gz: d29009672be459fc5c40701735d46f8460ccb3fad87169ecb1937a0858d6028cb008b8b2c4b1097758a418ea70c93ef959d0391f8e36cd729374b21afbdda3b7
7
- data.tar.gz: ff5295068f3530f150004146154df3583bcce4a412d083181520b43a9b4e8d7401af7c330f4df6a85d325dc8cf0d47423d121de60949132ee8f9e805eb7c4fa4
6
+ metadata.gz: a00a4a250b92d3d3cb2549a906124470002e62ddf4cde55f51e2d002ab97c6509d7d8ba52ada201d70ff4932a948e57262e36ca4c6749809911fc2671bb150b3
7
+ data.tar.gz: a4484eec314817c4344b6f3dd793369d37cffe297c98aeda0eb3b11e883d32a71e9f761df0e669cb1be4bc516b2816f8c3ee4e01c9b85522a394b30058547873
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- yavdb (0.3.0)
4
+ yavdb (0.4.0)
5
5
  json (~> 2.1)
6
6
  kramdown (~> 1.17)
7
7
  oga (~> 2.15)
@@ -62,9 +62,9 @@ module YAVDB
62
62
  advisory_hash['title'],
63
63
  advisory_hash['description'],
64
64
  advisory_hash['gem'],
65
- vulnerable_versions,
66
- advisory_hash['unaffected_versions'],
67
- advisory_hash['patched_versions'],
65
+ clean_version(vulnerable_versions),
66
+ clean_version(advisory_hash['unaffected_versions']),
67
+ clean_version(advisory_hash['patched_versions']),
68
68
  severity,
69
69
  PACKAGE_MANAGER,
70
70
  cve,
@@ -83,6 +83,10 @@ module YAVDB
83
83
  )
84
84
  end
85
85
 
86
+ def clean_version(versions)
87
+ versions&.map { |version| version.gsub(',', ' ') }
88
+ end
89
+
86
90
  def references(advisory_hash)
87
91
  references = [REPOSITORY_URL]
88
92
 
@@ -105,7 +105,7 @@ module YAVDB
105
105
  elsif ['maven', 'nuget', 'pypi'].include?(package_manager)
106
106
  [vulnerable_versions]
107
107
  else
108
- [vulnerable_versions.gsub(',', ' && ')]
108
+ [vulnerable_versions.gsub(',', ' ')]
109
109
  end
110
110
 
111
111
  sidebar_data = parse_side_bar(advisory_page)
@@ -67,12 +67,12 @@ module YAVDB
67
67
  advisory_hash['title'],
68
68
  advisory_hash['description'],
69
69
  language.name_parser[affected_package],
70
- affected_package['version'],
71
- affected_package['unaffected'],
72
- affected_package['fixedin'],
70
+ split_versions(affected_package['version']),
71
+ split_versions(affected_package['unaffected']),
72
+ split_versions(affected_package['fixedin']),
73
73
  severity(advisory_hash['cvss_v2']),
74
74
  language.package_manager,
75
- [advisory_hash['cve']],
75
+ [advisory_hash['cve']].map { |cve| "CVE-#{cve}" },
76
76
  nil, #:cwe
77
77
  nil, #:osvdb
78
78
  nil, #:cvss_v2_vector
@@ -89,6 +89,10 @@ module YAVDB
89
89
  end.flatten
90
90
  end
91
91
 
92
+ def split_versions(versions)
93
+ versions&.map { |version| version.split(',') }&.flatten
94
+ end
95
+
92
96
  def severity(cvss_score)
93
97
  case cvss_score
94
98
  when 0.0..3.3 then
@@ -69,7 +69,7 @@ module YAVDB
69
69
  def split_versions(version)
70
70
  version
71
71
  .strip
72
- .split(',')
72
+ .split(/,|\|\|/)
73
73
  end
74
74
 
75
75
  end
@@ -16,6 +16,6 @@
16
16
 
17
17
  module YAVDB
18
18
 
19
- VERSION = '0.3.0'
19
+ VERSION = '0.4.0'
20
20
 
21
21
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yavdb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rodrigo Fernandes