dawnscanner 1.2.99

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 (306) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.sig +4 -0
  3. data.tar.gz.sig +0 -0
  4. data/.gitignore +19 -0
  5. data/.ruby-gemset +1 -0
  6. data/.ruby-version +1 -0
  7. data/.travis.yml +8 -0
  8. data/Changelog.md +412 -0
  9. data/Gemfile +4 -0
  10. data/KnowledgeBase.md +213 -0
  11. data/LICENSE.txt +22 -0
  12. data/README.md +354 -0
  13. data/Rakefile +250 -0
  14. data/Roadmap.md +59 -0
  15. data/bin/dawn +210 -0
  16. data/certs/paolo_at_codesake_dot_com.pem +21 -0
  17. data/checksum/.placeholder +0 -0
  18. data/checksum/codesake-dawn-1.1.0.gem.sha512 +1 -0
  19. data/checksum/codesake-dawn-1.1.0.rc1.gem.sha512 +1 -0
  20. data/checksum/codesake-dawn-1.1.1.gem.sha512 +1 -0
  21. data/checksum/codesake-dawn-1.1.2.gem.sha512 +1 -0
  22. data/checksum/codesake-dawn-1.1.3.gem.sha512 +1 -0
  23. data/checksum/codesake-dawn-1.2.0.gem.sha512 +1 -0
  24. data/checksum/codesake-dawn-1.2.99.gem.sha512 +1 -0
  25. data/dawnscanner.gemspec +43 -0
  26. data/doc/codesake-dawn.yaml.sample +26 -0
  27. data/doc/dawn_1_0_announcement.md +139 -0
  28. data/doc/dawn_1_1_announcement.md +67 -0
  29. data/doc/dawn_1_2_announcement.md +69 -0
  30. data/features/dawn_complains_about_an_incorrect_command_line.feature.disabled +21 -0
  31. data/features/dawn_scan_a_secure_sinatra_app.feature.disabled +31 -0
  32. data/features/dawn_scan_a_vulnerable_sinatra_app.feature.disabled +36 -0
  33. data/features/step_definition/dawn_steps.rb +19 -0
  34. data/features/support/env.rb +1 -0
  35. data/lib/codesake-dawn.rb +12 -0
  36. data/lib/codesake/dawn/core.rb +175 -0
  37. data/lib/codesake/dawn/engine.rb +380 -0
  38. data/lib/codesake/dawn/gemfile_lock.rb +12 -0
  39. data/lib/codesake/dawn/kb/basic_check.rb +228 -0
  40. data/lib/codesake/dawn/kb/combo_check.rb +64 -0
  41. data/lib/codesake/dawn/kb/cve_2004_0755.rb +32 -0
  42. data/lib/codesake/dawn/kb/cve_2004_0983.rb +30 -0
  43. data/lib/codesake/dawn/kb/cve_2005_1992.rb +30 -0
  44. data/lib/codesake/dawn/kb/cve_2005_2337.rb +32 -0
  45. data/lib/codesake/dawn/kb/cve_2006_1931.rb +32 -0
  46. data/lib/codesake/dawn/kb/cve_2006_2582.rb +30 -0
  47. data/lib/codesake/dawn/kb/cve_2006_3694.rb +31 -0
  48. data/lib/codesake/dawn/kb/cve_2006_4112.rb +29 -0
  49. data/lib/codesake/dawn/kb/cve_2006_5467.rb +30 -0
  50. data/lib/codesake/dawn/kb/cve_2006_6303.rb +30 -0
  51. data/lib/codesake/dawn/kb/cve_2006_6852.rb +29 -0
  52. data/lib/codesake/dawn/kb/cve_2006_6979.rb +31 -0
  53. data/lib/codesake/dawn/kb/cve_2007_0469.rb +29 -0
  54. data/lib/codesake/dawn/kb/cve_2007_5162.rb +30 -0
  55. data/lib/codesake/dawn/kb/cve_2007_5379.rb +29 -0
  56. data/lib/codesake/dawn/kb/cve_2007_5380.rb +29 -0
  57. data/lib/codesake/dawn/kb/cve_2007_5770.rb +32 -0
  58. data/lib/codesake/dawn/kb/cve_2007_6077.rb +31 -0
  59. data/lib/codesake/dawn/kb/cve_2007_6612.rb +30 -0
  60. data/lib/codesake/dawn/kb/cve_2008_1145.rb +40 -0
  61. data/lib/codesake/dawn/kb/cve_2008_1891.rb +40 -0
  62. data/lib/codesake/dawn/kb/cve_2008_2376.rb +32 -0
  63. data/lib/codesake/dawn/kb/cve_2008_2662.rb +35 -0
  64. data/lib/codesake/dawn/kb/cve_2008_2663.rb +34 -0
  65. data/lib/codesake/dawn/kb/cve_2008_2664.rb +35 -0
  66. data/lib/codesake/dawn/kb/cve_2008_2725.rb +33 -0
  67. data/lib/codesake/dawn/kb/cve_2008_3655.rb +39 -0
  68. data/lib/codesake/dawn/kb/cve_2008_3657.rb +39 -0
  69. data/lib/codesake/dawn/kb/cve_2008_3790.rb +32 -0
  70. data/lib/codesake/dawn/kb/cve_2008_3905.rb +38 -0
  71. data/lib/codesake/dawn/kb/cve_2008_4094.rb +29 -0
  72. data/lib/codesake/dawn/kb/cve_2008_4310.rb +103 -0
  73. data/lib/codesake/dawn/kb/cve_2008_5189.rb +29 -0
  74. data/lib/codesake/dawn/kb/cve_2008_7248.rb +29 -0
  75. data/lib/codesake/dawn/kb/cve_2009_4078.rb +31 -0
  76. data/lib/codesake/dawn/kb/cve_2009_4124.rb +32 -0
  77. data/lib/codesake/dawn/kb/cve_2009_4214.rb +29 -0
  78. data/lib/codesake/dawn/kb/cve_2010_1330.rb +30 -0
  79. data/lib/codesake/dawn/kb/cve_2010_2489.rb +62 -0
  80. data/lib/codesake/dawn/kb/cve_2010_3933.rb +29 -0
  81. data/lib/codesake/dawn/kb/cve_2011_0188.rb +69 -0
  82. data/lib/codesake/dawn/kb/cve_2011_0446.rb +30 -0
  83. data/lib/codesake/dawn/kb/cve_2011_0447.rb +30 -0
  84. data/lib/codesake/dawn/kb/cve_2011_0739.rb +30 -0
  85. data/lib/codesake/dawn/kb/cve_2011_0995.rb +63 -0
  86. data/lib/codesake/dawn/kb/cve_2011_1004.rb +36 -0
  87. data/lib/codesake/dawn/kb/cve_2011_1005.rb +33 -0
  88. data/lib/codesake/dawn/kb/cve_2011_2197.rb +29 -0
  89. data/lib/codesake/dawn/kb/cve_2011_2686.rb +31 -0
  90. data/lib/codesake/dawn/kb/cve_2011_2705.rb +34 -0
  91. data/lib/codesake/dawn/kb/cve_2011_2929.rb +29 -0
  92. data/lib/codesake/dawn/kb/cve_2011_2930.rb +30 -0
  93. data/lib/codesake/dawn/kb/cve_2011_2931.rb +32 -0
  94. data/lib/codesake/dawn/kb/cve_2011_2932.rb +29 -0
  95. data/lib/codesake/dawn/kb/cve_2011_3009.rb +30 -0
  96. data/lib/codesake/dawn/kb/cve_2011_3186.rb +31 -0
  97. data/lib/codesake/dawn/kb/cve_2011_3187.rb +31 -0
  98. data/lib/codesake/dawn/kb/cve_2011_4319.rb +31 -0
  99. data/lib/codesake/dawn/kb/cve_2011_4815.rb +30 -0
  100. data/lib/codesake/dawn/kb/cve_2011_5036.rb +28 -0
  101. data/lib/codesake/dawn/kb/cve_2012_1098.rb +32 -0
  102. data/lib/codesake/dawn/kb/cve_2012_1099.rb +29 -0
  103. data/lib/codesake/dawn/kb/cve_2012_1241.rb +29 -0
  104. data/lib/codesake/dawn/kb/cve_2012_2139.rb +28 -0
  105. data/lib/codesake/dawn/kb/cve_2012_2140.rb +29 -0
  106. data/lib/codesake/dawn/kb/cve_2012_2660.rb +30 -0
  107. data/lib/codesake/dawn/kb/cve_2012_2661.rb +29 -0
  108. data/lib/codesake/dawn/kb/cve_2012_2671.rb +30 -0
  109. data/lib/codesake/dawn/kb/cve_2012_2694.rb +32 -0
  110. data/lib/codesake/dawn/kb/cve_2012_2695.rb +29 -0
  111. data/lib/codesake/dawn/kb/cve_2012_3424.rb +31 -0
  112. data/lib/codesake/dawn/kb/cve_2012_3463.rb +29 -0
  113. data/lib/codesake/dawn/kb/cve_2012_3464.rb +29 -0
  114. data/lib/codesake/dawn/kb/cve_2012_3465.rb +28 -0
  115. data/lib/codesake/dawn/kb/cve_2012_4464.rb +29 -0
  116. data/lib/codesake/dawn/kb/cve_2012_4466.rb +29 -0
  117. data/lib/codesake/dawn/kb/cve_2012_4481.rb +28 -0
  118. data/lib/codesake/dawn/kb/cve_2012_4522.rb +29 -0
  119. data/lib/codesake/dawn/kb/cve_2012_5370.rb +29 -0
  120. data/lib/codesake/dawn/kb/cve_2012_5371.rb +29 -0
  121. data/lib/codesake/dawn/kb/cve_2012_5380.rb +30 -0
  122. data/lib/codesake/dawn/kb/cve_2012_6109.rb +27 -0
  123. data/lib/codesake/dawn/kb/cve_2012_6134.rb +29 -0
  124. data/lib/codesake/dawn/kb/cve_2012_6496.rb +30 -0
  125. data/lib/codesake/dawn/kb/cve_2012_6497.rb +30 -0
  126. data/lib/codesake/dawn/kb/cve_2013_0155.rb +31 -0
  127. data/lib/codesake/dawn/kb/cve_2013_0156.rb +29 -0
  128. data/lib/codesake/dawn/kb/cve_2013_0162.rb +30 -0
  129. data/lib/codesake/dawn/kb/cve_2013_0175.rb +29 -0
  130. data/lib/codesake/dawn/kb/cve_2013_0183.rb +27 -0
  131. data/lib/codesake/dawn/kb/cve_2013_0184.rb +27 -0
  132. data/lib/codesake/dawn/kb/cve_2013_0233.rb +28 -0
  133. data/lib/codesake/dawn/kb/cve_2013_0256.rb +61 -0
  134. data/lib/codesake/dawn/kb/cve_2013_0262.rb +28 -0
  135. data/lib/codesake/dawn/kb/cve_2013_0263.rb +28 -0
  136. data/lib/codesake/dawn/kb/cve_2013_0269.rb +29 -0
  137. data/lib/codesake/dawn/kb/cve_2013_0276.rb +30 -0
  138. data/lib/codesake/dawn/kb/cve_2013_0277.rb +27 -0
  139. data/lib/codesake/dawn/kb/cve_2013_0284.rb +29 -0
  140. data/lib/codesake/dawn/kb/cve_2013_0285.rb +29 -0
  141. data/lib/codesake/dawn/kb/cve_2013_0333.rb +30 -0
  142. data/lib/codesake/dawn/kb/cve_2013_1607.rb +27 -0
  143. data/lib/codesake/dawn/kb/cve_2013_1655.rb +67 -0
  144. data/lib/codesake/dawn/kb/cve_2013_1656.rb +30 -0
  145. data/lib/codesake/dawn/kb/cve_2013_1756.rb +28 -0
  146. data/lib/codesake/dawn/kb/cve_2013_1800.rb +28 -0
  147. data/lib/codesake/dawn/kb/cve_2013_1801.rb +29 -0
  148. data/lib/codesake/dawn/kb/cve_2013_1802.rb +29 -0
  149. data/lib/codesake/dawn/kb/cve_2013_1812.rb +29 -0
  150. data/lib/codesake/dawn/kb/cve_2013_1821.rb +30 -0
  151. data/lib/codesake/dawn/kb/cve_2013_1854.rb +28 -0
  152. data/lib/codesake/dawn/kb/cve_2013_1855.rb +27 -0
  153. data/lib/codesake/dawn/kb/cve_2013_1856.rb +28 -0
  154. data/lib/codesake/dawn/kb/cve_2013_1857.rb +29 -0
  155. data/lib/codesake/dawn/kb/cve_2013_1875.rb +29 -0
  156. data/lib/codesake/dawn/kb/cve_2013_1898.rb +29 -0
  157. data/lib/codesake/dawn/kb/cve_2013_1911.rb +30 -0
  158. data/lib/codesake/dawn/kb/cve_2013_1933.rb +29 -0
  159. data/lib/codesake/dawn/kb/cve_2013_1947.rb +29 -0
  160. data/lib/codesake/dawn/kb/cve_2013_1948.rb +29 -0
  161. data/lib/codesake/dawn/kb/cve_2013_2065.rb +31 -0
  162. data/lib/codesake/dawn/kb/cve_2013_2090.rb +30 -0
  163. data/lib/codesake/dawn/kb/cve_2013_2105.rb +28 -0
  164. data/lib/codesake/dawn/kb/cve_2013_2119.rb +29 -0
  165. data/lib/codesake/dawn/kb/cve_2013_2512.rb +28 -0
  166. data/lib/codesake/dawn/kb/cve_2013_2513.rb +27 -0
  167. data/lib/codesake/dawn/kb/cve_2013_2516.rb +28 -0
  168. data/lib/codesake/dawn/kb/cve_2013_2615.rb +29 -0
  169. data/lib/codesake/dawn/kb/cve_2013_2616.rb +29 -0
  170. data/lib/codesake/dawn/kb/cve_2013_2617.rb +30 -0
  171. data/lib/codesake/dawn/kb/cve_2013_3221.rb +29 -0
  172. data/lib/codesake/dawn/kb/cve_2013_4164.rb +32 -0
  173. data/lib/codesake/dawn/kb/cve_2013_4203.rb +27 -0
  174. data/lib/codesake/dawn/kb/cve_2013_4389.rb +28 -0
  175. data/lib/codesake/dawn/kb/cve_2013_4413.rb +29 -0
  176. data/lib/codesake/dawn/kb/cve_2013_4457.rb +31 -0
  177. data/lib/codesake/dawn/kb/cve_2013_4478.rb +28 -0
  178. data/lib/codesake/dawn/kb/cve_2013_4479.rb +28 -0
  179. data/lib/codesake/dawn/kb/cve_2013_4489.rb +30 -0
  180. data/lib/codesake/dawn/kb/cve_2013_4491.rb +30 -0
  181. data/lib/codesake/dawn/kb/cve_2013_4492.rb +31 -0
  182. data/lib/codesake/dawn/kb/cve_2013_4562.rb +29 -0
  183. data/lib/codesake/dawn/kb/cve_2013_4593.rb +29 -0
  184. data/lib/codesake/dawn/kb/cve_2013_5647.rb +31 -0
  185. data/lib/codesake/dawn/kb/cve_2013_5671.rb +28 -0
  186. data/lib/codesake/dawn/kb/cve_2013_6414.rb +31 -0
  187. data/lib/codesake/dawn/kb/cve_2013_6415.rb +30 -0
  188. data/lib/codesake/dawn/kb/cve_2013_6416.rb +31 -0
  189. data/lib/codesake/dawn/kb/cve_2013_6417.rb +31 -0
  190. data/lib/codesake/dawn/kb/cve_2013_6421.rb +30 -0
  191. data/lib/codesake/dawn/kb/cve_2013_6459.rb +30 -0
  192. data/lib/codesake/dawn/kb/cve_2013_6460.rb +55 -0
  193. data/lib/codesake/dawn/kb/cve_2013_6461.rb +59 -0
  194. data/lib/codesake/dawn/kb/cve_2013_7086.rb +29 -0
  195. data/lib/codesake/dawn/kb/cve_2014_0036.rb +29 -0
  196. data/lib/codesake/dawn/kb/cve_2014_0080.rb +30 -0
  197. data/lib/codesake/dawn/kb/cve_2014_0081.rb +28 -0
  198. data/lib/codesake/dawn/kb/cve_2014_0082.rb +29 -0
  199. data/lib/codesake/dawn/kb/cve_2014_0130.rb +28 -0
  200. data/lib/codesake/dawn/kb/cve_2014_1233.rb +29 -0
  201. data/lib/codesake/dawn/kb/cve_2014_1234.rb +28 -0
  202. data/lib/codesake/dawn/kb/cve_2014_2322.rb +30 -0
  203. data/lib/codesake/dawn/kb/cve_2014_2525.rb +61 -0
  204. data/lib/codesake/dawn/kb/cve_2014_2538.rb +28 -0
  205. data/lib/codesake/dawn/kb/cve_2014_3482.rb +30 -0
  206. data/lib/codesake/dawn/kb/cve_2014_3483.rb +29 -0
  207. data/lib/codesake/dawn/kb/dependency_check.rb +86 -0
  208. data/lib/codesake/dawn/kb/deprecation_check.rb +40 -0
  209. data/lib/codesake/dawn/kb/not_revised_code.rb +24 -0
  210. data/lib/codesake/dawn/kb/operating_system_check.rb +98 -0
  211. data/lib/codesake/dawn/kb/osvdb_105971.rb +31 -0
  212. data/lib/codesake/dawn/kb/osvdb_108530.rb +29 -0
  213. data/lib/codesake/dawn/kb/osvdb_108563.rb +30 -0
  214. data/lib/codesake/dawn/kb/osvdb_108569.rb +30 -0
  215. data/lib/codesake/dawn/kb/osvdb_108570.rb +29 -0
  216. data/lib/codesake/dawn/kb/owasp_ror_cheatsheet.rb +41 -0
  217. data/lib/codesake/dawn/kb/owasp_ror_cheatsheet/check_for_backup_files.rb +22 -0
  218. data/lib/codesake/dawn/kb/owasp_ror_cheatsheet/check_for_safe_redirect_and_forward.rb +59 -0
  219. data/lib/codesake/dawn/kb/owasp_ror_cheatsheet/command_injection.rb +30 -0
  220. data/lib/codesake/dawn/kb/owasp_ror_cheatsheet/csrf.rb +31 -0
  221. data/lib/codesake/dawn/kb/owasp_ror_cheatsheet/mass_assignment_in_model.rb +35 -0
  222. data/lib/codesake/dawn/kb/owasp_ror_cheatsheet/security_related_headers.rb +38 -0
  223. data/lib/codesake/dawn/kb/owasp_ror_cheatsheet/sensitive_files.rb +31 -0
  224. data/lib/codesake/dawn/kb/owasp_ror_cheatsheet/session_stored_in_database.rb +33 -0
  225. data/lib/codesake/dawn/kb/pattern_match_check.rb +129 -0
  226. data/lib/codesake/dawn/kb/ruby_version_check.rb +91 -0
  227. data/lib/codesake/dawn/kb/simpleform_xss_20131129.rb +30 -0
  228. data/lib/codesake/dawn/kb/version_check.rb +418 -0
  229. data/lib/codesake/dawn/knowledge_base.rb +513 -0
  230. data/lib/codesake/dawn/padrino.rb +82 -0
  231. data/lib/codesake/dawn/rails.rb +17 -0
  232. data/lib/codesake/dawn/railtie.rb +9 -0
  233. data/lib/codesake/dawn/reporter.rb +280 -0
  234. data/lib/codesake/dawn/sinatra.rb +129 -0
  235. data/lib/codesake/dawn/tasks.rb +27 -0
  236. data/lib/codesake/dawn/utils.rb +21 -0
  237. data/lib/codesake/dawn/version.rb +28 -0
  238. data/lib/tasks/codesake-dawn_tasks.rake +1 -0
  239. data/spec/lib/dawn/codesake_core_spec.rb +9 -0
  240. data/spec/lib/dawn/codesake_knowledgebase_spec.rb +940 -0
  241. data/spec/lib/dawn/codesake_padrino_engine_disabled.rb +45 -0
  242. data/spec/lib/dawn/codesake_rails_engine_disabled.rb +12 -0
  243. data/spec/lib/dawn/codesake_sinatra_engine_disabled.rb +128 -0
  244. data/spec/lib/kb/codesake_cve_2013_0175_spec.rb +35 -0
  245. data/spec/lib/kb/codesake_cve_2013_4457_spec.rb +41 -0
  246. data/spec/lib/kb/codesake_dependency_version_check_spec.rb +76 -0
  247. data/spec/lib/kb/codesake_deprecation_check_spec.rb +56 -0
  248. data/spec/lib/kb/codesake_ruby_version_check_spec.rb +40 -0
  249. data/spec/lib/kb/codesake_version_check_spec.rb +165 -0
  250. data/spec/lib/kb/cve_2011_2705_spec.rb +35 -0
  251. data/spec/lib/kb/cve_2011_2930_spec.rb +31 -0
  252. data/spec/lib/kb/cve_2011_3009_spec.rb +25 -0
  253. data/spec/lib/kb/cve_2011_3187_spec.rb +24 -0
  254. data/spec/lib/kb/cve_2011_4319_spec.rb +44 -0
  255. data/spec/lib/kb/cve_2011_5036_spec.rb +95 -0
  256. data/spec/lib/kb/cve_2012_1098_spec.rb +36 -0
  257. data/spec/lib/kb/cve_2012_2139_spec.rb +20 -0
  258. data/spec/lib/kb/cve_2012_2671_spec.rb +23 -0
  259. data/spec/lib/kb/cve_2012_6109_spec.rb +112 -0
  260. data/spec/lib/kb/cve_2013_0162_spec.rb +23 -0
  261. data/spec/lib/kb/cve_2013_0183_spec.rb +54 -0
  262. data/spec/lib/kb/cve_2013_0184_spec.rb +115 -0
  263. data/spec/lib/kb/cve_2013_0256_spec.rb +34 -0
  264. data/spec/lib/kb/cve_2013_0262_spec.rb +44 -0
  265. data/spec/lib/kb/cve_2013_0263_spec.rb +11 -0
  266. data/spec/lib/kb/cve_2013_1607_spec.rb +15 -0
  267. data/spec/lib/kb/cve_2013_1655_spec.rb +31 -0
  268. data/spec/lib/kb/cve_2013_1756_spec.rb +23 -0
  269. data/spec/lib/kb/cve_2013_2090_spec.rb +15 -0
  270. data/spec/lib/kb/cve_2013_2105_spec.rb +11 -0
  271. data/spec/lib/kb/cve_2013_2119_spec.rb +27 -0
  272. data/spec/lib/kb/cve_2013_2512_spec.rb +15 -0
  273. data/spec/lib/kb/cve_2013_2513_spec.rb +15 -0
  274. data/spec/lib/kb/cve_2013_2516_spec.rb +15 -0
  275. data/spec/lib/kb/cve_2013_4203_spec.rb +15 -0
  276. data/spec/lib/kb/cve_2013_4413_spec.rb +16 -0
  277. data/spec/lib/kb/cve_2013_4489_spec.rb +63 -0
  278. data/spec/lib/kb/cve_2013_4593_spec.rb +16 -0
  279. data/spec/lib/kb/cve_2013_5647_spec.rb +19 -0
  280. data/spec/lib/kb/cve_2013_5671_spec.rb +27 -0
  281. data/spec/lib/kb/cve_2013_6416_spec.rb +31 -0
  282. data/spec/lib/kb/cve_2013_6459_spec.rb +15 -0
  283. data/spec/lib/kb/cve_2013_7086_spec.rb +22 -0
  284. data/spec/lib/kb/cve_2014_0036_spec.rb +15 -0
  285. data/spec/lib/kb/cve_2014_0080_spec.rb +28 -0
  286. data/spec/lib/kb/cve_2014_0081_spec.rb +68 -0
  287. data/spec/lib/kb/cve_2014_0082_spec.rb +52 -0
  288. data/spec/lib/kb/cve_2014_0130_spec.rb +19 -0
  289. data/spec/lib/kb/cve_2014_1233_spec.rb +15 -0
  290. data/spec/lib/kb/cve_2014_1234_spec.rb +16 -0
  291. data/spec/lib/kb/cve_2014_2322_spec.rb +15 -0
  292. data/spec/lib/kb/cve_2014_2538_spec.rb +15 -0
  293. data/spec/lib/kb/cve_2014_3482_spec.rb +15 -0
  294. data/spec/lib/kb/cve_2014_3483_spec.rb +23 -0
  295. data/spec/lib/kb/osvdb_105971_spec.rb +15 -0
  296. data/spec/lib/kb/osvdb_108530_spec.rb +22 -0
  297. data/spec/lib/kb/osvdb_108563_spec.rb +18 -0
  298. data/spec/lib/kb/osvdb_108569_spec.rb +17 -0
  299. data/spec/lib/kb/osvdb_108570_spec.rb +17 -0
  300. data/spec/lib/kb/owasp_ror_cheatsheet_disabled.rb +56 -0
  301. data/spec/spec_helper.rb +11 -0
  302. data/support/bootstrap.js +2027 -0
  303. data/support/bootstrap.min.css +9 -0
  304. data/support/codesake.css +63 -0
  305. metadata +659 -0
  306. metadata.gz.sig +0 -0
@@ -0,0 +1,27 @@
1
+ require 'rake'
2
+
3
+ namespace :dawn do
4
+
5
+ task :require do
6
+ begin
7
+ require 'codesake-dawn'
8
+ rescue LoadError => e
9
+ if defined?(Rails)
10
+ Rake::Task['dawn:require_environment'].invoke
11
+ else
12
+ raise e
13
+ end
14
+ end
15
+ end
16
+ task :require_environment do
17
+ if defined?(Rails)
18
+ Rake::Task['environment'].invoke
19
+ end
20
+ require 'codesake-dawn'
21
+ end
22
+
23
+ desc 'Execute codesake-dawn on the current directory'
24
+ task :run do
25
+ system "dawn ."
26
+ end
27
+ end
@@ -0,0 +1,21 @@
1
+ module Codesake
2
+ module Dawn
3
+ module Utils
4
+
5
+ def debug_me_and_return_true(msg)
6
+ __debug_me_and_return(msg, true)
7
+ end
8
+ def debug_me_and_return_false(msg)
9
+ __debug_me_and_return(msg, false)
10
+ end
11
+ def debug_me(msg)
12
+ $logger.log(msg) if @debug
13
+ end
14
+
15
+ def __debug_me_and_return(msg, status)
16
+ $logger.log(msg) if @debug
17
+ return status
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,28 @@
1
+ module Codesake
2
+ module Dawn
3
+ # codesake-dawn when in development has RELASE equal to '(development)' and
4
+ # the version number is set for the next release.
5
+ #
6
+ # Each codesake-dawn major release will have a Disney Pixar Cars / Cars2
7
+ # character as codename. My son Daniele loves those films and since I love
8
+ # him too, # this is a kinda sort of tribute of my son's passion.
9
+ #
10
+ # Future releases
11
+ #
12
+ # | Character | Release |
13
+ # |-----------------|---------|
14
+ # | "Tow Mater" | 2.0.0 |
15
+ # | "Finn McMissile"| 3.0.0 |
16
+ # | "Fillmore" | 4.0.0 |
17
+ # |"Holly Shiftwell"| 5.0.0 |
18
+ # | "Guido" | 6.0.0 |
19
+ # | "Luigi" | 7.0.0 |
20
+ # | "Doc Hudson" | 8.0.0 |
21
+
22
+ VERSION = "1.2.99"
23
+ CODENAME = "Lightning McQueen"
24
+ # RELEASE = "(development)"
25
+ RELEASE = "20150107"
26
+
27
+ end
28
+ end
@@ -0,0 +1 @@
1
+ load(File.expand_path(File.join(File.dirname(__FILE__), '../codesake/dawn/tasks.rb')))
@@ -0,0 +1,9 @@
1
+ require 'spec_helper'
2
+
3
+ describe "The Codesake::Core" do
4
+ describe "#find_conf" do
5
+ it "returns path name if true passed" do
6
+ Codesake::Dawn::Core.find_conf(true).should_not be_nil
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,940 @@
1
+ require 'spec_helper'
2
+
3
+ describe "The Codesake Dawn knowledge base" do
4
+ let (:kb) {Codesake::Dawn::KnowledgeBase.new}
5
+ it "must not be empty" do
6
+ kb.all.size.should_not == 0
7
+
8
+ end
9
+ it "must have a find method" do
10
+ kb.should respond_to(:find)
11
+ end
12
+
13
+ it "must have an all_by_mvc method" do
14
+ kb.should respond_to(:all_by_mvc)
15
+ end
16
+
17
+
18
+ it "will return a nil object if it doesn't find a particular security check" do
19
+ kb.find("A non existant security check name").should be_nil
20
+ end
21
+
22
+ it "must have at least a test for sinatra" do
23
+ kb.all_by_mvc("sinatra").size.should > 0
24
+ end
25
+
26
+ # KB Content
27
+ it "must have test for CVE_2013_1855" do
28
+ sc = kb.find("CVE-2013-1855")
29
+ sc.should_not be_nil
30
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1855
31
+ end
32
+
33
+
34
+ it "must have test for CVE_2013_0333" do
35
+ sc = kb.find("CVE-2013-0333")
36
+ sc.should_not be_nil
37
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0333
38
+ end
39
+
40
+ it "must have test for CVE_2013_1857" do
41
+ sc = kb.find("CVE-2013-1857")
42
+ sc.should_not be_nil
43
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1857
44
+ end
45
+
46
+ it "must have test for CVE_2012_2660" do
47
+ sc = kb.find("CVE-2012-2660")
48
+ sc.should_not be_nil
49
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_2660
50
+ end
51
+ it "must have test for CVE_2012_2661" do
52
+ sc = kb.find("CVE-2012-2661")
53
+ sc.should_not be_nil
54
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_2661
55
+ end
56
+ it "must have test for CVE_2012_2694" do
57
+ sc = kb.find("CVE-2012-2694")
58
+ sc.should_not be_nil
59
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_2694
60
+ end
61
+ it "must have test for CVE_2012_2695" do
62
+ sc = kb.find("CVE-2012-2695")
63
+ sc.should_not be_nil
64
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_2695
65
+ end
66
+ it "must have test for CVE_2012_6496" do
67
+ sc = kb.find("CVE-2012-6496")
68
+ sc.should_not be_nil
69
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_6496
70
+ end
71
+ it "must have test for CVE_2012_6497" do
72
+ sc = kb.find("CVE-2012-6496")
73
+ sc.should_not be_nil
74
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_6496
75
+ end
76
+
77
+ it "must have test for CVE_2013_0269" do
78
+ sc = kb.find("CVE-2013-0269")
79
+ sc.should_not be_nil
80
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0269
81
+ end
82
+
83
+ it "must have test for CVE_2013_0155" do
84
+ sc = kb.find("CVE-2013-0155")
85
+ sc.should_not be_nil
86
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0155
87
+ end
88
+ it "must have test for CVE_2011_2931" do
89
+ sc = kb.find("CVE-2011-2931")
90
+ sc.should_not be_nil
91
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_2931
92
+ end
93
+ it "must have test for CVE_2012_3465" do
94
+ sc = kb.find("CVE-2012-3465")
95
+ sc.should_not be_nil
96
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_3465
97
+ end
98
+
99
+ it "must have test for CVE_2013_1854" do
100
+ sc = kb.find("CVE-2013-1854")
101
+ sc.should_not be_nil
102
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1854
103
+ end
104
+
105
+ it "must have test for CVE_2013_1856" do
106
+ sc = kb.find("CVE-2013-1856")
107
+ sc.should_not be_nil
108
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1856
109
+ end
110
+
111
+ it "must have test for CVE_2013_0276" do
112
+ sc = kb.find("CVE-2013-0276")
113
+ sc.should_not be_nil
114
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0276
115
+ end
116
+
117
+ it "must have test for CVE_2013_0277" do
118
+ sc = kb.find("CVE-2013-0277")
119
+ sc.should_not be_nil
120
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0277
121
+ end
122
+
123
+ it "must have test for CVE_2013_0156" do
124
+ sc = kb.find("CVE-2013-0156")
125
+ sc.should_not be_nil
126
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0156
127
+ end
128
+
129
+ it "must have test for CVE-2013-2615" do
130
+ sc = kb.find("CVE-2013-2615")
131
+ sc.should_not be_nil
132
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_2615
133
+ end
134
+
135
+ it "must have test for CVE-2013-1875" do
136
+ sc = kb.find("CVE-2013-1875")
137
+ sc.should_not be_nil
138
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1875
139
+ end
140
+
141
+ it "must have test for CVE-2013-1655" do
142
+ sc = kb.find("CVE-2013-1655")
143
+ sc.should_not be_nil
144
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1655
145
+ end
146
+ it "must have test for CVE-2013-1656" do
147
+ sc = kb.find("CVE-2013-1656")
148
+ sc.should_not be_nil
149
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1656
150
+ end
151
+
152
+ it "must have test for CVE-2013-0175" do
153
+ sc = kb.find("CVE-2013-0175")
154
+ sc.should_not be_nil
155
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0175
156
+ end
157
+ it "must have test for CVE-2013-0233" do
158
+ sc = kb.find("CVE-2013-0233")
159
+ sc.should_not be_nil
160
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0233
161
+ end
162
+ it "must have test for CVE-2013-0284" do
163
+ sc = kb.find("CVE-2013-0284")
164
+ sc.should_not be_nil
165
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0284
166
+ end
167
+ it "must have test for CVE-2013-0285" do
168
+ sc = kb.find("CVE-2013-0285")
169
+ sc.should_not be_nil
170
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0285
171
+ end
172
+ it "must have test for CVE-2013-1801" do
173
+ sc = kb.find("CVE-2013-1801")
174
+ sc.should_not be_nil
175
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1801
176
+ end
177
+ it "must have test for CVE-2013-1802" do
178
+ sc = kb.find("CVE-2013-1802")
179
+ sc.should_not be_nil
180
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1802
181
+ end
182
+ it "must have test for CVE-2013-1821" do
183
+ sc = kb.find("CVE-2013-1821")
184
+ sc.should_not be_nil
185
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1821
186
+ end
187
+ it "must have test for CVE-2013-1898" do
188
+ sc = kb.find("CVE-2013-1898")
189
+ sc.should_not be_nil
190
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1898
191
+ end
192
+ it "must have test for CVE-2013-1911" do
193
+ sc = kb.find("CVE-2013-1911")
194
+ sc.should_not be_nil
195
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1911
196
+ end
197
+ it "must have test for CVE-2013-1933" do
198
+ sc = kb.find("CVE-2013-1933")
199
+ sc.should_not be_nil
200
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1933
201
+ end
202
+ it "must have test for CVE-2013-1947" do
203
+ sc = kb.find("CVE-2013-1947")
204
+ sc.should_not be_nil
205
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1947
206
+ end
207
+ it "must have test for CVE-2013-1948" do
208
+ sc = kb.find("CVE-2013-1948")
209
+ sc.should_not be_nil
210
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1948
211
+ end
212
+ it "must have test for CVE-2013-2616" do
213
+ sc = kb.find("CVE-2013-2616")
214
+ sc.should_not be_nil
215
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_2616
216
+ end
217
+ it "must have test for CVE-2013-2617" do
218
+ sc = kb.find("CVE-2013-2617")
219
+ sc.should_not be_nil
220
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_2617
221
+ end
222
+ it "must have test for CVE-2013-3221" do
223
+ sc = kb.find("CVE-2013-3221")
224
+ sc.should_not be_nil
225
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_3221
226
+ end
227
+
228
+ it "must have test for CVE-2011-0447" do
229
+ sc = kb.find("CVE-2011-0447")
230
+ sc.should_not be_nil
231
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_0447
232
+ end
233
+
234
+ it "must have test for CVE-2011-3186" do
235
+ sc = kb.find("CVE-2011-3186")
236
+ sc.should_not be_nil
237
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_3186
238
+ end
239
+ it "must have test for CVE-2012-1099" do
240
+ sc = kb.find("CVE-2012-1099")
241
+ sc.should_not be_nil
242
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_1099
243
+ end
244
+ it "must have test for CVE-2012-1241" do
245
+ sc = kb.find("CVE-2012-1241")
246
+ sc.should_not be_nil
247
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_1241
248
+ end
249
+ it "must have test for CVE-2012-2140" do
250
+ sc = kb.find("CVE-2012-2140")
251
+ sc.should_not be_nil
252
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_2140
253
+ end
254
+ it "must have test for CVE-2012-5370" do
255
+ sc = kb.find("CVE-2012-5370")
256
+ sc.should_not be_nil
257
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_5370
258
+ end
259
+ it "must have test for CVE-2012-5371" do
260
+ sc = kb.find("CVE-2012-5371")
261
+ sc.should_not be_nil
262
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_5371
263
+ end
264
+ it "must have test for CVE-2011-2197" do
265
+ sc = kb.find("CVE-2011-2197")
266
+ sc.should_not be_nil
267
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_2197
268
+ end
269
+ it "must have test for CVE-2011-2932" do
270
+ sc = kb.find("CVE-2011-2932")
271
+ sc.should_not be_nil
272
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_2932
273
+ end
274
+ it "must have test for CVE-2012-3463" do
275
+ sc = kb.find("CVE-2012-3463")
276
+ sc.should_not be_nil
277
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_3463
278
+ end
279
+ it "must have test for CVE-2012-3464" do
280
+ sc = kb.find("CVE-2012-3464")
281
+ sc.should_not be_nil
282
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_3464
283
+ end
284
+ it "must have test for CVE-2012-4464" do
285
+ sc = kb.find("CVE-2012-4464")
286
+ sc.should_not be_nil
287
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_4464
288
+ end
289
+ it "must have test for CVE-2012-4466" do
290
+ sc = kb.find("CVE-2012-4466")
291
+ sc.should_not be_nil
292
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_4466
293
+ end
294
+ it "must have test for CVE-2012-4481" do
295
+ sc = kb.find("CVE-2012-4481")
296
+ sc.should_not be_nil
297
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_4481
298
+ end
299
+ it "must have test for CVE-2012-6134" do
300
+ sc = kb.find("CVE-2012-6134")
301
+ sc.should_not be_nil
302
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_6134
303
+ end
304
+ it "must have test for CVE-2012-6496" do
305
+ sc = kb.find("CVE-2012-6496")
306
+ sc.should_not be_nil
307
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_6496
308
+ end
309
+
310
+ it "must have test for CVE-2012-6497" do
311
+ sc = kb.find("CVE-2012-6497")
312
+ sc.should_not be_nil
313
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_6497
314
+ end
315
+
316
+ it "must have test for CVE-2010-1330" do
317
+ sc = kb.find("CVE-2010-1330")
318
+ sc.should_not be_nil
319
+ sc.class.should == Codesake::Dawn::Kb::CVE_2010_1330
320
+ end
321
+
322
+ it "must have test for CVE-2011-0446" do
323
+ sc = kb.find("CVE-2011-0446")
324
+ sc.should_not be_nil
325
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_0446
326
+ end
327
+
328
+ it "must have test for CVE-2011-0995" do
329
+ sc = kb.find("CVE-2011-0995")
330
+ sc.should_not be_nil
331
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_0995
332
+ end
333
+
334
+ it "must have test for CVE-2011-2929" do
335
+ sc = kb.find("CVE-2011-2929")
336
+ sc.should_not be_nil
337
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_2929
338
+ end
339
+
340
+ it "must have test for CVE-2011-4815" do
341
+ sc = kb.find("CVE-2011-4815")
342
+ sc.should_not be_nil
343
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_4815
344
+ end
345
+
346
+ it "must have test for CVE-2012-3424" do
347
+ sc = kb.find("CVE-2012-3424")
348
+ sc.should_not be_nil
349
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_3424
350
+ end
351
+
352
+ it "must have test for CVE-2012-5380" do
353
+ sc = kb.find("CVE-2012-5380")
354
+ sc.should_not be_nil
355
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_5380
356
+ end
357
+
358
+ it "must have test for CVE-2012-4522" do
359
+ sc = kb.find("CVE-2012-4522")
360
+ sc.should_not be_nil
361
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_4522
362
+ end
363
+ it "must have test for CVE-2013-2065" do
364
+ sc = kb.find("CVE-2013-2065")
365
+ sc.should_not be_nil
366
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_2065
367
+ end
368
+ it "must have test for CVE-2013-4389" do
369
+ sc = kb.find("CVE-2013-4389")
370
+ sc.should_not be_nil
371
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4389
372
+ end
373
+
374
+ it "must have test for CVE-2013-4164" do
375
+ sc = kb.find("CVE-2013-4164")
376
+ sc.should_not be_nil
377
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4164
378
+ end
379
+
380
+ it "must have test for CVE-2013-4562" do
381
+ sc = kb.find("CVE-2013-4562")
382
+ sc.should_not be_nil
383
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4562
384
+ end
385
+ it "must have test for CVE-2013-4457" do
386
+ sc = kb.find("CVE-2013-4457")
387
+ sc.should_not be_nil
388
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4457
389
+ end
390
+
391
+ it "must have test for 20131129-SimpleForm-Xss" do
392
+ sc = kb.find("Simple Form XSS - 20131129")
393
+ sc.should_not be_nil
394
+ sc.class.should == Codesake::Dawn::Kb::SimpleForm_Xss_20131129
395
+ end
396
+
397
+ it "must have test for CVE-2013-4491" do
398
+ sc = kb.find("CVE-2013-4491")
399
+ sc.should_not be_nil
400
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4491
401
+ end
402
+
403
+ it "must have test for CVE-2013-4492" do
404
+ sc = kb.find("CVE-2013-4492")
405
+ sc.should_not be_nil
406
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4492
407
+ end
408
+ it "must have test for CVE-2013-6414" do
409
+ sc = kb.find("CVE-2013-6414")
410
+ sc.should_not be_nil
411
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_6414
412
+ end
413
+ it "must have test for CVE-2013-6415" do
414
+ sc = kb.find("CVE-2013-6415")
415
+ sc.should_not be_nil
416
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_6415
417
+ end
418
+ it "must have test for CVE-2013-6416" do
419
+ sc = kb.find("CVE-2013-6416")
420
+ sc.should_not be_nil
421
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_6416
422
+ end
423
+
424
+ it "must have test for CVE-2013-6417" do
425
+ sc = kb.find("CVE-2013-6417")
426
+ sc.should_not be_nil
427
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_6417
428
+ end
429
+
430
+ it "must have test for CVE-2013-6460" do
431
+ sc = kb.find("CVE-2013-6460")
432
+ sc.should_not be_nil
433
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_6460
434
+ end
435
+ it "must have test for CVE-2013-6461" do
436
+ sc = kb.find("CVE-2013-6461")
437
+ sc.should_not be_nil
438
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_6461
439
+ end
440
+ it "must have test for CVE-2013-4478" do
441
+ sc = kb.find("CVE-2013-4478")
442
+ sc.should_not be_nil
443
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4478
444
+ end
445
+ it "must have test for CVE-2013-4479" do
446
+ sc = kb.find("CVE-2013-4479")
447
+ sc.should_not be_nil
448
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4479
449
+ end
450
+ it "must have test for CVE-2013-1812" do
451
+ sc = kb.find("CVE-2013-1812")
452
+ sc.should_not be_nil
453
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1812
454
+ end
455
+ it "must have test for CVE-2013-6421" do
456
+ sc = kb.find("CVE-2013-6421")
457
+ sc.should_not be_nil
458
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_6421
459
+ end
460
+
461
+ it "must have test for CVE-2004-0755" do
462
+ sc = kb.find("CVE-2004-0755")
463
+ sc.should_not be_nil
464
+ sc.class.should == Codesake::Dawn::Kb::CVE_2004_0755
465
+ end
466
+ it "must have test for CVE-2004-0983" do
467
+ sc = kb.find("CVE-2004-0983")
468
+ sc.should_not be_nil
469
+ sc.class.should == Codesake::Dawn::Kb::CVE_2004_0983
470
+ end
471
+ it "must have test for CVE-2005-1992" do
472
+ sc = kb.find("CVE-2005-1992")
473
+ sc.should_not be_nil
474
+ sc.class.should == Codesake::Dawn::Kb::CVE_2005_1992
475
+ end
476
+ it "must have test for CVE-2005-2337" do
477
+ sc = kb.find("CVE-2005-2337")
478
+ sc.should_not be_nil
479
+ sc.class.should == Codesake::Dawn::Kb::CVE_2005_2337
480
+ end
481
+ it "must have test for CVE-2006-1931" do
482
+ sc = kb.find("CVE-2006-1931")
483
+ sc.should_not be_nil
484
+ sc.class.should == Codesake::Dawn::Kb::CVE_2006_1931
485
+ end
486
+ it "must have test for CVE-2006-2582" do
487
+ sc = kb.find("CVE-2006-2582")
488
+ sc.should_not be_nil
489
+ sc.class.should == Codesake::Dawn::Kb::CVE_2006_2582
490
+ end
491
+ it "must have test for CVE-2006-3694" do
492
+ sc = kb.find("CVE-2006-3694")
493
+ sc.should_not be_nil
494
+ sc.class.should == Codesake::Dawn::Kb::CVE_2006_3694
495
+ end
496
+
497
+ it "must have test for CVE-2006-4112" do
498
+ sc = kb.find("CVE-2006-4112")
499
+ sc.should_not be_nil
500
+ sc.class.should == Codesake::Dawn::Kb::CVE_2006_4112
501
+ end
502
+
503
+ it "must have test for CVE-2006-5467" do
504
+ sc = kb.find("CVE-2006-5467")
505
+ sc.should_not be_nil
506
+ sc.class.should == Codesake::Dawn::Kb::CVE_2006_5467
507
+ end
508
+
509
+ it "must have test for CVE-2006-6303" do
510
+ sc = kb.find("CVE-2006-6303")
511
+ sc.should_not be_nil
512
+ sc.class.should == Codesake::Dawn::Kb::CVE_2006_6303
513
+ end
514
+ it "must have test for CVE-2006-6852" do
515
+ sc = kb.find("CVE-2006-6852")
516
+ sc.should_not be_nil
517
+ sc.class.should == Codesake::Dawn::Kb::CVE_2006_6852
518
+ end
519
+ it "must have test for CVE-2006-6979" do
520
+ sc = kb.find("CVE-2006-6979")
521
+ sc.should_not be_nil
522
+ sc.class.should == Codesake::Dawn::Kb::CVE_2006_6979
523
+ end
524
+ it "must have test for CVE-2007-0469" do
525
+ sc = kb.find("CVE-2007-0469")
526
+ sc.should_not be_nil
527
+ sc.class.should == Codesake::Dawn::Kb::CVE_2007_0469
528
+ end
529
+ it "must have test for CVE-2013-2090" do
530
+ sc = kb.find("CVE-2013-2090")
531
+ sc.should_not be_nil
532
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_2090
533
+ end
534
+ it "must have test for CVE-2011-4319" do
535
+ sc = kb.find("CVE-2011-4319")
536
+ sc.should_not be_nil
537
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_4319
538
+ end
539
+ it "must have test for CVE-2011-3187" do
540
+ sc = kb.find("CVE-2011-3187")
541
+ sc.should_not be_nil
542
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_3187
543
+ end
544
+ it "must have test for CVE-2011-3009" do
545
+ sc = kb.find("CVE-2011-3009")
546
+ sc.should_not be_nil
547
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_3009
548
+ end
549
+
550
+ it "must have test for CVE-2011-2930" do
551
+ sc = kb.find("CVE-2011-2930")
552
+ sc.should_not be_nil
553
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_2930
554
+ end
555
+
556
+ it "must have test for CVE-2011-2705" do
557
+ sc = kb.find("CVE-2011-2705")
558
+ sc.should_not be_nil
559
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_2705
560
+ end
561
+ it "must have test for CVE-2011-2686" do
562
+ sc = kb.find("CVE-2011-2686")
563
+ sc.should_not be_nil
564
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_2686
565
+ end
566
+ it "must have test for CVE-2011-1005" do
567
+ sc = kb.find("CVE-2011-1005")
568
+ sc.should_not be_nil
569
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_1005
570
+ end
571
+ it "must have test for CVE-2011-1004" do
572
+ sc = kb.find("CVE-2011-1004")
573
+ sc.should_not be_nil
574
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_1004
575
+ end
576
+ it "must have test for CVE-2011-0739" do
577
+ sc = kb.find("CVE-2011-0739")
578
+ sc.should_not be_nil
579
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_0739
580
+ end
581
+ it "must have test for CVE-2011-0188" do
582
+ sc = kb.find("CVE-2011-0188")
583
+ sc.should_not be_nil
584
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_0188
585
+ end
586
+ it "must have test for CVE-2010-3933" do
587
+ sc = kb.find("CVE-2010-3933")
588
+ sc.should_not be_nil
589
+ sc.class.should == Codesake::Dawn::Kb::CVE_2010_3933
590
+ end
591
+ it "must have test for CVE-2010-2489" do
592
+ sc = kb.find("CVE-2010-2489")
593
+ sc.should_not be_nil
594
+ sc.class.should == Codesake::Dawn::Kb::CVE_2010_2489
595
+ end
596
+ it "must have test for CVE-2009-4214" do
597
+ sc = kb.find("CVE-2009-4214")
598
+ sc.should_not be_nil
599
+ sc.class.should == Codesake::Dawn::Kb::CVE_2009_4214
600
+ end
601
+ it "must have test for CVE-2009-4124" do
602
+ sc = kb.find("CVE-2009-4124")
603
+ sc.should_not be_nil
604
+ sc.class.should == Codesake::Dawn::Kb::CVE_2009_4124
605
+ end
606
+ it "must have test for CVE-2009-4078" do
607
+ sc = kb.find("CVE-2009-4078")
608
+ sc.should_not be_nil
609
+ sc.class.should == Codesake::Dawn::Kb::CVE_2009_4078
610
+ end
611
+ it "must have test for CVE-2008-7248" do
612
+ sc = kb.find("CVE-2008-7248")
613
+ sc.should_not be_nil
614
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_7248
615
+ end
616
+ it "must have test for CVE-2008-5189" do
617
+ sc = kb.find("CVE-2008-5189")
618
+ sc.should_not be_nil
619
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_5189
620
+ end
621
+ it "must have test for CVE-2008-4310" do
622
+ sc = kb.find("CVE-2008-4310")
623
+ sc.should_not be_nil
624
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_4310
625
+ end
626
+ it "must have test for CVE-2008-4094" do
627
+ sc = kb.find("CVE-2008-4094")
628
+ sc.should_not be_nil
629
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_4094
630
+ end
631
+ it "must have test for CVE-2008-3905" do
632
+ sc = kb.find("CVE-2008-3905")
633
+ sc.should_not be_nil
634
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_3905
635
+ end
636
+ it "must have test for CVE-2008-3790" do
637
+ sc = kb.find("CVE-2008-3790")
638
+ sc.should_not be_nil
639
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_3790
640
+ end
641
+ it "must have test for CVE-2008-3657" do
642
+ sc = kb.find("CVE-2008-3657")
643
+ sc.should_not be_nil
644
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_3657
645
+ end
646
+ it "must have test for CVE-2008-3655" do
647
+ sc = kb.find("CVE-2008-3655")
648
+ sc.should_not be_nil
649
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_3655
650
+ end
651
+ it "must have test for CVE-2008-2725" do
652
+ sc = kb.find("CVE-2008-2725")
653
+ sc.should_not be_nil
654
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_2725
655
+ end
656
+ it "must have test for CVE-2008-2663" do
657
+ sc = kb.find("CVE-2008-2663")
658
+ sc.should_not be_nil
659
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_2663
660
+ end
661
+ it "must have test for CVE-2008-2664" do
662
+ sc = kb.find("CVE-2008-2664")
663
+ sc.should_not be_nil
664
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_2664
665
+ end
666
+ it "must have test for CVE-2008-2662" do
667
+ sc = kb.find("CVE-2008-2662")
668
+ sc.should_not be_nil
669
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_2662
670
+ end
671
+ it "must have test for CVE-2008-2376" do
672
+ sc = kb.find("CVE-2008-2376")
673
+ sc.should_not be_nil
674
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_2376
675
+ end
676
+ it "must have test for CVE-2008-1891" do
677
+ sc = kb.find("CVE-2008-1891")
678
+ sc.should_not be_nil
679
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_1891
680
+ end
681
+ it "must have test for CVE-2008-1145" do
682
+ sc = kb.find("CVE-2008-1145")
683
+ sc.should_not be_nil
684
+ sc.class.should == Codesake::Dawn::Kb::CVE_2008_1145
685
+ end
686
+ it "must have test for CVE-2007-6612" do
687
+ sc = kb.find("CVE-2007-6612")
688
+ sc.should_not be_nil
689
+ sc.class.should == Codesake::Dawn::Kb::CVE_2007_6612
690
+ end
691
+ it "must have test for CVE-2007-6077" do
692
+ sc = kb.find("CVE-2007-6077")
693
+ sc.should_not be_nil
694
+ sc.class.should == Codesake::Dawn::Kb::CVE_2007_6077
695
+ end
696
+ it "must have test for CVE-2007-5770" do
697
+ sc = kb.find("CVE-2007-5770")
698
+ sc.should_not be_nil
699
+ sc.class.should == Codesake::Dawn::Kb::CVE_2007_5770
700
+ end
701
+ it "must have test for CVE-2007-5380" do
702
+ sc = kb.find("CVE-2007-5380")
703
+ sc.should_not be_nil
704
+ sc.class.should == Codesake::Dawn::Kb::CVE_2007_5380
705
+ end
706
+ it "must have test for CVE-2007-5379" do
707
+ sc = kb.find("CVE-2007-5379")
708
+ sc.should_not be_nil
709
+ sc.class.should == Codesake::Dawn::Kb::CVE_2007_5379
710
+ end
711
+ it "must have test for CVE-2007-5162" do
712
+ sc = kb.find("CVE-2007-5162")
713
+ sc.should_not be_nil
714
+ sc.class.should == Codesake::Dawn::Kb::CVE_2007_5162
715
+ end
716
+ it "must have test for CVE-2013-2119" do
717
+ sc = kb.find("CVE-2013-2119")
718
+ sc.should_not be_nil
719
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_2119
720
+ end
721
+ it "must have test for CVE-2013-7086" do
722
+ sc = kb.find("CVE-2013-7086")
723
+ sc.should_not be_nil
724
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_7086
725
+ end
726
+ it "must have test for CVE-2013-6459" do
727
+ sc = kb.find("CVE-2013-6459")
728
+ sc.should_not be_nil
729
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_6459
730
+ end
731
+ it "must have test for CVE-2013-5647" do
732
+ sc = kb.find("CVE-2013-5647")
733
+ sc.should_not be_nil
734
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_5647
735
+ end
736
+ it "must have test for CVE-2013-0263" do
737
+ sc = kb.find("CVE-2013-0263")
738
+ sc.should_not be_nil
739
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0263
740
+ end
741
+ it "must have test for CVE-2013-0256" do
742
+ sc = kb.find("CVE-2013-0256")
743
+ sc.should_not be_nil
744
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0256
745
+ end
746
+ it "must have test for CVE-2013-0162" do
747
+ sc = kb.find("CVE-2013-0162")
748
+ sc.should_not be_nil
749
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0162
750
+ end
751
+ it "must have test for CVE-2012-2671" do
752
+ sc = kb.find("CVE-2012-2671")
753
+ sc.should_not be_nil
754
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_2671
755
+ end
756
+ it "must have test for CVE-2012-2139" do
757
+ sc = kb.find("CVE-2012-2139")
758
+ sc.should_not be_nil
759
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_2139
760
+ end
761
+ it "must have test for CVE-2012-1098" do
762
+ sc = kb.find("CVE-2012-1098")
763
+ sc.should_not be_nil
764
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_1098
765
+ end
766
+ it "must have test for CVE-2013-1756" do
767
+ sc = kb.find("CVE-2013-1756")
768
+ sc.should_not be_nil
769
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1756
770
+ end
771
+ it "must have test for CVE-2014-1233" do
772
+ sc = kb.find("CVE-2014-1233")
773
+ sc.should_not be_nil
774
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_1233
775
+ end
776
+ it "must have test for CVE-2014-1234" do
777
+ sc = kb.find("CVE-2014-1234")
778
+ sc.should_not be_nil
779
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_1234
780
+ end
781
+ it "must have test for CVE-2013-4413" do
782
+ sc = kb.find("CVE-2013-4413")
783
+ sc.should_not be_nil
784
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4413
785
+ end
786
+
787
+ it "must have test for CVE-2013-4489" do
788
+ sc = kb.find("CVE-2013-4489")
789
+ sc.should_not be_nil
790
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4489
791
+ end
792
+ it "must have test for CVE-2013-5671" do
793
+ sc = kb.find("CVE-2013-5671")
794
+ sc.should_not be_nil
795
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_5671
796
+ end
797
+ it "must have test for CVE-2013-4593" do
798
+ sc = kb.find("CVE-2013-4593")
799
+ sc.should_not be_nil
800
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4593
801
+ end
802
+ it "must have test for CVE-2013-0262" do
803
+ sc = kb.find("CVE-2013-0262")
804
+ sc.should_not be_nil
805
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0262
806
+ end
807
+ it "must have test for CVE-2013-0184" do
808
+ sc = kb.find("CVE-2013-0184")
809
+ sc.should_not be_nil
810
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0184
811
+ end
812
+ it "must have test for CVE-2013-0183" do
813
+ sc = kb.find("CVE-2013-0183")
814
+ sc.should_not be_nil
815
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_0183
816
+ end
817
+ it "must have test for CVE-2012-6109" do
818
+ sc = kb.find("CVE-2012-6109")
819
+ sc.should_not be_nil
820
+ sc.class.should == Codesake::Dawn::Kb::CVE_2012_6109
821
+ end
822
+ it "must have test for CVE-2011-5036" do
823
+ sc = kb.find("CVE-2011-5036")
824
+ sc.should_not be_nil
825
+ sc.class.should == Codesake::Dawn::Kb::CVE_2011_5036
826
+ end
827
+ it "must have test for CVE-2013-2516" do
828
+ sc = kb.find("CVE-2013-2516")
829
+ sc.should_not be_nil
830
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_2516
831
+ end
832
+ it "must have test for CVE-2013-2513" do
833
+ sc = kb.find("CVE-2013-2513")
834
+ sc.should_not be_nil
835
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_2513
836
+ end
837
+ it "must have test for CVE-2013-2512" do
838
+ sc = kb.find("CVE-2013-2512")
839
+ sc.should_not be_nil
840
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_2512
841
+ end
842
+ it "must have test for CVE-2013-1607" do
843
+ sc = kb.find("CVE-2013-1607")
844
+ sc.should_not be_nil
845
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_1607
846
+ end
847
+ it "must have test for CVE-2014-0080" do
848
+ sc = kb.find("CVE-2014-0080")
849
+ sc.should_not be_nil
850
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_0080
851
+
852
+ end
853
+
854
+ it "must have test for CVE-2014-0081" do
855
+ sc = kb.find("CVE-2014-0081")
856
+ sc.should_not be_nil
857
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_0081
858
+ end
859
+ it "must have test for CVE-2014-0082" do
860
+ sc = kb.find("CVE-2014-0082")
861
+ sc.should_not be_nil
862
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_0082
863
+ end
864
+ it "must have test for CVE-2014-2322" do
865
+ sc = kb.find("CVE-2014-2322")
866
+ sc.should_not be_nil
867
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_2322
868
+ end
869
+
870
+ it "must have test for CVE-2014-0036" do
871
+ sc = kb.find("CVE-2014-0036")
872
+ sc.should_not be_nil
873
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_0036
874
+ end
875
+ it "must have test for CVE-2014-2538" do
876
+ sc = kb.find("CVE-2014-2538")
877
+ sc.should_not be_nil
878
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_2538
879
+ end
880
+ it "must have test for CVE-2013-4203" do
881
+ sc = kb.find("CVE-2013-4203")
882
+ sc.should_not be_nil
883
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_4203
884
+ end
885
+ it "must have test for CVE-2014-2525" do
886
+ sc = kb.find("CVE-2014-2525")
887
+ sc.should_not be_nil
888
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_2525
889
+ end
890
+ it "must have test for OSVDB_105971" do
891
+ sc = kb.find("OSVDB-105971")
892
+ sc.should_not be_nil
893
+ sc.class.should == Codesake::Dawn::Kb::OSVDB_105971
894
+ end
895
+
896
+ it "must have test for CVE-2014-0130" do
897
+ sc = kb.find("CVE-2014-0130")
898
+ sc.should_not be_nil
899
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_0130
900
+ end
901
+ it "must have test for CVE-2013-2105" do
902
+ sc = kb.find("CVE-2013-2105")
903
+ sc.should_not be_nil
904
+ sc.class.should == Codesake::Dawn::Kb::CVE_2013_2105
905
+ end
906
+ it "must have test for OSVDB-108569" do
907
+ sc = kb.find("OSVDB-108569")
908
+ sc.should_not be_nil
909
+ sc.class.should == Codesake::Dawn::Kb::OSVDB_108569
910
+ end
911
+
912
+ it "must have test for OSVDB-108570" do
913
+ sc = kb.find("OSVDB-108570")
914
+ sc.should_not be_nil
915
+ sc.class.should == Codesake::Dawn::Kb::OSVDB_108570
916
+ end
917
+
918
+ it "must have test for OSVDB-108530" do
919
+ sc = kb.find("OSVDB-108530")
920
+ sc.should_not be_nil
921
+ sc.class.should == Codesake::Dawn::Kb::OSVDB_108530
922
+ end
923
+ it "must have test for OSVDB-108563" do
924
+ sc = kb.find("OSVDB-108563")
925
+ sc.should_not be_nil
926
+ sc.class.should == Codesake::Dawn::Kb::OSVDB_108563
927
+ end
928
+
929
+ it "must have test for CVE-2014-3482" do
930
+ sc = kb.find("CVE-2014-3482")
931
+ sc.should_not be_nil
932
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_3482
933
+ end
934
+
935
+ it "must have test for CVE-2014-3483" do
936
+ sc = kb.find("CVE-2014-3483")
937
+ sc.should_not be_nil
938
+ sc.class.should == Codesake::Dawn::Kb::CVE_2014_3483
939
+ end
940
+ end