bundler-audit 0.6.1 → 0.9.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (436) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +3 -0
  3. data/.github/ISSUE_TEMPLATE/bug-report.md +44 -0
  4. data/.github/workflows/ruby.yml +42 -0
  5. data/.gitignore +1 -1
  6. data/.rspec +1 -1
  7. data/.rubocop.yml +83 -0
  8. data/COPYING.txt +4 -4
  9. data/ChangeLog.md +111 -4
  10. data/Gemfile +7 -3
  11. data/README.md +85 -23
  12. data/Rakefile +17 -30
  13. data/bundler-audit.gemspec +3 -11
  14. data/gemspec.yml +2 -2
  15. data/lib/bundler/audit/advisory.rb +81 -9
  16. data/lib/bundler/audit/cli/formats/json.rb +65 -0
  17. data/lib/bundler/audit/cli/formats/junit.rb +127 -0
  18. data/lib/bundler/audit/cli/formats/text.rb +122 -0
  19. data/lib/bundler/audit/cli/formats.rb +148 -0
  20. data/lib/bundler/audit/cli/thor_ext/shell/basic/say_error.rb +33 -0
  21. data/lib/bundler/audit/cli.rb +114 -88
  22. data/lib/bundler/audit/configuration.rb +108 -0
  23. data/lib/bundler/audit/database.rb +161 -29
  24. data/lib/bundler/audit/report.rb +149 -0
  25. data/lib/bundler/audit/results/insecure_source.rb +78 -0
  26. data/lib/bundler/audit/results/result.rb +21 -0
  27. data/lib/bundler/audit/results/unpatched_gem.rb +98 -0
  28. data/lib/bundler/audit/results.rb +19 -0
  29. data/lib/bundler/audit/scanner.rb +105 -26
  30. data/lib/bundler/audit/task.rb +19 -6
  31. data/lib/bundler/audit/version.rb +3 -3
  32. data/lib/bundler/audit.rb +2 -2
  33. data/spec/advisory_spec.rb +153 -20
  34. data/spec/bundle/insecure_sources/Gemfile.lock +151 -0
  35. data/spec/bundle/secure/Gemfile +1 -0
  36. data/spec/bundle/secure/Gemfile.lock +123 -0
  37. data/spec/bundle/unpatched_gems/Gemfile +1 -1
  38. data/spec/bundle/unpatched_gems/Gemfile.lock +31 -0
  39. data/spec/bundle/unpatched_gems_with_dot_configuration/.bundler-audit.yml +3 -0
  40. data/spec/bundle/unpatched_gems_with_dot_configuration/Gemfile +3 -0
  41. data/spec/bundle/unpatched_gems_with_dot_configuration/Gemfile.lock +31 -0
  42. data/spec/cli/formats/json_spec.rb +114 -0
  43. data/spec/cli/formats/junit_spec.rb +284 -0
  44. data/spec/cli/formats/text_spec.rb +273 -0
  45. data/spec/cli/formats_spec.rb +86 -0
  46. data/spec/cli_spec.rb +100 -21
  47. data/spec/configuration_spec.rb +78 -0
  48. data/spec/database_spec.rb +286 -39
  49. data/spec/fixtures/advisory/CVE-2020-1234.yml +21 -0
  50. data/spec/fixtures/{not_a_hash.yml → advisory/not_a_hash.yml} +0 -0
  51. data/spec/fixtures/config/bad/empty.yml +0 -0
  52. data/spec/fixtures/config/bad/ignore_contains_a_non_string.yml +4 -0
  53. data/spec/fixtures/config/bad/ignore_is_not_an_array.yml +3 -0
  54. data/spec/fixtures/config/valid.yml +4 -0
  55. data/spec/fixtures/lib/bundler/audit/cli/formats/bad.rb +17 -0
  56. data/spec/fixtures/lib/bundler/audit/cli/formats/good.rb +17 -0
  57. data/spec/integration_spec.rb +17 -89
  58. data/spec/report_spec.rb +98 -0
  59. data/spec/results/insecure_source_spec.rb +47 -0
  60. data/spec/results/result_spec.rb +10 -0
  61. data/spec/results/unpatched_gem_spec.rb +123 -0
  62. data/spec/scanner_spec.rb +90 -34
  63. data/spec/spec_helper.rb +40 -35
  64. metadata +47 -383
  65. data/.gitmodules +0 -3
  66. data/.travis.yml +0 -13
  67. data/data/ruby-advisory-db/.gitignore +0 -1
  68. data/data/ruby-advisory-db/.rspec +0 -1
  69. data/data/ruby-advisory-db/.travis.yml +0 -12
  70. data/data/ruby-advisory-db/CONTRIBUTING.md +0 -69
  71. data/data/ruby-advisory-db/CONTRIBUTORS.md +0 -40
  72. data/data/ruby-advisory-db/Gemfile +0 -9
  73. data/data/ruby-advisory-db/Gemfile.lock +0 -40
  74. data/data/ruby-advisory-db/LICENSE.txt +0 -5
  75. data/data/ruby-advisory-db/README.md +0 -99
  76. data/data/ruby-advisory-db/Rakefile +0 -26
  77. data/data/ruby-advisory-db/gems/Arabic-Prawn/OSVDB-104365.yml +0 -12
  78. data/data/ruby-advisory-db/gems/RedCloth/CVE-2012-6684.yml +0 -21
  79. data/data/ruby-advisory-db/gems/VladTheEnterprising/CVE-2014-4995.yml +0 -13
  80. data/data/ruby-advisory-db/gems/VladTheEnterprising/CVE-2014-4996.yml +0 -13
  81. data/data/ruby-advisory-db/gems/actionmailer/OSVDB-98629.yml +0 -17
  82. data/data/ruby-advisory-db/gems/actionpack/CVE-2014-0130.yml +0 -23
  83. data/data/ruby-advisory-db/gems/actionpack/CVE-2014-7818.yml +0 -24
  84. data/data/ruby-advisory-db/gems/actionpack/CVE-2014-7829.yml +0 -26
  85. data/data/ruby-advisory-db/gems/actionpack/CVE-2015-7576.yml +0 -116
  86. data/data/ruby-advisory-db/gems/actionpack/CVE-2015-7581.yml +0 -55
  87. data/data/ruby-advisory-db/gems/actionpack/CVE-2016-0751.yml +0 -71
  88. data/data/ruby-advisory-db/gems/actionpack/CVE-2016-0752.yml +0 -96
  89. data/data/ruby-advisory-db/gems/actionpack/CVE-2016-2097.yml +0 -90
  90. data/data/ruby-advisory-db/gems/actionpack/CVE-2016-2098.yml +0 -89
  91. data/data/ruby-advisory-db/gems/actionpack/CVE-2016-6316.yml +0 -57
  92. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100524.yml +0 -20
  93. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100525.yml +0 -21
  94. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100526.yml +0 -27
  95. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100527.yml +0 -24
  96. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100528.yml +0 -22
  97. data/data/ruby-advisory-db/gems/actionpack/OSVDB-103439.yml +0 -24
  98. data/data/ruby-advisory-db/gems/actionpack/OSVDB-103440.yml +0 -22
  99. data/data/ruby-advisory-db/gems/actionpack/OSVDB-74616.yml +0 -18
  100. data/data/ruby-advisory-db/gems/actionpack/OSVDB-77199.yml +0 -23
  101. data/data/ruby-advisory-db/gems/actionpack/OSVDB-79727.yml +0 -26
  102. data/data/ruby-advisory-db/gems/actionpack/OSVDB-84243.yml +0 -28
  103. data/data/ruby-advisory-db/gems/actionpack/OSVDB-84513.yml +0 -23
  104. data/data/ruby-advisory-db/gems/actionpack/OSVDB-84515.yml +0 -26
  105. data/data/ruby-advisory-db/gems/actionpack/OSVDB-89026.yml +0 -24
  106. data/data/ruby-advisory-db/gems/actionpack/OSVDB-91452.yml +0 -20
  107. data/data/ruby-advisory-db/gems/actionpack/OSVDB-91454.yml +0 -23
  108. data/data/ruby-advisory-db/gems/actionview/CVE-2016-0752.yml +0 -92
  109. data/data/ruby-advisory-db/gems/actionview/CVE-2016-2097.yml +0 -89
  110. data/data/ruby-advisory-db/gems/actionview/CVE-2016-6316.yml +0 -56
  111. data/data/ruby-advisory-db/gems/activemodel/CVE-2016-0753.yml +0 -92
  112. data/data/ruby-advisory-db/gems/activerecord/CVE-2014-3514.yml +0 -23
  113. data/data/ruby-advisory-db/gems/activerecord/CVE-2015-7577.yml +0 -107
  114. data/data/ruby-advisory-db/gems/activerecord/CVE-2016-6317.yml +0 -73
  115. data/data/ruby-advisory-db/gems/activerecord/OSVDB-103438.yml +0 -23
  116. data/data/ruby-advisory-db/gems/activerecord/OSVDB-108664.yml +0 -23
  117. data/data/ruby-advisory-db/gems/activerecord/OSVDB-108665.yml +0 -24
  118. data/data/ruby-advisory-db/gems/activerecord/OSVDB-82403.yml +0 -25
  119. data/data/ruby-advisory-db/gems/activerecord/OSVDB-82610.yml +0 -24
  120. data/data/ruby-advisory-db/gems/activerecord/OSVDB-88661.yml +0 -20
  121. data/data/ruby-advisory-db/gems/activerecord/OSVDB-89025.yml +0 -24
  122. data/data/ruby-advisory-db/gems/activerecord/OSVDB-90072.yml +0 -21
  123. data/data/ruby-advisory-db/gems/activerecord/OSVDB-90073.yml +0 -23
  124. data/data/ruby-advisory-db/gems/activerecord/OSVDB-91453.yml +0 -26
  125. data/data/ruby-advisory-db/gems/activerecord-jdbc-adapter/OSVDB-114854.yml +0 -20
  126. data/data/ruby-advisory-db/gems/activerecord-oracle_enhanced-adapter/OSVDB-95376.yml +0 -15
  127. data/data/ruby-advisory-db/gems/activeresource/OSVDB-95749.yml +0 -15
  128. data/data/ruby-advisory-db/gems/activesupport/CVE-2015-3226.yml +0 -54
  129. data/data/ruby-advisory-db/gems/activesupport/CVE-2015-3227.yml +0 -32
  130. data/data/ruby-advisory-db/gems/activesupport/OSVDB-79726.yml +0 -26
  131. data/data/ruby-advisory-db/gems/activesupport/OSVDB-84516.yml +0 -23
  132. data/data/ruby-advisory-db/gems/activesupport/OSVDB-89594.yml +0 -25
  133. data/data/ruby-advisory-db/gems/activesupport/OSVDB-91451.yml +0 -28
  134. data/data/ruby-advisory-db/gems/administrate/CVE-2016-3098.yml +0 -14
  135. data/data/ruby-advisory-db/gems/aescrypt/CVE-2013-7463.yml +0 -10
  136. data/data/ruby-advisory-db/gems/archive-tar-minitar/CVE-2016-10173.yml +0 -16
  137. data/data/ruby-advisory-db/gems/as/OSVDB-112683.yml +0 -10
  138. data/data/ruby-advisory-db/gems/authlogic/OSVDB-89064.yml +0 -15
  139. data/data/ruby-advisory-db/gems/auto_awesomplete/OSVDB-132800.yml +0 -11
  140. data/data/ruby-advisory-db/gems/auto_select2/OSVDB-132800.yml +0 -13
  141. data/data/ruby-advisory-db/gems/awesome_spawn/CVE-2014-0156.yml +0 -19
  142. data/data/ruby-advisory-db/gems/backup-agoddard/OSVDB-108578.yml +0 -8
  143. data/data/ruby-advisory-db/gems/backup_checksum/OSVDB-108569.yml +0 -12
  144. data/data/ruby-advisory-db/gems/backup_checksum/OSVDB-108570.yml +0 -10
  145. data/data/ruby-advisory-db/gems/bcrypt/OSVDB-62067.yml +0 -17
  146. data/data/ruby-advisory-db/gems/bcrypt-ruby/OSVDB-62067.yml +0 -19
  147. data/data/ruby-advisory-db/gems/bio-basespace-sdk/OSVDB-101031.yml +0 -8
  148. data/data/ruby-advisory-db/gems/brbackup/OSVDB-108899.yml +0 -12
  149. data/data/ruby-advisory-db/gems/brbackup/OSVDB-108900.yml +0 -11
  150. data/data/ruby-advisory-db/gems/brbackup/OSVDB-108901.yml +0 -11
  151. data/data/ruby-advisory-db/gems/bson/CVE-2015-4412.yml +0 -16
  152. data/data/ruby-advisory-db/gems/builder/OSVDB-95668.yml +0 -13
  153. data/data/ruby-advisory-db/gems/bundler/OSVDB-110004.yml +0 -15
  154. data/data/ruby-advisory-db/gems/bundler/OSVDB-115090.yml +0 -13
  155. data/data/ruby-advisory-db/gems/bundler/OSVDB-115091.yml +0 -12
  156. data/data/ruby-advisory-db/gems/bundler/OSVDB-115917.yml +0 -12
  157. data/data/ruby-advisory-db/gems/cap-strap/OSVDB-108574.yml +0 -8
  158. data/data/ruby-advisory-db/gems/cap-strap/OSVDB-108575.yml +0 -7
  159. data/data/ruby-advisory-db/gems/ciborg/OSVDB-108586.yml +0 -8
  160. data/data/ruby-advisory-db/gems/cocaine/OSVDB-98835.yml +0 -15
  161. data/data/ruby-advisory-db/gems/codders-dataset/OSVDB-108582.yml +0 -8
  162. data/data/ruby-advisory-db/gems/codders-dataset/OSVDB-108583.yml +0 -8
  163. data/data/ruby-advisory-db/gems/colorscore/CVE-2015-7541.yml +0 -21
  164. data/data/ruby-advisory-db/gems/command_wrap/OSVDB-91450.yml +0 -9
  165. data/data/ruby-advisory-db/gems/crack/OSVDB-90742.yml +0 -17
  166. data/data/ruby-advisory-db/gems/cremefraiche/OSVDB-93395.yml +0 -11
  167. data/data/ruby-advisory-db/gems/curb/OSVDB-114600.yml +0 -12
  168. data/data/ruby-advisory-db/gems/curl/OSVDB-91230.yml +0 -13
  169. data/data/ruby-advisory-db/gems/devise/CVE-2015-8314.yml +0 -14
  170. data/data/ruby-advisory-db/gems/devise/OSVDB-114435.yml +0 -17
  171. data/data/ruby-advisory-db/gems/devise/OSVDB-89642.yml +0 -20
  172. data/data/ruby-advisory-db/gems/devise-two-factor/CVE-2015-7225.yml +0 -22
  173. data/data/ruby-advisory-db/gems/doorkeeper/CVE-2014-8144.yml +0 -26
  174. data/data/ruby-advisory-db/gems/doorkeeper/CVE-2016-6582.yml +0 -43
  175. data/data/ruby-advisory-db/gems/doorkeeper/OSVDB-118830.yml +0 -17
  176. data/data/ruby-advisory-db/gems/dragonfly/OSVDB-110439.yml +0 -13
  177. data/data/ruby-advisory-db/gems/dragonfly/OSVDB-90647.yml +0 -16
  178. data/data/ruby-advisory-db/gems/dragonfly/OSVDB-96798.yml +0 -14
  179. data/data/ruby-advisory-db/gems/dragonfly/OSVDB-97854.yml +0 -12
  180. data/data/ruby-advisory-db/gems/echor/OSVDB-102129.yml +0 -12
  181. data/data/ruby-advisory-db/gems/echor/OSVDB-102130.yml +0 -11
  182. data/data/ruby-advisory-db/gems/ember-source/CVE-2013-4170.yml +0 -25
  183. data/data/ruby-advisory-db/gems/ember-source/CVE-2014-0013.yml +0 -33
  184. data/data/ruby-advisory-db/gems/ember-source/CVE-2014-0014.yml +0 -30
  185. data/data/ruby-advisory-db/gems/ember-source/CVE-2014-0046.yml +0 -26
  186. data/data/ruby-advisory-db/gems/ember-source/CVE-2015-1866.yml +0 -26
  187. data/data/ruby-advisory-db/gems/ember-source/CVE-2015-7565.yml +0 -30
  188. data/data/ruby-advisory-db/gems/enum_column3/OSVDB-94679.yml +0 -9
  189. data/data/ruby-advisory-db/gems/espeak-ruby/CVE-2016-10193.yml +0 -15
  190. data/data/ruby-advisory-db/gems/extlib/OSVDB-90740.yml +0 -18
  191. data/data/ruby-advisory-db/gems/fastreader/OSVDB-91232.yml +0 -13
  192. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-101445.yml +0 -17
  193. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-101446.yml +0 -19
  194. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-101447.yml +0 -17
  195. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-101448.yml +0 -19
  196. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-101700.yml +0 -16
  197. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-110420.yml +0 -19
  198. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-118465.yml +0 -17
  199. data/data/ruby-advisory-db/gems/features/OSVDB-96975.yml +0 -8
  200. data/data/ruby-advisory-db/gems/festivaltts4r/CVE-2016-10194.yml +0 -12
  201. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90715.yml +0 -7
  202. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90716.yml +0 -7
  203. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90717.yml +0 -8
  204. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90718.yml +0 -7
  205. data/data/ruby-advisory-db/gems/flash_tool/OSVDB-90829.yml +0 -8
  206. data/data/ruby-advisory-db/gems/flavour_saver/OSVDB-110796.yml +0 -14
  207. data/data/ruby-advisory-db/gems/flukso4r/OSVDB-101577.yml +0 -7
  208. data/data/ruby-advisory-db/gems/fog-dragonfly/OSVDB-110439.yml +0 -15
  209. data/data/ruby-advisory-db/gems/fog-dragonfly/OSVDB-90647.yml +0 -16
  210. data/data/ruby-advisory-db/gems/fog-dragonfly/OSVDB-96798.yml +0 -16
  211. data/data/ruby-advisory-db/gems/fog-dragonfly/OSVDB-97854.yml +0 -12
  212. data/data/ruby-advisory-db/gems/ftpd/OSVDB-90784.yml +0 -18
  213. data/data/ruby-advisory-db/gems/git-fastclone/CVE-2015-8968.yml +0 -21
  214. data/data/ruby-advisory-db/gems/git-fastclone/CVE-2015-8969.yml +0 -13
  215. data/data/ruby-advisory-db/gems/gitlab-grit/OSVDB-99370.yml +0 -14
  216. data/data/ruby-advisory-db/gems/gnms/OSVDB-108594.yml +0 -7
  217. data/data/ruby-advisory-db/gems/gollum/CVE-2015-7314.yml +0 -13
  218. data/data/ruby-advisory-db/gems/gollum-grit_adapter/CVE-2014-9489.yml +0 -23
  219. data/data/ruby-advisory-db/gems/gtk2/OSVDB-40774.yml +0 -20
  220. data/data/ruby-advisory-db/gems/gyazo/OSVDB-108563.yml +0 -10
  221. data/data/ruby-advisory-db/gems/handlebars-source/OSVDB-131671.yml +0 -17
  222. data/data/ruby-advisory-db/gems/http/CVE-2015-1828.yml +0 -14
  223. data/data/ruby-advisory-db/gems/httparty/OSVDB-90741.yml +0 -14
  224. data/data/ruby-advisory-db/gems/i18n/OSVDB-100528.yml +0 -17
  225. data/data/ruby-advisory-db/gems/jquery-rails/CVE-2015-1840.yml +0 -36
  226. data/data/ruby-advisory-db/gems/jquery-ujs/CVE-2015-1840.yml +0 -35
  227. data/data/ruby-advisory-db/gems/jruby-openssl/CVE-2009-4123.yml +0 -16
  228. data/data/ruby-advisory-db/gems/jruby-sandbox/OSVDB-106279.yml +0 -12
  229. data/data/ruby-advisory-db/gems/json/OSVDB-101137.yml +0 -17
  230. data/data/ruby-advisory-db/gems/json/OSVDB-101157.yml +0 -14
  231. data/data/ruby-advisory-db/gems/json/OSVDB-90074.yml +0 -23
  232. data/data/ruby-advisory-db/gems/kafo/OSVDB-106826.yml +0 -15
  233. data/data/ruby-advisory-db/gems/kajam/OSVDB-108529.yml +0 -12
  234. data/data/ruby-advisory-db/gems/kajam/OSVDB-108530.yml +0 -11
  235. data/data/ruby-advisory-db/gems/karo/OSVDB-108573.yml +0 -10
  236. data/data/ruby-advisory-db/gems/karteek-docsplit/OSVDB-92117.yml +0 -9
  237. data/data/ruby-advisory-db/gems/kcapifony/OSVDB-108571.yml +0 -8
  238. data/data/ruby-advisory-db/gems/kcapifony/OSVDB-108572.yml +0 -7
  239. data/data/ruby-advisory-db/gems/kelredd-pruview/OSVDB-92228.yml +0 -9
  240. data/data/ruby-advisory-db/gems/kompanee-recipes/OSVDB-108593.yml +0 -12
  241. data/data/ruby-advisory-db/gems/lawn-login/OSVDB-108576.yml +0 -8
  242. data/data/ruby-advisory-db/gems/ldap_fluff/OSVDB-90579.yml +0 -15
  243. data/data/ruby-advisory-db/gems/ldoce/OSVDB-91870.yml +0 -9
  244. data/data/ruby-advisory-db/gems/lean-ruport/OSVDB-108581.yml +0 -8
  245. data/data/ruby-advisory-db/gems/lingq/OSVDB-108585.yml +0 -7
  246. data/data/ruby-advisory-db/gems/loofah/OSVDB-90945.yml +0 -21
  247. data/data/ruby-advisory-db/gems/lynx/OSVDB-108579.yml +0 -7
  248. data/data/ruby-advisory-db/gems/lynx/OSVDB-108580.yml +0 -8
  249. data/data/ruby-advisory-db/gems/mail/OSVDB-131677.yml +0 -26
  250. data/data/ruby-advisory-db/gems/mail/OSVDB-70667.yml +0 -21
  251. data/data/ruby-advisory-db/gems/mail/OSVDB-81631.yml +0 -14
  252. data/data/ruby-advisory-db/gems/mail/OSVDB-81632.yml +0 -16
  253. data/data/ruby-advisory-db/gems/mapbox-rails/OSVDB-129854.yml +0 -21
  254. data/data/ruby-advisory-db/gems/mapbox-rails/OSVDB-132871.yml +0 -22
  255. data/data/ruby-advisory-db/gems/md2pdf/OSVDB-92290.yml +0 -9
  256. data/data/ruby-advisory-db/gems/mini_magick/OSVDB-91231.yml +0 -15
  257. data/data/ruby-advisory-db/gems/minitar/CVE-2016-10173.yml +0 -16
  258. data/data/ruby-advisory-db/gems/moped/CVE-2015-4410.yml +0 -17
  259. data/data/ruby-advisory-db/gems/multi_xml/OSVDB-89148.yml +0 -16
  260. data/data/ruby-advisory-db/gems/mustache-js-rails/OSVDB-131671.yml +0 -17
  261. data/data/ruby-advisory-db/gems/net-ldap/OSVDB-106108.yml +0 -14
  262. data/data/ruby-advisory-db/gems/newrelic_rpm/OSVDB-90189.yml +0 -17
  263. data/data/ruby-advisory-db/gems/nokogiri/CVE-2015-1819.yml +0 -52
  264. data/data/ruby-advisory-db/gems/nokogiri/CVE-2015-5312.yml +0 -92
  265. data/data/ruby-advisory-db/gems/nokogiri/CVE-2015-7499.yml +0 -37
  266. data/data/ruby-advisory-db/gems/nokogiri/CVE-2015-8806.yml +0 -42
  267. data/data/ruby-advisory-db/gems/nokogiri/CVE-2016-4658.yml +0 -32
  268. data/data/ruby-advisory-db/gems/nokogiri/CVE-2017-5029.yml +0 -44
  269. data/data/ruby-advisory-db/gems/nokogiri/OSVDB-101179.yml +0 -18
  270. data/data/ruby-advisory-db/gems/nokogiri/OSVDB-101458.yml +0 -15
  271. data/data/ruby-advisory-db/gems/nokogiri/OSVDB-118481.yml +0 -15
  272. data/data/ruby-advisory-db/gems/nokogiri/OSVDB-90946.yml +0 -15
  273. data/data/ruby-advisory-db/gems/nori/OSVDB-90196.yml +0 -19
  274. data/data/ruby-advisory-db/gems/omniauth-facebook/OSVDB-99693.yml +0 -22
  275. data/data/ruby-advisory-db/gems/omniauth-facebook/OSVDB-99888.yml +0 -17
  276. data/data/ruby-advisory-db/gems/omniauth-oauth2/OSVDB-90264.yml +0 -16
  277. data/data/ruby-advisory-db/gems/open-uri-cached/OSVDB-121701.yml +0 -13
  278. data/data/ruby-advisory-db/gems/paperclip/CVE-2015-2963.yml +0 -16
  279. data/data/ruby-advisory-db/gems/paperclip/OSVDB-103151.yml +0 -13
  280. data/data/ruby-advisory-db/gems/paratrooper-newrelic/OSVDB-101839.yml +0 -13
  281. data/data/ruby-advisory-db/gems/paratrooper-pingdom/OSVDB-101847.yml +0 -13
  282. data/data/ruby-advisory-db/gems/passenger/CVE-2014-1831.yml +0 -13
  283. data/data/ruby-advisory-db/gems/passenger/CVE-2014-1832.yml +0 -13
  284. data/data/ruby-advisory-db/gems/passenger/CVE-2015-7519.yml +0 -17
  285. data/data/ruby-advisory-db/gems/passenger/CVE-2016-10345.yml +0 -16
  286. data/data/ruby-advisory-db/gems/passenger/OSVDB-90738.yml +0 -16
  287. data/data/ruby-advisory-db/gems/passenger/OSVDB-93752.yml +0 -15
  288. data/data/ruby-advisory-db/gems/passenger/OSVDB-94074.yml +0 -14
  289. data/data/ruby-advisory-db/gems/pdfkit/OSVDB-90867.yml +0 -11
  290. data/data/ruby-advisory-db/gems/point-cli/OSVDB-108577.yml +0 -8
  291. data/data/ruby-advisory-db/gems/quick_magick/OSVDB-106954.yml +0 -7
  292. data/data/ruby-advisory-db/gems/rack/CVE-2015-3225.yml +0 -18
  293. data/data/ruby-advisory-db/gems/rack/OSVDB-78121.yml +0 -21
  294. data/data/ruby-advisory-db/gems/rack/OSVDB-89317.yml +0 -21
  295. data/data/ruby-advisory-db/gems/rack/OSVDB-89320.yml +0 -19
  296. data/data/ruby-advisory-db/gems/rack/OSVDB-89327.yml +0 -20
  297. data/data/ruby-advisory-db/gems/rack/OSVDB-89938.yml +0 -18
  298. data/data/ruby-advisory-db/gems/rack/OSVDB-89939.yml +0 -23
  299. data/data/ruby-advisory-db/gems/rack-attack/OSVDB-132234.yml +0 -26
  300. data/data/ruby-advisory-db/gems/rack-cache/OSVDB-83077.yml +0 -18
  301. data/data/ruby-advisory-db/gems/rack-mini-profiler/CVE-2016-4442.yml +0 -17
  302. data/data/ruby-advisory-db/gems/rack-ssl/OSVDB-104734.yml +0 -11
  303. data/data/ruby-advisory-db/gems/rails-html-sanitizer/CVE-2015-7578.yml +0 -47
  304. data/data/ruby-advisory-db/gems/rails-html-sanitizer/CVE-2015-7579.yml +0 -75
  305. data/data/ruby-advisory-db/gems/rails-html-sanitizer/CVE-2015-7580.yml +0 -70
  306. data/data/ruby-advisory-db/gems/rbovirt/OSVDB-104080.yml +0 -20
  307. data/data/ruby-advisory-db/gems/rdoc/OSVDB-90004.yml +0 -27
  308. data/data/ruby-advisory-db/gems/redcarpet/CVE-2015-5147.yml +0 -17
  309. data/data/ruby-advisory-db/gems/redcarpet/OSVDB-120415.yml +0 -16
  310. data/data/ruby-advisory-db/gems/redis-namespace/OSVDB-96425.yml +0 -15
  311. data/data/ruby-advisory-db/gems/refile/OSVDB-120857.yml +0 -16
  312. data/data/ruby-advisory-db/gems/rest-client/CVE-2015-1820.yml +0 -23
  313. data/data/ruby-advisory-db/gems/rest-client/OSVDB-117461.yml +0 -13
  314. data/data/ruby-advisory-db/gems/rgpg/OSVDB-95948.yml +0 -15
  315. data/data/ruby-advisory-db/gems/ruby-saml/CVE-2016-5697.yml +0 -17
  316. data/data/ruby-advisory-db/gems/ruby-saml/OSVDB-117903.yml +0 -13
  317. data/data/ruby-advisory-db/gems/ruby-saml/OSVDB-124383.yml +0 -11
  318. data/data/ruby-advisory-db/gems/ruby-saml/OSVDB-124991.yml +0 -13
  319. data/data/ruby-advisory-db/gems/ruby_parser/OSVDB-90561.yml +0 -11
  320. data/data/ruby-advisory-db/gems/rubyzip/CVE-2017-5946.yml +0 -14
  321. data/data/ruby-advisory-db/gems/safemode/CVE-2016-3693.yml +0 -13
  322. data/data/ruby-advisory-db/gems/screen_capture/OSVDB-107783.yml +0 -7
  323. data/data/ruby-advisory-db/gems/sentry-raven/OSVDB-115654.yml +0 -14
  324. data/data/ruby-advisory-db/gems/sfpagent/OSVDB-105971.yml +0 -15
  325. data/data/ruby-advisory-db/gems/show_in_browser/OSVDB-93490.yml +0 -8
  326. data/data/ruby-advisory-db/gems/sidekiq/OSVDB-125675.yml +0 -9
  327. data/data/ruby-advisory-db/gems/sidekiq/OSVDB-125676.yml +0 -14
  328. data/data/ruby-advisory-db/gems/sidekiq/OSVDB-125678.yml +0 -9
  329. data/data/ruby-advisory-db/gems/sidekiq-pro/OSVDB-126329.yml +0 -12
  330. data/data/ruby-advisory-db/gems/sidekiq-pro/OSVDB-126330.yml +0 -10
  331. data/data/ruby-advisory-db/gems/sidekiq-pro/OSVDB-126331.yml +0 -14
  332. data/data/ruby-advisory-db/gems/sounder/OSVDB-96278.yml +0 -14
  333. data/data/ruby-advisory-db/gems/spina/CVE-2015-4619.yml +0 -16
  334. data/data/ruby-advisory-db/gems/spree/OSVDB-119205.yml +0 -18
  335. data/data/ruby-advisory-db/gems/spree/OSVDB-125699.yml +0 -18
  336. data/data/ruby-advisory-db/gems/spree/OSVDB-125701.yml +0 -17
  337. data/data/ruby-advisory-db/gems/spree/OSVDB-125712.yml +0 -16
  338. data/data/ruby-advisory-db/gems/spree/OSVDB-125713.yml +0 -15
  339. data/data/ruby-advisory-db/gems/spree/OSVDB-69098.yml +0 -19
  340. data/data/ruby-advisory-db/gems/spree/OSVDB-73751.yml +0 -11
  341. data/data/ruby-advisory-db/gems/spree/OSVDB-76011.yml +0 -15
  342. data/data/ruby-advisory-db/gems/spree/OSVDB-81505.yml +0 -14
  343. data/data/ruby-advisory-db/gems/spree/OSVDB-81506.yml +0 -16
  344. data/data/ruby-advisory-db/gems/spree/OSVDB-90865.yml +0 -20
  345. data/data/ruby-advisory-db/gems/spree/OSVDB-91216.yml +0 -17
  346. data/data/ruby-advisory-db/gems/spree/OSVDB-91217.yml +0 -17
  347. data/data/ruby-advisory-db/gems/spree/OSVDB-91218.yml +0 -17
  348. data/data/ruby-advisory-db/gems/spree/OSVDB-91219.yml +0 -17
  349. data/data/ruby-advisory-db/gems/spree_auth/OSVDB-90865.yml +0 -16
  350. data/data/ruby-advisory-db/gems/spree_auth_devise/OSVDB-90865.yml +0 -20
  351. data/data/ruby-advisory-db/gems/sprockets/CVE-2014-7819.yml +0 -27
  352. data/data/ruby-advisory-db/gems/sprout/OSVDB-100598.yml +0 -16
  353. data/data/ruby-advisory-db/gems/sup/CVE-2013-4478.yml +0 -14
  354. data/data/ruby-advisory-db/gems/sup/CVE-2013-4479.yml +0 -14
  355. data/data/ruby-advisory-db/gems/thumbshooter/OSVDB-91839.yml +0 -9
  356. data/data/ruby-advisory-db/gems/twitter-bootstrap-rails/OSVDB-109206.yml +0 -22
  357. data/data/ruby-advisory-db/gems/uglifier/OSVDB-126747.yml +0 -19
  358. data/data/ruby-advisory-db/gems/web-console/CVE-2015-3224.yml +0 -22
  359. data/data/ruby-advisory-db/gems/web-console/OSVDB-112346.yml +0 -12
  360. data/data/ruby-advisory-db/gems/webbynode/OSVDB-100920.yml +0 -12
  361. data/data/ruby-advisory-db/gems/wicked/OSVDB-98270.yml +0 -14
  362. data/data/ruby-advisory-db/gems/will_paginate/OSVDB-101138.yml +0 -15
  363. data/data/ruby-advisory-db/gems/xaviershay-dm-rails/OSVDB-118579.yml +0 -13
  364. data/data/ruby-advisory-db/lib/cf_scrape.py +0 -5
  365. data/data/ruby-advisory-db/lib/osvdb_scrape.rb +0 -92
  366. data/data/ruby-advisory-db/libraries/rubygems/CVE-2013-4287.yml +0 -19
  367. data/data/ruby-advisory-db/libraries/rubygems/CVE-2013-4363.yml +0 -20
  368. data/data/ruby-advisory-db/libraries/rubygems/CVE-2015-3900.yml +0 -19
  369. data/data/ruby-advisory-db/libraries/rubygems/CVE-2015-4020.yml +0 -19
  370. data/data/ruby-advisory-db/libraries/rubygems/OSVDB-33561.yml +0 -17
  371. data/data/ruby-advisory-db/libraries/rubygems/OSVDB-81444.yml +0 -14
  372. data/data/ruby-advisory-db/libraries/rubygems/OSVDB-85809.yml +0 -16
  373. data/data/ruby-advisory-db/rubies/jruby/CVE-2010-1330.yml +0 -17
  374. data/data/ruby-advisory-db/rubies/jruby/CVE-2011-4838.yml +0 -15
  375. data/data/ruby-advisory-db/rubies/jruby/CVE-2012-5370.yml +0 -17
  376. data/data/ruby-advisory-db/rubies/jruby/OSVDB-94644.yml +0 -12
  377. data/data/ruby-advisory-db/rubies/rbx/OSVDB-78119.yml +0 -13
  378. data/data/ruby-advisory-db/rubies/rbx/OSVDB-87861.yml +0 -17
  379. data/data/ruby-advisory-db/rubies/ruby/CVE-2007-5162.yml +0 -16
  380. data/data/ruby-advisory-db/rubies/ruby/CVE-2007-5770.yml +0 -17
  381. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-1447.yml +0 -15
  382. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-1891.yml +0 -21
  383. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-2376.yml +0 -18
  384. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-3443.yml +0 -17
  385. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-3655.yml +0 -18
  386. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-3656.yml +0 -19
  387. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-3657.yml +0 -16
  388. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-3905.yml +0 -17
  389. data/data/ruby-advisory-db/rubies/ruby/CVE-2009-0642.yml +0 -17
  390. data/data/ruby-advisory-db/rubies/ruby/CVE-2009-5147.yml +0 -13
  391. data/data/ruby-advisory-db/rubies/ruby/CVE-2011-0188.yml +0 -17
  392. data/data/ruby-advisory-db/rubies/ruby/CVE-2011-2686.yml +0 -17
  393. data/data/ruby-advisory-db/rubies/ruby/CVE-2011-2705.yml +0 -16
  394. data/data/ruby-advisory-db/rubies/ruby/CVE-2011-3009.yml +0 -17
  395. data/data/ruby-advisory-db/rubies/ruby/CVE-2012-4464.yml +0 -17
  396. data/data/ruby-advisory-db/rubies/ruby/CVE-2012-4466.yml +0 -16
  397. data/data/ruby-advisory-db/rubies/ruby/CVE-2012-4481.yml +0 -15
  398. data/data/ruby-advisory-db/rubies/ruby/CVE-2015-1855.yml +0 -17
  399. data/data/ruby-advisory-db/rubies/ruby/CVE-2015-7551.yml +0 -19
  400. data/data/ruby-advisory-db/rubies/ruby/CVE-2015-9096.yml +0 -19
  401. data/data/ruby-advisory-db/rubies/ruby/OSVDB-100113.yml +0 -17
  402. data/data/ruby-advisory-db/rubies/ruby/OSVDB-105027.yml +0 -20
  403. data/data/ruby-advisory-db/rubies/ruby/OSVDB-107478.yml +0 -16
  404. data/data/ruby-advisory-db/rubies/ruby/OSVDB-108971.yml +0 -17
  405. data/data/ruby-advisory-db/rubies/ruby/OSVDB-113747.yml +0 -19
  406. data/data/ruby-advisory-db/rubies/ruby/OSVDB-114641.yml +0 -22
  407. data/data/ruby-advisory-db/rubies/ruby/OSVDB-120541.yml +0 -22
  408. data/data/ruby-advisory-db/rubies/ruby/OSVDB-46550.yml +0 -22
  409. data/data/ruby-advisory-db/rubies/ruby/OSVDB-46551.yml +0 -21
  410. data/data/ruby-advisory-db/rubies/ruby/OSVDB-46552.yml +0 -21
  411. data/data/ruby-advisory-db/rubies/ruby/OSVDB-46553.yml +0 -22
  412. data/data/ruby-advisory-db/rubies/ruby/OSVDB-46554.yml +0 -18
  413. data/data/ruby-advisory-db/rubies/ruby/OSVDB-47753.yml +0 -16
  414. data/data/ruby-advisory-db/rubies/ruby/OSVDB-55031.yml +0 -17
  415. data/data/ruby-advisory-db/rubies/ruby/OSVDB-60880.yml +0 -17
  416. data/data/ruby-advisory-db/rubies/ruby/OSVDB-61774.yml +0 -20
  417. data/data/ruby-advisory-db/rubies/ruby/OSVDB-65556.yml +0 -17
  418. data/data/ruby-advisory-db/rubies/ruby/OSVDB-66040.yml +0 -17
  419. data/data/ruby-advisory-db/rubies/ruby/OSVDB-70957.yml +0 -15
  420. data/data/ruby-advisory-db/rubies/ruby/OSVDB-70958.yml +0 -20
  421. data/data/ruby-advisory-db/rubies/ruby/OSVDB-74829.yml +0 -18
  422. data/data/ruby-advisory-db/rubies/ruby/OSVDB-78118.yml +0 -14
  423. data/data/ruby-advisory-db/rubies/ruby/OSVDB-87280.yml +0 -17
  424. data/data/ruby-advisory-db/rubies/ruby/OSVDB-87863.yml +0 -18
  425. data/data/ruby-advisory-db/rubies/ruby/OSVDB-87917.yml +0 -16
  426. data/data/ruby-advisory-db/rubies/ruby/OSVDB-90587.yml +0 -16
  427. data/data/ruby-advisory-db/rubies/ruby/OSVDB-93414.yml +0 -19
  428. data/data/ruby-advisory-db/rubies/ruby/OSVDB-94628.yml +0 -21
  429. data/data/ruby-advisory-db/scripts/post-advisories.sh +0 -18
  430. data/data/ruby-advisory-db/spec/advisory_example.rb +0 -202
  431. data/data/ruby-advisory-db/spec/gem_example.rb +0 -22
  432. data/data/ruby-advisory-db/spec/gems_spec.rb +0 -23
  433. data/data/ruby-advisory-db/spec/library_example.rb +0 -21
  434. data/data/ruby-advisory-db/spec/ruby_example.rb +0 -23
  435. data/data/ruby-advisory-db/spec/spec_helper.rb +0 -1
  436. data/data/ruby-advisory-db.ts +0 -1
@@ -1,9 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gem 'rspec'
4
- gem 'rake'
5
-
6
- group :development do
7
- gem 'pry'
8
- gem 'nokogiri'
9
- end
@@ -1,40 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- coderay (1.1.1)
5
- diff-lcs (1.2.5)
6
- method_source (0.8.2)
7
- mini_portile2 (2.0.0)
8
- nokogiri (1.6.7.2)
9
- mini_portile2 (~> 2.0.0.rc2)
10
- pry (0.10.3)
11
- coderay (~> 1.1.0)
12
- method_source (~> 0.8.1)
13
- slop (~> 3.4)
14
- rake (11.0.1)
15
- rspec (3.4.0)
16
- rspec-core (~> 3.4.0)
17
- rspec-expectations (~> 3.4.0)
18
- rspec-mocks (~> 3.4.0)
19
- rspec-core (3.4.4)
20
- rspec-support (~> 3.4.0)
21
- rspec-expectations (3.4.0)
22
- diff-lcs (>= 1.2.0, < 2.0)
23
- rspec-support (~> 3.4.0)
24
- rspec-mocks (3.4.1)
25
- diff-lcs (>= 1.2.0, < 2.0)
26
- rspec-support (~> 3.4.0)
27
- rspec-support (3.4.1)
28
- slop (3.6.0)
29
-
30
- PLATFORMS
31
- ruby
32
-
33
- DEPENDENCIES
34
- nokogiri
35
- pry
36
- rake
37
- rspec
38
-
39
- BUNDLED WITH
40
- 1.11.2
@@ -1,5 +0,0 @@
1
- If you submit code or data to the ruby-advisory-db that is copyrighted by yourself, upon submission you hereby agree to release it into the public domain.
2
-
3
- However, not all of the ruby-advisory-db can be considered public domain. The ruby-advisory-db may contain some information copyrighted by the Open Source Vulnerability Database (http://osvdb.org). If you use ruby-advisory-db data to build a product or a service, it is your responsibility to familiarize yourself with the terms of their license: http://www.osvdb.org/osvdb_license
4
-
5
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,99 +0,0 @@
1
- # Ruby Advisory Database
2
-
3
- The Ruby Advisory Database is a community effort to compile all security advisories that are relevant to Ruby libraries.
4
-
5
- You can check your own Gemfile.locks against this database by using [bundler-audit](https://github.com/rubysec/bundler-audit).
6
-
7
- ## Support Ruby security!
8
-
9
- Do you know about a vulnerability that isn't listed in this database? Open an issue, submit a PR, or [use this form](https://rubysec.com/advisories/new) which will email the maintainers.
10
-
11
- ## Directory Structure
12
-
13
- The database is a list of directories that match the names of Ruby libraries on
14
- [rubygems.org]. Within each directory are one or more advisory files
15
- for the Ruby library. These advisory files are named using
16
- the advisories' [CVE] identifier number.
17
-
18
- gems/:
19
- actionpack/:
20
- CVE-2014-0130.yml CVE-2014-7818.yml CVE-2014-7829.yml CVE-2015-7576.yml
21
- CVE-2015-7581.yml CVE-2016-0751.yml CVE-2016-0752.yml
22
-
23
- ## Format
24
-
25
- Each advisory file contains the advisory information in [YAML] format:
26
-
27
- ---
28
- gem: examplegem
29
- cve: 2013-0156
30
- url: https://github.com/rubysec/ruby-advisory-db/issues/123456
31
- title: |
32
- Ruby on Rails params_parser.rb Action Pack Type Casting Parameter Parsing
33
- Remote Code Execution
34
-
35
- description: |
36
- Ruby on Rails contains a flaw in params_parser.rb of the Action Pack.
37
- The issue is triggered when a type casting error occurs during the parsing
38
- of parameters. This may allow a remote attacker to potentially execute
39
- arbitrary code.
40
-
41
- cvss_v2: 10.0
42
-
43
- patched_versions:
44
- - ~> 2.3.15
45
- - ~> 3.0.19
46
- - ~> 3.1.10
47
- - ">= 3.2.11"
48
- unaffected_versions:
49
- - ~> 2.4.3
50
-
51
- related:
52
- cve:
53
- - 2013-1234567
54
- - 2013-1234568
55
- url:
56
- - https://github.com/rubysec/ruby-advisory-db/issues/123457
57
-
58
-
59
- ### Schema
60
-
61
- * `gem` \[String\]: Name of the affected gem.
62
- * `framework` \[String\] (optional): Name of framework gem belongs to.
63
- * `platform` \[String\] (optional): If this vulnerability is platform-specific, name of platform this vulnerability affects (e.g. JRuby)
64
- * `cve` \[String\]: CVE id.
65
- * `osvdb` \[Integer\]: OSVDB id.
66
- * `url` \[String\]: The URL to the full advisory.
67
- * `title` \[String\]: The title of the advisory.
68
- * `date` \[Date\]: Disclosure date of the advisory.
69
- * `description` \[String\]: Multi-paragraph description of the vulnerability.
70
- * `cvss_v2` \[Float\]: The [CVSSv2] score for the vulnerability.
71
- * `cvss_v3` \[Float\]: The [CVSSv3] score for the vulnerability.
72
- * `unaffected_versions` \[Array\<String\>\] (optional): The version requirements for the
73
- unaffected versions of the Ruby library.
74
- * `patched_versions` \[Array\<String\>\]: The version requirements for the
75
- patched versions of the Ruby library.
76
- * `related` \[Hash\<Array\<String\>\>\]: Sometimes an advisory references many urls and cves. Supported keys: `cve` and `url`
77
-
78
- ### Tests
79
- Prior to submitting a pull request, run the tests:
80
-
81
- ```
82
- bundle install
83
- bundle exec rspec
84
- ```
85
-
86
- ## Credits
87
-
88
- Please see [CONTRIBUTORS.md].
89
-
90
- This database also includes data from the [Open Source Vulnerability Database][OSVDB]
91
- developed by the Open Security Foundation (OSF) and its contributors.
92
-
93
- [rubygems.org]: https://rubygems.org/
94
- [CVE]: http://cve.mitre.org/
95
- [OSVDB]: http://www.osvdb.org/
96
- [CVSSv2]: https://www.first.org/cvss/v2/guide
97
- [CVSSv3]: https://www.first.org/cvss/user-guide
98
- [YAML]: http://www.yaml.org/
99
- [CONTRIBUTORS.md]: https://github.com/rubysec/ruby-advisory-db/blob/master/CONTRIBUTORS.md
@@ -1,26 +0,0 @@
1
- require 'yaml'
2
-
3
- namespace :lint do
4
- begin
5
- require 'rspec/core/rake_task'
6
-
7
- RSpec::Core::RakeTask.new(:yaml)
8
- rescue LoadError => e
9
- task :spec do
10
- abort "Please run `gem install rspec` to install RSpec."
11
- end
12
- end
13
-
14
- task :cve do
15
- Dir.glob('{gems,libraries,rubies}/*/*.yml') do |path|
16
- advisory = YAML.load_file(path)
17
-
18
- unless advisory['cve']
19
- puts "Missing CVE: #{path}"
20
- end
21
- end
22
- end
23
- end
24
-
25
- task :lint => ['lint:yaml', 'lint:cve']
26
- task :default => :lint
@@ -1,12 +0,0 @@
1
- ---
2
- gem: Arabic-Prawn
3
- cve: 2014-2322
4
- osvdb: 104365
5
- url: http://osvdb.org/show/osvdb/104365
6
- title: Arabic Prawn Gem for Ruby lib/string_utf_support.rb User Input Handling Remote Command Injection
7
- date: 2014-03-10
8
- description: |
9
- Arabic Prawn Gem for Ruby contains a flaw in the lib/string_utf_support.rb
10
- file. The issue is due to the program failing to sanitize user input. This may
11
- allow a remote attacker to inject arbitrary commands.
12
- cvss_v2: 7.5
@@ -1,21 +0,0 @@
1
- ---
2
- gem: RedCloth
3
- cve: 2012-6684
4
- osvdb: 115941
5
- url: https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-6684
6
- title: RedCloth Gem for Ruby Textile Link Parsing XSS
7
- date: 2012-02-29
8
- description: |
9
- RedCloth Gem for Ruby contains a flaw that allows a cross-site scripting (XSS)
10
- attack. This flaw exists because the program does not validate input when
11
- parsing textile links before returning it to users. This may allow a remote
12
- attacker to create a specially crafted request that would execute arbitrary
13
- script code in a user's browser session within the trust relationship between
14
- their browser and the server.
15
- cvss_v2: 4.3
16
- patched_versions:
17
- - ">= 4.3.0"
18
- related:
19
- url:
20
- - https://github.com/jgarber/redcloth/commit/2f6dab4d6aea5cee778d2f37a135637fe3f1573c
21
- - http://co3k.org/blog/redcloth-unfixed-xss-en
@@ -1,13 +0,0 @@
1
- ---
2
- gem: VladTheEnterprising
3
- cve: 2014-4995
4
- osvdb: 108728
5
- url: http://www.osvdb.org/show/osvdb/108728
6
- title: VladTheEnterprising Gem for Ruby /tmp/my.cnf.#{target_host} Symlink Multiple Impact
7
- date: 2014-06-30
8
- description: |
9
- VladTheEnterprising Gem for Ruby contains a flaw as the program creates
10
- temporary files insecurely. It is possible for a local attacker to use
11
- a symlink attack against the /tmp/my.cnf.#{target_host} file they can
12
- overwrite arbitrary files, gain access to the MySQL root password,
13
- or inject arbitrary commands.
@@ -1,13 +0,0 @@
1
- ---
2
- gem: VladTheEnterprising
3
- cve: 2014-4996
4
- osvdb: 108728
5
- url: http://www.osvdb.org/show/osvdb/108728
6
- title: VladTheEnterprising Gem for Ruby /tmp/my.cnf.#{target_host} Symlink Multiple Impact
7
- date: 2014-06-30
8
- description: |
9
- VladTheEnterprising Gem for Ruby contains a flaw as the program creates
10
- temporary files insecurely. It is possible for a local attacker to use
11
- a symlink attack against the /tmp/my.cnf.#{target_host} file they can
12
- overwrite arbitrary files, gain access to the MySQL root password,
13
- or inject arbitrary commands.
@@ -1,17 +0,0 @@
1
- ---
2
- gem: actionmailer
3
- cve: 2013-4389
4
- osvdb: 98629
5
- url: http://www.osvdb.org/show/osvdb/98629
6
- title: Action Mailer Gem for Ruby contains a possible DoS Vulnerability
7
- date: 2013-10-16
8
- description: Action Mailer Gem for Ruby contains a format string flaw in
9
- the Log Subscriber component. The issue is triggered as format string
10
- specifiers (e.g. %s and %x) are not properly sanitized in user-supplied
11
- input when handling email addresses. This may allow a remote attacker
12
- to cause a denial of service
13
- cvss_v2: 4.3
14
- unaffected_versions:
15
- - ~> 2.3.2
16
- patched_versions:
17
- - '>= 3.2.15'
@@ -1,23 +0,0 @@
1
- ---
2
- gem: actionpack
3
- framework: rails
4
- cve: 2014-0130
5
- url: https://groups.google.com/forum/#!topic/rubyonrails-security/NkKc7vTW70o
6
- title: Directory Traversal Vulnerability With Certain Route Configurations
7
- date: 2014-05-06
8
-
9
- description: |
10
- There is a vulnerability in the 'implicit render'
11
- functionality in Ruby on Rails.The implicit render functionality
12
- allows controllers to render a template, even if there is no
13
- explicit action with the corresponding name. This module does not
14
- perform adequate input sanitization which could allow an attacker to
15
- use a specially crafted request to retrieve arbitrary files from the
16
- rails application server.
17
-
18
- cvss_v2: 4.3
19
-
20
- patched_versions:
21
- - ~> 3.2.18
22
- - ~> 4.0.5
23
- - ">= 4.1.1"
@@ -1,24 +0,0 @@
1
- ---
2
- gem: actionpack
3
- framework: rails
4
- cve: 2014-7818
5
- url: https://groups.google.com/forum/#!topic/rubyonrails-security/dCp7duBiQgo
6
- title: Arbitrary file existence disclosure in Action Pack
7
- date: 2014-10-30
8
-
9
- description: |
10
- Specially crafted requests can be used to determine whether a file exists on
11
- the filesystem that is outside the Rails application's root directory. The
12
- files will not be served, but attackers can determine whether or not the file
13
- exists.
14
-
15
- cvss_v2: 4.3
16
-
17
- unaffected_versions:
18
- - "< 3.0.0"
19
-
20
- patched_versions:
21
- - ~> 3.2.20
22
- - ~> 4.0.11
23
- - ~> 4.1.7
24
- - ">= 4.2.0.beta3"
@@ -1,26 +0,0 @@
1
- ---
2
- gem: actionpack
3
- framework: rails
4
- cve: 2014-7829
5
- url: https://groups.google.com/forum/#!topic/rubyonrails-security/rMTQy4oRCGk
6
- title: Arbitrary file existence disclosure in Action Pack
7
- date: 2014-11-17
8
-
9
- description: |
10
- Specially crafted requests can be used to determine whether a file exists on
11
- the filesystem that is outside the Rails application's root directory. The
12
- files will not be served, but attackers can determine whether or not the file
13
- exists. This vulnerability is very similar to CVE-2014-7818, but the
14
- specially crafted string is slightly different.
15
-
16
- cvss_v2: 5.0
17
-
18
- unaffected_versions:
19
- - "< 3.0.0"
20
-
21
- patched_versions:
22
- - ~> 3.2.21
23
- - ~> 4.0.11.1
24
- - ~> 4.0.12
25
- - ~> 4.1.7.1
26
- - ">= 4.1.8"
@@ -1,116 +0,0 @@
1
- ---
2
- gem: actionpack
3
- framework: rails
4
- cve: 2015-7576
5
- date: 2016-01-25
6
- url: "https://groups.google.com/forum/#!topic/rubyonrails-security/ANv0HDHEC3k"
7
-
8
- title: Timing attack vulnerability in basic authentication in Action Controller.
9
-
10
- description: |
11
- There is a timing attack vulnerability in the basic authentication support
12
- in Action Controller. This vulnerability has been assigned the CVE
13
- identifier CVE-2015-7576.
14
-
15
- Versions Affected: All.
16
- Not affected: None.
17
- Fixed Versions: 5.0.0.beta1.1, 4.2.5.1, 4.1.14.1, 3.2.22.1
18
-
19
- Impact
20
- ------
21
- Due to the way that Action Controller compares user names and passwords in
22
- basic authentication authorization code, it is possible for an attacker to
23
- analyze the time taken by a response and intuit the password.
24
-
25
- For example, this string comparison:
26
-
27
- "foo" == "bar"
28
-
29
- is possibly faster than this comparison:
30
-
31
- "foo" == "fo1"
32
-
33
- Attackers can use this information to attempt to guess the username and
34
- password used in the basic authentication system.
35
-
36
- You can tell you application is vulnerable to this attack by looking for
37
- `http_basic_authenticate_with` method calls in your application.
38
-
39
- All users running an affected release should either upgrade or use one of
40
- the workarounds immediately.
41
-
42
- Releases
43
- --------
44
- The FIXED releases are available at the normal locations.
45
-
46
- Workarounds
47
- -----------
48
- If you can't upgrade, please use the following monkey patch in an initializer
49
- that is loaded before your application:
50
-
51
- ```
52
- $ cat config/initializers/basic_auth_fix.rb
53
- module ActiveSupport
54
- module SecurityUtils
55
- def secure_compare(a, b)
56
- return false unless a.bytesize == b.bytesize
57
-
58
- l = a.unpack "C#{a.bytesize}"
59
-
60
- res = 0
61
- b.each_byte { |byte| res |= byte ^ l.shift }
62
- res == 0
63
- end
64
- module_function :secure_compare
65
-
66
- def variable_size_secure_compare(a, b)
67
- secure_compare(::Digest::SHA256.hexdigest(a), ::Digest::SHA256.hexdigest(b))
68
- end
69
- module_function :variable_size_secure_compare
70
- end
71
- end
72
-
73
- module ActionController
74
- class Base
75
- def self.http_basic_authenticate_with(options = {})
76
- before_action(options.except(:name, :password, :realm)) do
77
- authenticate_or_request_with_http_basic(options[:realm] || "Application") do |name, password|
78
- # This comparison uses & so that it doesn't short circuit and
79
- # uses `variable_size_secure_compare` so that length information
80
- # isn't leaked.
81
- ActiveSupport::SecurityUtils.variable_size_secure_compare(name, options[:name]) &
82
- ActiveSupport::SecurityUtils.variable_size_secure_compare(password, options[:password])
83
- end
84
- end
85
- end
86
- end
87
- end
88
- ```
89
-
90
-
91
- Patches
92
- -------
93
- To aid users who aren't able to upgrade immediately we have provided patches for
94
- the two supported release series. They are in git-am format and consist of a
95
- single changeset.
96
-
97
- * 4-1-basic_auth.patch - Patch for 4.1 series
98
- * 4-2-basic_auth.patch - Patch for 4.2 series
99
- * 5-0-basic_auth.patch - Patch for 5.0 series
100
-
101
- Please note that only the 4.1.x and 4.2.x series are supported at present. Users
102
- of earlier unsupported releases are advised to upgrade as soon as possible as we
103
- cannot guarantee the continued availability of security fixes for unsupported
104
- releases.
105
-
106
- Credits
107
- -------
108
-
109
- Thank you to Daniel Waterworth for reporting the problem and working with us to
110
- fix it.
111
-
112
- patched_versions:
113
- - ">= 5.0.0.beta1.1"
114
- - "~> 4.2.5, >= 4.2.5.1"
115
- - "~> 4.1.14, >= 4.1.14.1"
116
- - "~> 3.2.22.1"
@@ -1,55 +0,0 @@
1
- ---
2
- gem: actionpack
3
- framework: rails
4
- cve: 2015-7581
5
- date: 2016-01-25
6
- url: "https://groups.google.com/forum/#!topic/rubyonrails-security/dthJ5wL69JE"
7
-
8
- title: Object leak vulnerability for wildcard controller routes in Action Pack
9
-
10
- description: |
11
- There is an object leak vulnerability for wildcard controllers in Action Pack.
12
- This vulnerability has been assigned the CVE identifier CVE-2015-7581.
13
-
14
- Versions Affected: >= 4.0.0 and < 5.0.0.beta1
15
- Not affected: < 4.0.0, 5.0.0.beta1 and newer
16
- Fixed Versions: 4.2.5.1, 4.1.14.1
17
-
18
- Impact
19
- ------
20
- Users that have a route that contains the string ":controller" are susceptible
21
- to objects being leaked globally which can lead to unbounded memory growth.
22
- To identify if your application is vulnerable, look for routes that contain
23
- ":controller".
24
-
25
- Internally, Action Pack keeps a map of "url controller name" to "controller
26
- class name". This map is cached globally, and is populated even if the
27
- controller class doesn't actually exist.
28
-
29
- All users running an affected release should either upgrade or use one of the
30
- workarounds immediately.
31
-
32
- Releases
33
- --------
34
- The FIXED releases are available at the normal locations.
35
-
36
- Workarounds
37
- -----------
38
- There are no feasible workarounds for this issue.
39
-
40
- Patches
41
- -------
42
- To aid users who aren't able to upgrade immediately we have provided patches for the two supported release series. They are in git-am format and consist of a single changeset.
43
-
44
- * 4-1-wildcard_route.patch - Patch for 4.1 series
45
- * 4-2-wildcard_route.patch - Patch for 4.2 series
46
-
47
- Please note that only the 4.1.x and 4.2.x series are supported at present. Users of earlier unsupported releases are advised to upgrade as soon as possible as we cannot guarantee the continued availability of security fixes for unsupported releases.
48
-
49
- unaffected_versions:
50
- - "< 4.0.0"
51
- - ">= 5.0.0.beta1"
52
-
53
- patched_versions:
54
- - "~> 4.2.5, >= 4.2.5.1"
55
- - "~> 4.1.14, >= 4.1.14.1"
@@ -1,71 +0,0 @@
1
- ---
2
- gem: actionpack
3
- framework: rails
4
- cve: 2016-0751
5
- date: 2016-01-25
6
- url: "https://groups.google.com/forum/#!topic/rubyonrails-security/9oLY_FCzvoc"
7
-
8
- title: Possible Object Leak and Denial of Service attack in Action Pack
9
-
10
- description: |
11
- There is a possible object leak which can lead to a denial of service
12
- vulnerability in Action Pack. This vulnerability has been
13
- assigned the CVE identifier CVE-2016-0751.
14
-
15
- Versions Affected: All.
16
- Not affected: None.
17
- Fixed Versions: 5.0.0.beta1.1, 4.2.5.1, 4.1.14.1, 3.2.22.1
18
-
19
- Impact
20
- ------
21
- A carefully crafted accept header can cause a global cache of mime types to
22
- grow indefinitely which can lead to a possible denial of service attack in
23
- Action Pack.
24
-
25
- All users running an affected release should either upgrade or use one of the
26
- workarounds immediately.
27
-
28
- Releases
29
- --------
30
- The FIXED releases are available at the normal locations.
31
-
32
- Workarounds
33
- -----------
34
- This attack can be mitigated by a proxy that only allows known mime types in
35
- the Accept header.
36
-
37
- Placing the following code in an initializer will also mitigate the issue:
38
-
39
- ```ruby
40
- require 'action_dispatch/http/mime_type'
41
-
42
- Mime.const_set :LOOKUP, Hash.new { |h,k|
43
- Mime::Type.new(k) unless k.blank?
44
- }
45
- ```
46
-
47
- Patches
48
- -------
49
- To aid users who aren't able to upgrade immediately we have provided patches for
50
- the two supported release series. They are in git-am format and consist of a
51
- single changeset.
52
-
53
- * 5-0-mime_types_leak.patch - Patch for 5.0 series
54
- * 4-2-mime_types_leak.patch - Patch for 4.2 series
55
- * 4-1-mime_types_leak.patch - Patch for 4.1 series
56
- * 3-2-mime_types_leak.patch - Patch for 3.2 series
57
-
58
- Please note that only the 4.1.x and 4.2.x series are supported at present. Users
59
- of earlier unsupported releases are advised to upgrade as soon as possible as we
60
- cannot guarantee the continued availability of security fixes for unsupported
61
- releases.
62
-
63
- Credits
64
- -------
65
- Aaron Patterson <3<3
66
-
67
- patched_versions:
68
- - ">= 5.0.0.beta1.1"
69
- - "~> 4.2.5, >= 4.2.5.1"
70
- - "~> 4.1.14, >= 4.1.14.1"
71
- - "~> 3.2.22.1"
@@ -1,96 +0,0 @@
1
- ---
2
- gem: actionpack
3
- framework: rails
4
- cve: 2016-0752
5
- date: 2016-01-25
6
- url: "https://groups.google.com/forum/#!topic/rubyonrails-security/335P1DcLG00"
7
-
8
- title: Possible Information Leak Vulnerability in Action View
9
- description: |
10
- There is a possible directory traversal and information leak vulnerability in
11
- Action View. This vulnerability has been assigned the CVE identifier
12
- CVE-2016-0752.
13
-
14
- Versions Affected: All.
15
- Not affected: None.
16
- Fixed Versions: 5.0.0.beta1.1, 4.2.5.1, 4.1.14.1, 3.2.22.1
17
-
18
- Impact
19
- ------
20
- Applications that pass unverified user input to the `render` method in a
21
- controller may be vulnerable to an information leak vulnerability.
22
-
23
- Impacted code will look something like this:
24
-
25
- ```ruby
26
- def index
27
- render params[:id]
28
- end
29
- ```
30
-
31
- Carefully crafted requests can cause the above code to render files from
32
- unexpected places like outside the application's view directory, and can
33
- possibly escalate this to a remote code execution attack.
34
-
35
- All users running an affected release should either upgrade or use one of the
36
- workarounds immediately.
37
-
38
- Releases
39
- --------
40
- The FIXED releases are available at the normal locations.
41
-
42
- Workarounds
43
- -----------
44
- A workaround to this issue is to not pass arbitrary user input to the `render`
45
- method. Instead, verify that data before passing it to the `render` method.
46
-
47
- For example, change this:
48
-
49
- ```ruby
50
- def index
51
- render params[:id]
52
- end
53
- ```
54
-
55
- To this:
56
-
57
- ```ruby
58
- def index
59
- render verify_template(params[:id])
60
- end
61
-
62
- private
63
- def verify_template(name)
64
- # add verification logic particular to your application here
65
- end
66
- ```
67
-
68
- Patches
69
- -------
70
- To aid users who aren't able to upgrade immediately we have provided patches for
71
- the two supported release series. They are in git-am format and consist of a
72
- single changeset.
73
-
74
- * 3-2-render_data_leak.patch - Patch for 3.2 series
75
- * 4-1-render_data_leak.patch - Patch for 4.1 series
76
- * 4-2-render_data_leak.patch - Patch for 4.2 series
77
- * 5-0-render_data_leak.patch - Patch for 5.0 series
78
-
79
- Please note that only the 4.1.x and 4.2.x series are supported at present. Users
80
- of earlier unsupported releases are advised to upgrade as soon as possible as we
81
- cannot guarantee the continued availability of security fixes for unsupported
82
- releases.
83
-
84
- Credits
85
- -------
86
- Thanks John Poulin for reporting this!
87
-
88
- unaffected_versions:
89
- # Newer versions are affected, but tracked in the actionview gem.
90
- - ">= 4.1.0"
91
-
92
- patched_versions:
93
- - ">= 5.0.0.beta1.1"
94
- - "~> 4.2.5, >= 4.2.5.1"
95
- - "~> 4.1.14, >= 4.1.14.1"
96
- - "~> 3.2.22.1"