bundler-audit 0.4.0 → 0.5.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.
Files changed (313) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog.md +16 -0
  3. data/README.md +23 -10
  4. data/data/ruby-advisory-db.ts +1 -1
  5. data/data/ruby-advisory-db/.gitignore +1 -0
  6. data/data/ruby-advisory-db/.travis.yml +18 -0
  7. data/data/ruby-advisory-db/CONTRIBUTING.md +53 -3
  8. data/data/ruby-advisory-db/CONTRIBUTORS.md +17 -2
  9. data/data/ruby-advisory-db/Gemfile +8 -2
  10. data/data/ruby-advisory-db/Rakefile +1 -2
  11. data/data/ruby-advisory-db/gems/{arabic-prawn → Arabic-Prawn}/OSVDB-104365.yml +3 -6
  12. data/data/ruby-advisory-db/gems/RedCloth/OSVDB-115941.yml +16 -0
  13. data/data/ruby-advisory-db/gems/VladTheEnterprising/CVE-2014-4995.yml +13 -0
  14. data/data/ruby-advisory-db/gems/VladTheEnterprising/CVE-2014-4996.yml +13 -0
  15. data/data/ruby-advisory-db/gems/actionpack/CVE-2014-0130.yml +23 -0
  16. data/data/ruby-advisory-db/gems/actionpack/CVE-2014-7818.yml +24 -0
  17. data/data/ruby-advisory-db/gems/actionpack/CVE-2014-7829.yml +26 -0
  18. data/data/ruby-advisory-db/gems/actionpack/CVE-2015-7576.yml +116 -0
  19. data/data/ruby-advisory-db/gems/actionpack/CVE-2015-7581.yml +55 -0
  20. data/data/ruby-advisory-db/gems/actionpack/CVE-2016-0751.yml +71 -0
  21. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100524.yml +1 -1
  22. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100525.yml +2 -2
  23. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100526.yml +6 -6
  24. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100527.yml +2 -2
  25. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100528.yml +2 -2
  26. data/data/ruby-advisory-db/gems/actionpack/OSVDB-103439.yml +1 -1
  27. data/data/ruby-advisory-db/gems/actionpack/OSVDB-103440.yml +1 -1
  28. data/data/ruby-advisory-db/gems/actionpack/OSVDB-74616.yml +18 -0
  29. data/data/ruby-advisory-db/gems/actionpack/OSVDB-77199.yml +23 -0
  30. data/data/ruby-advisory-db/gems/actionpack/OSVDB-84243.yml +4 -4
  31. data/data/ruby-advisory-db/gems/actionpack/OSVDB-91452.yml +4 -4
  32. data/data/ruby-advisory-db/gems/actionpack/OSVDB-91454.yml +4 -4
  33. data/data/ruby-advisory-db/gems/actionview/CVE-2016-0752.yml +92 -0
  34. data/data/ruby-advisory-db/gems/activemodel/CVE-2016-0753.yml +92 -0
  35. data/data/ruby-advisory-db/gems/activerecord-jdbc-adapter/OSVDB-114854.yml +20 -0
  36. data/data/ruby-advisory-db/gems/activerecord-oracle_enhanced-adapter/OSVDB-95376.yml +15 -0
  37. data/data/ruby-advisory-db/gems/activerecord/CVE-2014-3514.yml +23 -0
  38. data/data/ruby-advisory-db/gems/activerecord/CVE-2015-7577.yml +107 -0
  39. data/data/ruby-advisory-db/gems/activerecord/OSVDB-108664.yml +23 -0
  40. data/data/ruby-advisory-db/gems/activerecord/OSVDB-108665.yml +24 -0
  41. data/data/ruby-advisory-db/gems/activerecord/OSVDB-88661.yml +20 -0
  42. data/data/ruby-advisory-db/gems/activerecord/OSVDB-90072.yml +3 -3
  43. data/data/ruby-advisory-db/gems/activerecord/OSVDB-90073.yml +3 -3
  44. data/data/ruby-advisory-db/gems/activeresource/OSVDB-95749.yml +15 -0
  45. data/data/ruby-advisory-db/gems/activesupport/CVE-2015-3226.yml +54 -0
  46. data/data/ruby-advisory-db/gems/activesupport/CVE-2015-3227.yml +32 -0
  47. data/data/ruby-advisory-db/gems/as/OSVDB-112683.yml +10 -0
  48. data/data/ruby-advisory-db/gems/authlogic/OSVDB-89064.yml +15 -0
  49. data/data/ruby-advisory-db/gems/auto_awesomplete/OSVDB-132800.yml +11 -0
  50. data/data/ruby-advisory-db/gems/auto_select2/OSVDB-132800.yml +13 -0
  51. data/data/ruby-advisory-db/gems/awesome_spawn/CVE-2014-0156.yml +19 -0
  52. data/data/ruby-advisory-db/gems/backup-agoddard/OSVDB-108578.yml +8 -0
  53. data/data/ruby-advisory-db/gems/backup_checksum/OSVDB-108569.yml +12 -0
  54. data/data/ruby-advisory-db/gems/backup_checksum/OSVDB-108570.yml +10 -0
  55. data/data/ruby-advisory-db/gems/bcrypt-ruby/OSVDB-62067.yml +19 -0
  56. data/data/ruby-advisory-db/gems/bcrypt/OSVDB-62067.yml +17 -0
  57. data/data/ruby-advisory-db/gems/bio-basespace-sdk/OSVDB-101031.yml +8 -0
  58. data/data/ruby-advisory-db/gems/brbackup/OSVDB-108899.yml +12 -0
  59. data/data/ruby-advisory-db/gems/brbackup/OSVDB-108900.yml +11 -0
  60. data/data/ruby-advisory-db/gems/brbackup/OSVDB-108901.yml +11 -0
  61. data/data/ruby-advisory-db/gems/bson/CVE-2015-4412.yml +16 -0
  62. data/data/ruby-advisory-db/gems/builder/OSVDB-95668.yml +13 -0
  63. data/data/ruby-advisory-db/gems/bundler/OSVDB-110004.yml +15 -0
  64. data/data/ruby-advisory-db/gems/bundler/OSVDB-115090.yml +13 -0
  65. data/data/ruby-advisory-db/gems/bundler/OSVDB-115091.yml +12 -0
  66. data/data/ruby-advisory-db/gems/bundler/OSVDB-115917.yml +12 -0
  67. data/data/ruby-advisory-db/gems/cap-strap/OSVDB-108574.yml +8 -0
  68. data/data/ruby-advisory-db/gems/cap-strap/OSVDB-108575.yml +7 -0
  69. data/data/ruby-advisory-db/gems/ciborg/OSVDB-108586.yml +8 -0
  70. data/data/ruby-advisory-db/gems/codders-dataset/OSVDB-108582.yml +8 -0
  71. data/data/ruby-advisory-db/gems/codders-dataset/OSVDB-108583.yml +8 -0
  72. data/data/ruby-advisory-db/gems/colorscore/CVE-2015-7541.yml +20 -0
  73. data/data/ruby-advisory-db/gems/command_wrap/OSVDB-91450.yml +0 -1
  74. data/data/ruby-advisory-db/gems/cremefraiche/OSVDB-93395.yml +4 -4
  75. data/data/ruby-advisory-db/gems/curb/OSVDB-114600.yml +12 -0
  76. data/data/ruby-advisory-db/gems/curl/OSVDB-91230.yml +7 -6
  77. data/data/ruby-advisory-db/gems/devise-two-factor/CVE-2015-7225.yml +22 -0
  78. data/data/ruby-advisory-db/gems/devise/CVE-2015-8314.yml +14 -0
  79. data/data/ruby-advisory-db/gems/devise/OSVDB-114435.yml +17 -0
  80. data/data/ruby-advisory-db/gems/devise/OSVDB-89642.yml +1 -1
  81. data/data/ruby-advisory-db/gems/doorkeeper/CVE-2014-8144.yml +26 -0
  82. data/data/ruby-advisory-db/gems/doorkeeper/OSVDB-118830.yml +17 -0
  83. data/data/ruby-advisory-db/gems/dragonfly/OSVDB-110439.yml +13 -0
  84. data/data/ruby-advisory-db/gems/dragonfly/OSVDB-90647.yml +8 -11
  85. data/data/ruby-advisory-db/gems/dragonfly/OSVDB-96798.yml +14 -0
  86. data/data/ruby-advisory-db/gems/dragonfly/OSVDB-97854.yml +12 -0
  87. data/data/ruby-advisory-db/gems/echor/OSVDB-102129.yml +7 -6
  88. data/data/ruby-advisory-db/gems/echor/OSVDB-102130.yml +6 -5
  89. data/data/ruby-advisory-db/gems/ember-source/CVE-2013-4170.yml +25 -0
  90. data/data/ruby-advisory-db/gems/ember-source/CVE-2014-0013.yml +33 -0
  91. data/data/ruby-advisory-db/gems/ember-source/CVE-2014-0014.yml +30 -0
  92. data/data/ruby-advisory-db/gems/ember-source/CVE-2014-0046.yml +26 -0
  93. data/data/ruby-advisory-db/gems/ember-source/CVE-2015-1866.yml +26 -0
  94. data/data/ruby-advisory-db/gems/ember-source/CVE-2015-7565.yml +30 -0
  95. data/data/ruby-advisory-db/gems/fastreader/OSVDB-91232.yml +6 -5
  96. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-101445.yml +17 -0
  97. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-101446.yml +19 -0
  98. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-101447.yml +17 -0
  99. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-101448.yml +19 -0
  100. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-101700.yml +16 -0
  101. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-110420.yml +19 -0
  102. data/data/ruby-advisory-db/gems/fat_free_crm/OSVDB-118465.yml +17 -0
  103. data/data/ruby-advisory-db/gems/features/OSVDB-96975.yml +8 -0
  104. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90715.yml +0 -3
  105. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90716.yml +0 -3
  106. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90717.yml +0 -2
  107. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90718.yml +7 -0
  108. data/data/ruby-advisory-db/gems/flash_tool/OSVDB-90829.yml +0 -1
  109. data/data/ruby-advisory-db/gems/flavour_saver/OSVDB-110796.yml +14 -0
  110. data/data/ruby-advisory-db/gems/flukso4r/OSVDB-101577.yml +7 -0
  111. data/data/ruby-advisory-db/gems/fog-dragonfly/OSVDB-110439.yml +15 -0
  112. data/data/ruby-advisory-db/gems/fog-dragonfly/OSVDB-90647.yml +16 -0
  113. data/data/ruby-advisory-db/gems/fog-dragonfly/OSVDB-96798.yml +9 -6
  114. data/data/ruby-advisory-db/gems/fog-dragonfly/OSVDB-97854.yml +12 -0
  115. data/data/ruby-advisory-db/gems/gnms/OSVDB-108594.yml +7 -0
  116. data/data/ruby-advisory-db/gems/gollum-grit_adapter/CVE-2014-9489.yml +23 -0
  117. data/data/ruby-advisory-db/gems/gollum/CVE-2015-7314.yml +13 -0
  118. data/data/ruby-advisory-db/gems/gyazo/OSVDB-108563.yml +10 -0
  119. data/data/ruby-advisory-db/gems/handlebars-source/OSVDB-131671.yml +17 -0
  120. data/data/ruby-advisory-db/gems/http/CVE-2015-1828.yml +14 -0
  121. data/data/ruby-advisory-db/gems/jquery-rails/CVE-2015-1840.yml +36 -0
  122. data/data/ruby-advisory-db/gems/jquery-ujs/CVE-2015-1840.yml +35 -0
  123. data/data/ruby-advisory-db/gems/jruby-openssl/CVE-2009-4123.yml +16 -0
  124. data/data/ruby-advisory-db/gems/jruby-sandbox/OSVDB-106279.yml +12 -0
  125. data/data/ruby-advisory-db/gems/json/OSVDB-101137.yml +17 -0
  126. data/data/ruby-advisory-db/gems/json/OSVDB-101157.yml +14 -0
  127. data/data/ruby-advisory-db/gems/json/OSVDB-90074.yml +1 -1
  128. data/data/ruby-advisory-db/gems/kafo/OSVDB-106826.yml +15 -0
  129. data/data/ruby-advisory-db/gems/kajam/OSVDB-108529.yml +12 -0
  130. data/data/ruby-advisory-db/gems/kajam/OSVDB-108530.yml +11 -0
  131. data/data/ruby-advisory-db/gems/karo/OSVDB-108573.yml +10 -0
  132. data/data/ruby-advisory-db/gems/karteek-docsplit/OSVDB-92117.yml +0 -1
  133. data/data/ruby-advisory-db/gems/kcapifony/OSVDB-108571.yml +8 -0
  134. data/data/ruby-advisory-db/gems/kcapifony/OSVDB-108572.yml +7 -0
  135. data/data/ruby-advisory-db/gems/kelredd-pruview/OSVDB-92228.yml +0 -1
  136. data/data/ruby-advisory-db/gems/kompanee-recipes/OSVDB-108593.yml +12 -0
  137. data/data/ruby-advisory-db/gems/lawn-login/OSVDB-108576.yml +8 -0
  138. data/data/ruby-advisory-db/gems/ldap_fluff/OSVDB-90579.yml +15 -0
  139. data/data/ruby-advisory-db/gems/ldoce/OSVDB-91870.yml +0 -1
  140. data/data/ruby-advisory-db/gems/lean-ruport/OSVDB-108581.yml +8 -0
  141. data/data/ruby-advisory-db/gems/lingq/OSVDB-108585.yml +7 -0
  142. data/data/ruby-advisory-db/gems/lynx/OSVDB-108579.yml +7 -0
  143. data/data/ruby-advisory-db/gems/lynx/OSVDB-108580.yml +8 -0
  144. data/data/ruby-advisory-db/gems/mail/OSVDB-131677.yml +19 -0
  145. data/data/ruby-advisory-db/gems/mapbox-rails/OSVDB-129854.yml +21 -0
  146. data/data/ruby-advisory-db/gems/mapbox-rails/OSVDB-132871.yml +22 -0
  147. data/data/ruby-advisory-db/gems/md2pdf/OSVDB-92290.yml +0 -1
  148. data/data/ruby-advisory-db/gems/mini_magick/OSVDB-91231.yml +5 -5
  149. data/data/ruby-advisory-db/gems/moped/CVE-2015-4410.yml +17 -0
  150. data/data/ruby-advisory-db/gems/mustache-js-rails/OSVDB-131671.yml +17 -0
  151. data/data/ruby-advisory-db/gems/net-ldap/OSVDB-106108.yml +14 -0
  152. data/data/ruby-advisory-db/gems/nokogiri/CVE-2015-1819.yml +52 -0
  153. data/data/ruby-advisory-db/gems/nokogiri/CVE-2015-5312.yml +92 -0
  154. data/data/ruby-advisory-db/gems/nokogiri/CVE-2015-7499.yml +37 -0
  155. data/data/ruby-advisory-db/gems/nokogiri/OSVDB-101179.yml +11 -5
  156. data/data/ruby-advisory-db/gems/nokogiri/OSVDB-118481.yml +15 -0
  157. data/data/ruby-advisory-db/gems/nokogiri/OSVDB-90946.yml +15 -0
  158. data/data/ruby-advisory-db/gems/open-uri-cached/OSVDB-121701.yml +13 -0
  159. data/data/ruby-advisory-db/gems/paperclip/CVE-2015-2963.yml +16 -0
  160. data/data/ruby-advisory-db/gems/paratrooper-newrelic/OSVDB-101839.yml +6 -5
  161. data/data/ruby-advisory-db/gems/paratrooper-pingdom/OSVDB-101847.yml +6 -6
  162. data/data/ruby-advisory-db/gems/passenger/CVE-2014-1831.yml +13 -0
  163. data/data/ruby-advisory-db/gems/passenger/CVE-2014-1832.yml +13 -0
  164. data/data/ruby-advisory-db/gems/passenger/CVE-2015-7519.yml +17 -0
  165. data/data/ruby-advisory-db/gems/passenger/OSVDB-90738.yml +16 -0
  166. data/data/ruby-advisory-db/gems/passenger/OSVDB-93752.yml +15 -0
  167. data/data/ruby-advisory-db/gems/passenger/OSVDB-94074.yml +14 -0
  168. data/data/ruby-advisory-db/gems/point-cli/OSVDB-108577.yml +8 -0
  169. data/data/ruby-advisory-db/gems/quick_magick/OSVDB-106954.yml +7 -0
  170. data/data/ruby-advisory-db/gems/rack-attack/OSVDB-132234.yml +26 -0
  171. data/data/ruby-advisory-db/gems/rack-ssl/OSVDB-104734.yml +11 -0
  172. data/data/ruby-advisory-db/gems/rack/CVE-2015-3225.yml +18 -0
  173. data/data/ruby-advisory-db/gems/rack/OSVDB-78121.yml +21 -0
  174. data/data/ruby-advisory-db/gems/rack/OSVDB-89317.yml +21 -0
  175. data/data/ruby-advisory-db/gems/rack/OSVDB-89320.yml +19 -0
  176. data/data/ruby-advisory-db/gems/rack/OSVDB-89327.yml +20 -0
  177. data/data/ruby-advisory-db/gems/rack/OSVDB-89938.yml +18 -0
  178. data/data/ruby-advisory-db/gems/rack/OSVDB-89939.yml +9 -9
  179. data/data/ruby-advisory-db/gems/rails-html-sanitizer/CVE-2015-7578.yml +47 -0
  180. data/data/ruby-advisory-db/gems/rails-html-sanitizer/CVE-2015-7579.yml +75 -0
  181. data/data/ruby-advisory-db/gems/rails-html-sanitizer/CVE-2015-7580.yml +70 -0
  182. data/data/ruby-advisory-db/gems/rbovirt/OSVDB-104080.yml +1 -1
  183. data/data/ruby-advisory-db/gems/redcarpet/CVE-2015-5147.yml +17 -0
  184. data/data/ruby-advisory-db/gems/redcarpet/OSVDB-120415.yml +16 -0
  185. data/data/ruby-advisory-db/gems/redis-namespace/OSVDB-96425.yml +4 -5
  186. data/data/ruby-advisory-db/gems/refile/OSVDB-120857.yml +16 -0
  187. data/data/ruby-advisory-db/gems/rest-client/CVE-2015-1820.yml +23 -0
  188. data/data/ruby-advisory-db/gems/rest-client/OSVDB-117461.yml +13 -0
  189. data/data/ruby-advisory-db/gems/rgpg/OSVDB-95948.yml +9 -8
  190. data/data/ruby-advisory-db/gems/ruby-saml/OSVDB-117903.yml +13 -0
  191. data/data/ruby-advisory-db/gems/ruby-saml/OSVDB-124383.yml +11 -0
  192. data/data/ruby-advisory-db/gems/ruby-saml/OSVDB-124991.yml +13 -0
  193. data/data/ruby-advisory-db/gems/screen_capture/OSVDB-107783.yml +7 -0
  194. data/data/ruby-advisory-db/gems/sentry-raven/OSVDB-115654.yml +14 -0
  195. data/data/ruby-advisory-db/gems/sfpagent/OSVDB-105971.yml +9 -7
  196. data/data/ruby-advisory-db/gems/show_in_browser/OSVDB-93490.yml +8 -0
  197. data/data/ruby-advisory-db/gems/sidekiq-pro/OSVDB-126329.yml +12 -0
  198. data/data/ruby-advisory-db/gems/sidekiq-pro/OSVDB-126330.yml +10 -0
  199. data/data/ruby-advisory-db/gems/sidekiq-pro/OSVDB-126331.yml +14 -0
  200. data/data/ruby-advisory-db/gems/sidekiq/OSVDB-125675.yml +9 -0
  201. data/data/ruby-advisory-db/gems/sidekiq/OSVDB-125676.yml +14 -0
  202. data/data/ruby-advisory-db/gems/sidekiq/OSVDB-125678.yml +9 -0
  203. data/data/ruby-advisory-db/gems/sounder/OSVDB-96278.yml +5 -4
  204. data/data/ruby-advisory-db/gems/spree/OSVDB-119205.yml +18 -0
  205. data/data/ruby-advisory-db/gems/spree/OSVDB-125699.yml +18 -0
  206. data/data/ruby-advisory-db/gems/spree/OSVDB-125701.yml +17 -0
  207. data/data/ruby-advisory-db/gems/spree/OSVDB-125712.yml +16 -0
  208. data/data/ruby-advisory-db/gems/spree/OSVDB-125713.yml +15 -0
  209. data/data/ruby-advisory-db/gems/spree/OSVDB-69098.yml +19 -0
  210. data/data/ruby-advisory-db/gems/spree/OSVDB-73751.yml +11 -0
  211. data/data/ruby-advisory-db/gems/spree/OSVDB-76011.yml +15 -0
  212. data/data/ruby-advisory-db/gems/spree/OSVDB-81505.yml +14 -0
  213. data/data/ruby-advisory-db/gems/spree/OSVDB-81506.yml +16 -0
  214. data/data/ruby-advisory-db/gems/spree/OSVDB-90865.yml +20 -0
  215. data/data/ruby-advisory-db/gems/spree/OSVDB-91216.yml +9 -3
  216. data/data/ruby-advisory-db/gems/spree/OSVDB-91217.yml +9 -3
  217. data/data/ruby-advisory-db/gems/spree/OSVDB-91218.yml +9 -3
  218. data/data/ruby-advisory-db/gems/spree/OSVDB-91219.yml +9 -3
  219. data/data/ruby-advisory-db/gems/spree_auth/OSVDB-90865.yml +16 -0
  220. data/data/ruby-advisory-db/gems/spree_auth_devise/OSVDB-90865.yml +20 -0
  221. data/data/ruby-advisory-db/gems/sprockets/CVE-2014-7819.yml +27 -0
  222. data/data/ruby-advisory-db/gems/sprout/OSVDB-100598.yml +7 -5
  223. data/data/ruby-advisory-db/gems/sup/CVE-2013-4478.yml +14 -0
  224. data/data/ruby-advisory-db/gems/sup/CVE-2013-4479.yml +14 -0
  225. data/data/ruby-advisory-db/gems/thumbshooter/OSVDB-91839.yml +0 -1
  226. data/data/ruby-advisory-db/gems/twitter-bootstrap-rails/OSVDB-109206.yml +22 -0
  227. data/data/ruby-advisory-db/gems/uglifier/OSVDB-126747.yml +19 -0
  228. data/data/ruby-advisory-db/gems/web-console/CVE-2015-3224.yml +22 -0
  229. data/data/ruby-advisory-db/gems/web-console/OSVDB-112346.yml +12 -0
  230. data/data/ruby-advisory-db/gems/webbynode/OSVDB-100920.yml +4 -3
  231. data/data/ruby-advisory-db/gems/wicked/OSVDB-98270.yml +2 -2
  232. data/data/ruby-advisory-db/gems/xaviershay-dm-rails/OSVDB-118579.yml +13 -0
  233. data/data/ruby-advisory-db/lib/cf_scrape.py +5 -0
  234. data/data/ruby-advisory-db/lib/{scrape.rb → osvdb_scrape.rb} +16 -11
  235. data/data/ruby-advisory-db/libraries/rubygems/CVE-2013-4287.yml +19 -0
  236. data/data/ruby-advisory-db/libraries/rubygems/CVE-2013-4363.yml +20 -0
  237. data/data/ruby-advisory-db/libraries/rubygems/CVE-2015-3900.yml +19 -0
  238. data/data/ruby-advisory-db/libraries/rubygems/CVE-2015-4020.yml +19 -0
  239. data/data/ruby-advisory-db/libraries/rubygems/OSVDB-33561.yml +17 -0
  240. data/data/ruby-advisory-db/libraries/rubygems/OSVDB-81444.yml +14 -0
  241. data/data/ruby-advisory-db/libraries/rubygems/OSVDB-85809.yml +16 -0
  242. data/data/ruby-advisory-db/rubies/jruby/CVE-2010-1330.yml +17 -0
  243. data/data/ruby-advisory-db/rubies/jruby/CVE-2011-4838.yml +15 -0
  244. data/data/ruby-advisory-db/rubies/jruby/CVE-2012-5370.yml +17 -0
  245. data/data/ruby-advisory-db/rubies/jruby/OSVDB-94644.yml +12 -0
  246. data/data/ruby-advisory-db/rubies/rbx/OSVDB-78119.yml +13 -0
  247. data/data/ruby-advisory-db/rubies/rbx/OSVDB-87861.yml +17 -0
  248. data/data/ruby-advisory-db/rubies/ruby/CVE-2007-5162.yml +16 -0
  249. data/data/ruby-advisory-db/rubies/ruby/CVE-2007-5770.yml +17 -0
  250. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-1447.yml +15 -0
  251. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-1891.yml +21 -0
  252. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-2376.yml +18 -0
  253. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-3443.yml +17 -0
  254. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-3655.yml +18 -0
  255. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-3656.yml +19 -0
  256. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-3657.yml +16 -0
  257. data/data/ruby-advisory-db/rubies/ruby/CVE-2008-3905.yml +17 -0
  258. data/data/ruby-advisory-db/rubies/ruby/CVE-2009-0642.yml +17 -0
  259. data/data/ruby-advisory-db/rubies/ruby/CVE-2009-5147.yml +13 -0
  260. data/data/ruby-advisory-db/rubies/ruby/CVE-2011-0188.yml +17 -0
  261. data/data/ruby-advisory-db/rubies/ruby/CVE-2011-2686.yml +17 -0
  262. data/data/ruby-advisory-db/rubies/ruby/CVE-2011-2705.yml +16 -0
  263. data/data/ruby-advisory-db/rubies/ruby/CVE-2011-3009.yml +17 -0
  264. data/data/ruby-advisory-db/rubies/ruby/CVE-2012-4464.yml +17 -0
  265. data/data/ruby-advisory-db/rubies/ruby/CVE-2012-4466.yml +16 -0
  266. data/data/ruby-advisory-db/rubies/ruby/CVE-2012-4481.yml +15 -0
  267. data/data/ruby-advisory-db/rubies/ruby/CVE-2015-7551.yml +19 -0
  268. data/data/ruby-advisory-db/rubies/ruby/OSVDB-100113.yml +17 -0
  269. data/data/ruby-advisory-db/rubies/ruby/OSVDB-105027.yml +20 -0
  270. data/data/ruby-advisory-db/rubies/ruby/OSVDB-107478.yml +16 -0
  271. data/data/ruby-advisory-db/rubies/ruby/OSVDB-108971.yml +17 -0
  272. data/data/ruby-advisory-db/rubies/ruby/OSVDB-113747.yml +19 -0
  273. data/data/ruby-advisory-db/rubies/ruby/OSVDB-114641.yml +22 -0
  274. data/data/ruby-advisory-db/rubies/ruby/OSVDB-120541.yml +22 -0
  275. data/data/ruby-advisory-db/rubies/ruby/OSVDB-46550.yml +22 -0
  276. data/data/ruby-advisory-db/rubies/ruby/OSVDB-46551.yml +21 -0
  277. data/data/ruby-advisory-db/rubies/ruby/OSVDB-46552.yml +21 -0
  278. data/data/ruby-advisory-db/rubies/ruby/OSVDB-46553.yml +22 -0
  279. data/data/ruby-advisory-db/rubies/ruby/OSVDB-46554.yml +18 -0
  280. data/data/ruby-advisory-db/rubies/ruby/OSVDB-47753.yml +16 -0
  281. data/data/ruby-advisory-db/rubies/ruby/OSVDB-55031.yml +17 -0
  282. data/data/ruby-advisory-db/rubies/ruby/OSVDB-60880.yml +17 -0
  283. data/data/ruby-advisory-db/rubies/ruby/OSVDB-61774.yml +20 -0
  284. data/data/ruby-advisory-db/rubies/ruby/OSVDB-65556.yml +17 -0
  285. data/data/ruby-advisory-db/rubies/ruby/OSVDB-66040.yml +17 -0
  286. data/data/ruby-advisory-db/rubies/ruby/OSVDB-70957.yml +15 -0
  287. data/data/ruby-advisory-db/rubies/ruby/OSVDB-70958.yml +20 -0
  288. data/data/ruby-advisory-db/rubies/ruby/OSVDB-74829.yml +18 -0
  289. data/data/ruby-advisory-db/rubies/ruby/OSVDB-78118.yml +14 -0
  290. data/data/ruby-advisory-db/rubies/ruby/OSVDB-87280.yml +17 -0
  291. data/data/ruby-advisory-db/rubies/ruby/OSVDB-87863.yml +18 -0
  292. data/data/ruby-advisory-db/rubies/ruby/OSVDB-87917.yml +16 -0
  293. data/data/ruby-advisory-db/rubies/ruby/OSVDB-90587.yml +16 -0
  294. data/data/ruby-advisory-db/rubies/ruby/OSVDB-93414.yml +19 -0
  295. data/data/ruby-advisory-db/rubies/ruby/OSVDB-94628.yml +21 -0
  296. data/data/ruby-advisory-db/scripts/post-advisories.sh +18 -0
  297. data/data/ruby-advisory-db/spec/advisory_example.rb +59 -37
  298. data/data/ruby-advisory-db/spec/gem_example.rb +22 -0
  299. data/data/ruby-advisory-db/spec/gems_spec.rb +18 -2
  300. data/data/ruby-advisory-db/spec/library_example.rb +21 -0
  301. data/data/ruby-advisory-db/spec/ruby_example.rb +23 -0
  302. data/lib/bundler/audit.rb +1 -1
  303. data/lib/bundler/audit/advisory.rb +21 -1
  304. data/lib/bundler/audit/cli.rb +14 -2
  305. data/lib/bundler/audit/database.rb +7 -4
  306. data/lib/bundler/audit/scanner.rb +24 -9
  307. data/lib/bundler/audit/task.rb +31 -0
  308. data/lib/bundler/audit/version.rb +2 -2
  309. data/spec/advisory_spec.rb +68 -24
  310. data/spec/cli_spec.rb +44 -0
  311. data/spec/integration_spec.rb +22 -0
  312. data/spec/spec_helper.rb +1 -0
  313. metadata +246 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9660b06fce10c2532f0c7aaa5fef6ca2d5c99067
4
- data.tar.gz: 751d7e542727defa267b6d8abf2ad0b3f391ab70
3
+ metadata.gz: 650484979d4eb765a3c725eb4b31303d24fe5b59
4
+ data.tar.gz: dfc8d83b2c4488bf7284103276941bd4ab8d5f1c
5
5
  SHA512:
6
- metadata.gz: 2a3cb90acc0cecc82ee931fedd43ab4d0439fd2436bc29563a45a4a328862c9038f243f7bff68a9e394bb0c12fee6f83b1496347187783b3a6d972435169dbf3
7
- data.tar.gz: 89a771db86e3baf43430b5448bee5664e1b73f017fed9c48756ea8a58f6f4515c761d4c46333a93e9bcde71e3c6777271ec799a933d5662a76df9504a29dd09d
6
+ metadata.gz: 4da6b5b6f801ee56c94b581c2190d0cf0f607c347269b1ad5c5b3ce3bfbfdcf4e8679abc9f4d5f34542587936beede85315ba25ebc78dffe077e52ac670ecc62
7
+ data.tar.gz: 961867353bb8145023a2f9ab6ba41e609c8594c697adc1c6c3e4e86708e3d39b9c6326a1d8baafeff521101a8109f0b9a9edf15e8ded29383e9e29606f36a523
@@ -1,3 +1,19 @@
1
+ ### 0.5.0 / 2015-02-28
2
+
3
+ * Added {Bundler::Audit::Task}.
4
+ * Added {Bundler::Audit::Advisory#date}.
5
+ * Added {Bundler::Audit::Advisory#cve_id}.
6
+ * Added {Bundler::Audit::Advisory#osvdb_id}.
7
+ * Allow insecure gem sources (`http://` and `git://`), if they are hosted on a
8
+ private network.
9
+
10
+ #### CLI
11
+
12
+ * Added the `--update` option to `bundle-audit check`.
13
+ * `bundle-audit update` now returns a non-zero exit status on error.
14
+ * `bundle-audit update` only updates `~/.local/share/ruby-advisory-db`, if it is a git
15
+ repository.
16
+
1
17
  ### 0.4.0 / 2015-06-30
2
18
 
3
19
  * Require ruby >= 1.9.3 due to i18n gem deprecating < 1.9.3.
data/README.md CHANGED
@@ -4,8 +4,8 @@
4
4
  * [Issues](https://github.com/rubysec/bundler-audit/issues)
5
5
  * [Documentation](http://rubydoc.info/gems/bundler-audit/frames)
6
6
  * [Email](mailto:rubysec.mod3 at gmail.com)
7
- * [![Build Status](https://travis-ci.org/rubysec/bundler-audit.png)](https://travis-ci.org/rubysec/bundler-audit)
8
- * [![Code Climate](https://codeclimate.com/github/rubysec/bundler-audit.png)](https://codeclimate.com/github/rubysec/bundler-audit)
7
+ * [![Build Status](https://travis-ci.org/rubysec/bundler-audit.svg)](https://travis-ci.org/rubysec/bundler-audit)
8
+ * [![Code Climate](https://codeclimate.com/github/rubysec/bundler-audit.svg)](https://codeclimate.com/github/rubysec/bundler-audit)
9
9
 
10
10
  ## Description
11
11
 
@@ -31,7 +31,7 @@ Audit a projects `Gemfile.lock`:
31
31
  URL: http://www.osvdb.org/show/osvdb/91452
32
32
  Title: XSS vulnerability in sanitize_css in Action Pack
33
33
  Solution: upgrade to ~> 2.3.18, ~> 3.1.12, >= 3.2.13
34
-
34
+
35
35
  Name: actionpack
36
36
  Version: 3.2.10
37
37
  Advisory: OSVDB-91454
@@ -39,7 +39,7 @@ Audit a projects `Gemfile.lock`:
39
39
  URL: http://osvdb.org/show/osvdb/91454
40
40
  Title: XSS Vulnerability in the `sanitize` helper of Ruby on Rails
41
41
  Solution: upgrade to ~> 2.3.18, ~> 3.1.12, >= 3.2.13
42
-
42
+
43
43
  Name: actionpack
44
44
  Version: 3.2.10
45
45
  Advisory: OSVDB-89026
@@ -47,7 +47,7 @@ Audit a projects `Gemfile.lock`:
47
47
  URL: http://osvdb.org/show/osvdb/89026
48
48
  Title: Ruby on Rails params_parser.rb Action Pack Type Casting Parameter Parsing Remote Code Execution
49
49
  Solution: upgrade to ~> 2.3.15, ~> 3.0.19, ~> 3.1.10, >= 3.2.11
50
-
50
+
51
51
  Name: activerecord
52
52
  Version: 3.2.10
53
53
  Advisory: OSVDB-91453
@@ -55,7 +55,7 @@ Audit a projects `Gemfile.lock`:
55
55
  URL: http://osvdb.org/show/osvdb/91453
56
56
  Title: Symbol DoS vulnerability in Active Record
57
57
  Solution: upgrade to ~> 2.3.18, ~> 3.1.12, >= 3.2.13
58
-
58
+
59
59
  Name: activerecord
60
60
  Version: 3.2.10
61
61
  Advisory: OSVDB-90072
@@ -63,7 +63,7 @@ Audit a projects `Gemfile.lock`:
63
63
  URL: http://direct.osvdb.org/show/osvdb/90072
64
64
  Title: Ruby on Rails Active Record attr_protected Method Bypass
65
65
  Solution: upgrade to ~> 2.3.17, ~> 3.1.11, >= 3.2.12
66
-
66
+
67
67
  Name: activerecord
68
68
  Version: 3.2.10
69
69
  Advisory: OSVDB-89025
@@ -71,7 +71,7 @@ Audit a projects `Gemfile.lock`:
71
71
  URL: http://osvdb.org/show/osvdb/89025
72
72
  Title: Ruby on Rails Active Record JSON Parameter Parsing Query Bypass
73
73
  Solution: upgrade to ~> 2.3.16, ~> 3.0.19, ~> 3.1.10, >= 3.2.11
74
-
74
+
75
75
  Name: activesupport
76
76
  Version: 3.2.10
77
77
  Advisory: OSVDB-91451
@@ -79,7 +79,7 @@ Audit a projects `Gemfile.lock`:
79
79
  URL: http://www.osvdb.org/show/osvdb/91451
80
80
  Title: XML Parsing Vulnerability affecting JRuby users
81
81
  Solution: upgrade to ~> 3.1.12, >= 3.2.13
82
-
82
+
83
83
  Unpatched versions found!
84
84
 
85
85
  Update the [ruby-advisory-db] that `bundle-audit` uses:
@@ -108,10 +108,23 @@ Update the [ruby-advisory-db] that `bundle-audit` uses:
108
108
  create mode 100644 gems/wicked/OSVDB-98270.yml
109
109
  ruby-advisory-db: 64 advisories
110
110
 
111
+ Update the [ruby-advisory-db] and check `Gemfile.lock` (useful for CI runs):
112
+
113
+ $ bundle-audit check --update
114
+
111
115
  Ignore specific advisories:
112
116
 
113
117
  $ bundle-audit check --ignore OSVDB-108664
114
118
 
119
+ Rake task:
120
+
121
+ ```ruby
122
+ require_relative 'lib/bundler/audit/task'
123
+ Bundler::Audit::Task.new
124
+
125
+ task default: 'bundle:audit'
126
+ ```
127
+
115
128
  ## Requirements
116
129
 
117
130
  * [Ruby] >= 1.9.3
@@ -125,7 +138,7 @@ Ignore specific advisories:
125
138
 
126
139
  ## License
127
140
 
128
- Copyright (c) 2013-2015 Hal Brodigan (postmodern.mod3 at gmail.com)
141
+ Copyright (c) 2013-2016 Hal Brodigan (postmodern.mod3 at gmail.com)
129
142
 
130
143
  bundler-audit is free software: you can redistribute it and/or modify
131
144
  it under the terms of the GNU General Public License as published by
@@ -1 +1 @@
1
- 2014-02-11 00:45:58 UTC
1
+ 2016-01-26 04:57:48 UTC
@@ -1 +1,2 @@
1
1
  Gemfile.lock
2
+ _site
@@ -0,0 +1,18 @@
1
+ language: ruby
2
+
3
+ sudo: false
4
+
5
+ cache: bundler
6
+
7
+ deploy:
8
+ provider: script
9
+ script: scripts/post-advisories.sh
10
+ on:
11
+ branch: master
12
+
13
+ notifications:
14
+ irc: chat.freenode.net#rubysec
15
+
16
+ env:
17
+ global:
18
+ - secure: ZXwsZdbCej15IcIazEIjy12o5v5EI8/Hle/VP1EabfbHsA5Mw+lrliMAV80C8Iy+p4mI66WIO/3Ovm64L1nGDBGs3dKUjtDvNPCKHlK2xK7AhvkcJnzbjWTAzWZY17STJO45DUdr/vuVbvQZ8llLosSOBs+grGsszCSEIOibqjU=
@@ -1,6 +1,56 @@
1
1
  # Contributing Guidelines
2
2
 
3
- ## Style
3
+ * All text must be within 80 columns.
4
+ * YAML must be indented by 2 spaces.
5
+ * Have any questions? Feel free to open an issue.
6
+ * Prior to submitting a pull request, run the tests:
7
+
8
+ ```
9
+ bundle install
10
+ bundle exec rspec
11
+ ```
12
+
13
+ * Follow the schema. Here is a sample advisory:
14
+
15
+ ```yaml
16
+ ---
17
+ gem: activerecord
18
+ framework: rails
19
+ cve: 2014-3514
20
+ url: https://groups.google.com/forum/#!msg/rubyonrails-security/M4chq5Sb540/CC1Fh0Y_NWwJ
21
+ title: Data Injection Vulnerability in Active Record
22
+ date: 2014-08-18
23
+
24
+ description: >-
25
+ The create_with functionality in Active Record was implemented
26
+ incorrectly and completely bypasses the strong parameters
27
+ protection. Applications which pass user-controlled values to
28
+ create_with could allow attackers to set arbitrary attributes on
29
+ models.
30
+
31
+ cvss_v2: 8.7
32
+
33
+ unaffected_versions:
34
+ - "< 4.0.0"
35
+
36
+ patched_versions:
37
+ - ~> 4.0.9
38
+ - ">= 4.1.5"
39
+ ```
40
+ ### Schema
41
+
42
+ * `gem` \[String\]: Name of the affected gem.
43
+ * `framework` \[String\] (optional): Name of framework gem belongs to.
44
+ * `platform` \[String\] (optional): If this vulnerability is platform-specific, name of platform this vulnerability affects (e.g. JRuby)
45
+ * `cve` \[String\]: CVE id.
46
+ * `osvdb` \[Fixnum\]: OSVDB id.
47
+ * `url` \[String\]: The URL to the full advisory.
48
+ * `title` \[String\]: The title of the advisory.
49
+ * `date` \[Date\]: Disclosure date of the advisory.
50
+ * `description` \[String\]: Multi-paragraph description of the vulnerability.
51
+ * `cvss_v2` \[Float\]: The [CVSSv2] score for the vulnerability.
52
+ * `unaffected_versions` \[Array\<String\>\] (optional): The version requirements for the
53
+ unaffected versions of the Ruby library.
54
+ * `patched_versions` \[Array\<String\>\]: The version requirements for the
55
+ patched versions of the Ruby library.
4
56
 
5
- 1. All text must be within 80 columns.
6
- 2. YAML must be indented by 2 spaces.
@@ -1,8 +1,7 @@
1
1
  ### Acknowledgements
2
2
 
3
- This database would not be possible without volunteers willing to submit pull requests.
3
+ This database would not be possible without volunteers willing to submit pull requests. In no particular order, we'd like to thank:
4
4
 
5
- Thanks,
6
5
  * [Postmodern](https://github.com/postmodern/)
7
6
  * [Max Veytsman](https://twitter.com/mveytsman)
8
7
  * [Pietro Monteiro](https://github.com/pietro)
@@ -21,3 +20,19 @@ Thanks,
21
20
  * [Jeremy Olliver](https://github.com/jeremyolliver)
22
21
  * [Vasily Vasinov](https://github.com/vasinov)
23
22
  * [Phill MV](https://twitter.com/phillmv)
23
+ * [Jon Kessler](https://github.com/jonkessler)
24
+ * [James Harton](https://github.com/jamesotron)
25
+ * [Justin Collins](https://github.com/presidentbeef)
26
+ * [Andy Brody](https://github.com/ab)
27
+ * [Alexey Zapparov](https://github.com/ixti)
28
+ * [Toni Reina](https://github.com/areina)
29
+ * [Bernard Lambeau](https://github.com/blambeau)
30
+ * [Don Morrison](https://github.com/elskwid)
31
+ * [John Poulin](https://github.com/forced-request)
32
+ * [Neal Harris](https://github.com/nealharris)
33
+ * [Justin Bull](https://github.com/f3ndot)
34
+ * [Andrew Selder](https://github.com/aselder)
35
+ * [Vanessa Henderson](https://github.com/VanessaHenderson)
36
+ * [Reed Loden](https://github.com/reedloden)
37
+
38
+ The rubysec.com domain was graciously donated by [Jordi Massaguer](https://github.com/jordimassaguerpla).
@@ -1,3 +1,9 @@
1
1
  source 'https://rubygems.org'
2
- gem 'pry'
3
- gem 'mechanize'
2
+
3
+ gem 'rspec', '3.3.0'
4
+ gem 'rake'
5
+
6
+ group :development do
7
+ gem 'pry'
8
+ gem 'nokogiri'
9
+ end
@@ -2,7 +2,6 @@ require 'yaml'
2
2
 
3
3
  namespace :lint do
4
4
  begin
5
- gem 'rspec', '~> 2.4'
6
5
  require 'rspec/core/rake_task'
7
6
 
8
7
  RSpec::Core::RakeTask.new(:yaml)
@@ -13,7 +12,7 @@ namespace :lint do
13
12
  end
14
13
 
15
14
  task :cve do
16
- Dir.glob('gems/*/*.yml') do |path|
15
+ Dir.glob('{gems,libraries,rubies}/*/*.yml') do |path|
17
16
  advisory = YAML.load_file(path)
18
17
 
19
18
  unless advisory['cve']
@@ -1,15 +1,12 @@
1
1
  ---
2
2
  gem: Arabic-Prawn
3
+ cve: 2014-2322
3
4
  osvdb: 104365
4
5
  url: http://osvdb.org/show/osvdb/104365
5
- title: Arabic-Prawn Gem for Ruby contains a flaw
6
+ title: Arabic Prawn Gem for Ruby lib/string_utf_support.rb User Input Handling Remote Command Injection
6
7
  date: 2014-03-10
7
-
8
8
  description: |
9
9
  Arabic Prawn Gem for Ruby contains a flaw in the lib/string_utf_support.rb
10
10
  file. The issue is due to the program failing to sanitize user input. This may
11
11
  allow a remote attacker to inject arbitrary commands.
12
-
13
- cvss_v2:
14
-
15
- patched_versions:
12
+ cvss_v2: 7.5
@@ -0,0 +1,16 @@
1
+ ---
2
+ gem: RedCloth
3
+ cve: 2012-6684
4
+ osvdb: 115941
5
+ url: http://www.osvdb.org/show/osvdb/115941
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:
@@ -0,0 +1,13 @@
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.
@@ -0,0 +1,13 @@
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.
@@ -0,0 +1,23 @@
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"
@@ -0,0 +1,24 @@
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"
@@ -0,0 +1,26 @@
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"
@@ -0,0 +1,116 @@
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.1"
115
+ - "~> 4.1.14.1"
116
+ - "~> 3.2.22.1"