security.txt 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924
  1. ==========================
  2. Archive of security issues
  3. ==========================
  4. Django's development team is strongly committed to responsible
  5. reporting and disclosure of security-related issues, as outlined in
  6. :doc:`Django's security policies </internals/security>`.
  7. As part of that commitment, we maintain the following historical list
  8. of issues which have been fixed and disclosed. For each issue, the
  9. list below includes the date, a brief description, the `CVE identifier
  10. <https://en.wikipedia.org/wiki/Common_Vulnerabilities_and_Exposures>`_
  11. if applicable, a list of affected versions, a link to the full
  12. disclosure and links to the appropriate patch(es).
  13. Some important caveats apply to this information:
  14. * Lists of affected versions include only those versions of Django
  15. which had stable, security-supported releases at the time of
  16. disclosure. This means older versions (whose security support had
  17. expired) and versions which were in pre-release (alpha/beta/RC)
  18. states at the time of disclosure may have been affected, but are not
  19. listed.
  20. * The Django project has on occasion issued security advisories,
  21. pointing out potential security problems which can arise from
  22. improper configuration or from other issues outside of Django
  23. itself. Some of these advisories have received CVEs; when that is
  24. the case, they are listed here, but as they have no accompanying
  25. patches or releases, only the description, disclosure and CVE will
  26. be listed.
  27. Issues prior to Django's security process
  28. =========================================
  29. Some security issues were handled before Django had a formalized
  30. security process in use. For these, new releases may not have been
  31. issued at the time and CVEs may not have been assigned.
  32. August 16, 2006 - :cve:`2007-0404`
  33. ----------------------------------
  34. Filename validation issue in translation framework. `Full description
  35. <https://www.djangoproject.com/weblog/2006/aug/16/compilemessages/>`__
  36. Versions affected
  37. ~~~~~~~~~~~~~~~~~
  38. * Django 0.90 :commit:`(patch) <518d406e53>`
  39. * Django 0.91 :commit:`(patch) <518d406e53>`
  40. * Django 0.95 :commit:`(patch) <a132d411c6>` (released January 21 2007)
  41. January 21, 2007 - :cve:`2007-0405`
  42. -----------------------------------
  43. Apparent "caching" of authenticated user. `Full description
  44. <https://www.djangoproject.com/weblog/2007/jan/21/0951/>`__
  45. Versions affected
  46. ~~~~~~~~~~~~~~~~~
  47. * Django 0.95 :commit:`(patch) <e89f0a6558>`
  48. Issues under Django's security process
  49. ======================================
  50. All other security issues have been handled under versions of Django's
  51. security process. These are listed below.
  52. October 26, 2007 - :cve:`2007-5712`
  53. -----------------------------------
  54. Denial-of-service via arbitrarily-large ``Accept-Language`` header. `Full
  55. description <https://www.djangoproject.com/weblog/2007/oct/26/security-fix/>`__
  56. Versions affected
  57. ~~~~~~~~~~~~~~~~~
  58. * Django 0.91 :commit:`(patch) <8bc36e726c9e8c75c681d3ad232df8e882aaac81>`
  59. * Django 0.95 :commit:`(patch) <412ed22502e11c50dbfee854627594f0e7e2c234>`
  60. * Django 0.96 :commit:`(patch) <7dd2dd08a79e388732ce00e2b5514f15bd6d0f6f>`
  61. May 14, 2008 - :cve:`2008-2302`
  62. -------------------------------
  63. XSS via admin login redirect. `Full description
  64. <https://www.djangoproject.com/weblog/2008/may/14/security/>`__
  65. Versions affected
  66. ~~~~~~~~~~~~~~~~~
  67. * Django 0.91 :commit:`(patch) <50ce7fb57d>`
  68. * Django 0.95 :commit:`(patch) <50ce7fb57d>`
  69. * Django 0.96 :commit:`(patch) <7791e5c050>`
  70. September 2, 2008 - :cve:`2008-3909`
  71. ------------------------------------
  72. CSRF via preservation of POST data during admin login. `Full description
  73. <https://www.djangoproject.com/weblog/2008/sep/02/security/>`__
  74. Versions affected
  75. ~~~~~~~~~~~~~~~~~
  76. * Django 0.91 :commit:`(patch) <44debfeaa4473bd28872c735dd3d9afde6886752>`
  77. * Django 0.95 :commit:`(patch) <aee48854a164382c655acb9f18b3c06c3d238e81>`
  78. * Django 0.96 :commit:`(patch) <7e0972bded362bc4b851c109df2c8a6548481a8e>`
  79. July 28, 2009 - :cve:`2009-2659`
  80. --------------------------------
  81. Directory-traversal in development server media handler. `Full description
  82. <https://www.djangoproject.com/weblog/2009/jul/28/security/>`__
  83. Versions affected
  84. ~~~~~~~~~~~~~~~~~
  85. * Django 0.96 :commit:`(patch) <da85d76fd6>`
  86. * Django 1.0 :commit:`(patch) <df7f917b7f>`
  87. October 9, 2009 - :cve:`2009-3965`
  88. ----------------------------------
  89. Denial-of-service via pathological regular expression performance. `Full
  90. description <https://www.djangoproject.com/weblog/2009/oct/09/security/>`__
  91. Versions affected
  92. ~~~~~~~~~~~~~~~~~
  93. * Django 1.0 :commit:`(patch) <594a28a904>`
  94. * Django 1.1 :commit:`(patch) <e3e992e18b>`
  95. September 8, 2010 - :cve:`2010-3082`
  96. ------------------------------------
  97. XSS via trusting unsafe cookie value. `Full description
  98. <https://www.djangoproject.com/weblog/2010/sep/08/security-release/>`__
  99. Versions affected
  100. ~~~~~~~~~~~~~~~~~
  101. * Django 1.2 :commit:`(patch) <7f84657b6b>`
  102. December 22, 2010 - :cve:`2010-4534`
  103. ------------------------------------
  104. Information leakage in administrative interface. `Full description
  105. <https://www.djangoproject.com/weblog/2010/dec/22/security/>`__
  106. Versions affected
  107. ~~~~~~~~~~~~~~~~~
  108. * Django 1.1 :commit:`(patch) <17084839fd>`
  109. * Django 1.2 :commit:`(patch) <85207a245b>`
  110. December 22, 2010 - :cve:`2010-4535`
  111. ------------------------------------
  112. Denial-of-service in password-reset mechanism. `Full description
  113. <https://www.djangoproject.com/weblog/2010/dec/22/security/>`__
  114. Versions affected
  115. ~~~~~~~~~~~~~~~~~
  116. * Django 1.1 :commit:`(patch) <7f8dd9cbac>`
  117. * Django 1.2 :commit:`(patch) <d5d8942a16>`
  118. February 8, 2011 - :cve:`2011-0696`
  119. -----------------------------------
  120. CSRF via forged HTTP headers. `Full description
  121. <https://www.djangoproject.com/weblog/2011/feb/08/security/>`__
  122. Versions affected
  123. ~~~~~~~~~~~~~~~~~
  124. * Django 1.1 :commit:`(patch) <408c5c873c>`
  125. * Django 1.2 :commit:`(patch) <818e70344e>`
  126. February 8, 2011 - :cve:`2011-0697`
  127. -----------------------------------
  128. XSS via unsanitized names of uploaded files. `Full description
  129. <https://www.djangoproject.com/weblog/2011/feb/08/security/>`__
  130. Versions affected
  131. ~~~~~~~~~~~~~~~~~
  132. * Django 1.1 :commit:`(patch) <1966786d2d>`
  133. * Django 1.2 :commit:`(patch) <1f814a9547>`
  134. February 8, 2011 - :cve:`2011-0698`
  135. -----------------------------------
  136. Directory-traversal on Windows via incorrect path-separator handling. `Full
  137. description <https://www.djangoproject.com/weblog/2011/feb/08/security/>`__
  138. Versions affected
  139. ~~~~~~~~~~~~~~~~~
  140. * Django 1.1 :commit:`(patch) <570a32a047>`
  141. * Django 1.2 :commit:`(patch) <194566480b>`
  142. September 9, 2011 - :cve:`2011-4136`
  143. ------------------------------------
  144. Session manipulation when using memory-cache-backed session. `Full description
  145. <https://www.djangoproject.com/weblog/2011/sep/09/security-releases-issued/>`__
  146. Versions affected
  147. ~~~~~~~~~~~~~~~~~
  148. * Django 1.2 :commit:`(patch) <ac7c3a110f>`
  149. * Django 1.3 :commit:`(patch) <fbe2eead2f>`
  150. September 9, 2011 - :cve:`2011-4137`
  151. ------------------------------------
  152. Denial-of-service via ``URLField.verify_exists``. `Full description
  153. <https://www.djangoproject.com/weblog/2011/sep/09/security-releases-issued/>`__
  154. Versions affected
  155. ~~~~~~~~~~~~~~~~~
  156. * Django 1.2 :commit:`(patch) <7268f8af86>`
  157. * Django 1.3 :commit:`(patch) <1a76dbefdf>`
  158. September 9, 2011 - :cve:`2011-4138`
  159. ------------------------------------
  160. Information leakage/arbitrary request issuance via ``URLField.verify_exists``.
  161. `Full description
  162. <https://www.djangoproject.com/weblog/2011/sep/09/security-releases-issued/>`__
  163. Versions affected
  164. ~~~~~~~~~~~~~~~~~
  165. * Django 1.2: :commit:`(patch) <7268f8af86>`
  166. * Django 1.3: :commit:`(patch) <1a76dbefdf>`
  167. September 9, 2011 - :cve:`2011-4139`
  168. ------------------------------------
  169. ``Host`` header cache poisoning. `Full description
  170. <https://www.djangoproject.com/weblog/2011/sep/09/security-releases-issued/>`__
  171. Versions affected
  172. ~~~~~~~~~~~~~~~~~
  173. * Django 1.2 :commit:`(patch) <c613af4d64>`
  174. * Django 1.3 :commit:`(patch) <2f7fadc38e>`
  175. September 9, 2011 - :cve:`2011-4140`
  176. ------------------------------------
  177. Potential CSRF via ``Host`` header. `Full description
  178. <https://www.djangoproject.com/weblog/2011/sep/09/security-releases-issued/>`__
  179. Versions affected
  180. ~~~~~~~~~~~~~~~~~
  181. This notification was an advisory only, so no patches were issued.
  182. * Django 1.2
  183. * Django 1.3
  184. July 30, 2012 - :cve:`2012-3442`
  185. --------------------------------
  186. XSS via failure to validate redirect scheme. `Full description
  187. <https://www.djangoproject.com/weblog/2012/jul/30/security-releases-issued/>`__
  188. Versions affected
  189. ~~~~~~~~~~~~~~~~~
  190. * Django 1.3: :commit:`(patch) <4dea4883e6c50d75f215a6b9bcbd95273f57c72d>`
  191. * Django 1.4: :commit:`(patch) <e34685034b60be1112160e76091e5aee60149fa1>`
  192. July 30, 2012 - :cve:`2012-3443`
  193. --------------------------------
  194. Denial-of-service via compressed image files. `Full description
  195. <https://www.djangoproject.com/weblog/2012/jul/30/security-releases-issued/>`__
  196. Versions affected
  197. ~~~~~~~~~~~~~~~~~
  198. * Django 1.3: :commit:`(patch) <b2eb4787a0fff9c9993b78be5c698e85108f3446>`
  199. * Django 1.4: :commit:`(patch) <c14f325c4eef628bc7bfd8873c3a72aeb0219141>`
  200. July 30, 2012 - :cve:`2012-3444`
  201. --------------------------------
  202. Denial-of-service via large image files. `Full description
  203. <https://www.djangoproject.com/weblog/2012/jul/30/security-releases-issued/>`__
  204. Versions affected
  205. ~~~~~~~~~~~~~~~~~
  206. * Django 1.3 :commit:`(patch) <9ca0ff6268eeff92d0d0ac2c315d4b6a8e229155>`
  207. * Django 1.4 :commit:`(patch) <da33d67181b53fe6cc737ac1220153814a1509f6>`
  208. October 17, 2012 - :cve:`2012-4520`
  209. -----------------------------------
  210. ``Host`` header poisoning. `Full description
  211. <https://www.djangoproject.com/weblog/2012/oct/17/security/>`__
  212. Versions affected
  213. ~~~~~~~~~~~~~~~~~
  214. * Django 1.3 :commit:`(patch) <b45c377f8f488955e0c7069cad3f3dd21910b071>`
  215. * Django 1.4 :commit:`(patch) <92d3430f12171f16f566c9050c40feefb830a4a3>`
  216. December 10, 2012 - No CVE 1
  217. ----------------------------
  218. Additional hardening of ``Host`` header handling. `Full description
  219. <https://www.djangoproject.com/weblog/2012/dec/10/security/>`__
  220. Versions affected
  221. ~~~~~~~~~~~~~~~~~
  222. * Django 1.3 :commit:`(patch) <2da4ace0bc1bc1d79bf43b368cb857f6f0cd6b1b>`
  223. * Django 1.4 :commit:`(patch) <319627c184e71ae267d6b7f000e293168c7b6e09>`
  224. December 10, 2012 - No CVE 2
  225. ----------------------------
  226. Additional hardening of redirect validation. `Full description
  227. <https://www.djangoproject.com/weblog/2012/dec/10/security/>`__
  228. Versions affected
  229. ~~~~~~~~~~~~~~~~~
  230. * Django 1.3: :commit:`(patch) <1515eb46daa0897ba5ad5f0a2db8969255f1b343>`
  231. * Django 1.4: :commit:`(patch) <b2ae0a63aeec741f1e51bac9a95a27fd635f9652>`
  232. February 19, 2013 - No CVE
  233. --------------------------
  234. Additional hardening of ``Host`` header handling. `Full description
  235. <https://www.djangoproject.com/weblog/2013/feb/19/security/>`__
  236. Versions affected
  237. ~~~~~~~~~~~~~~~~~
  238. * Django 1.3 :commit:`(patch) <27cd872e6e36a81d0bb6f5b8765a1705fecfc253>`
  239. * Django 1.4 :commit:`(patch) <9936fdb11d0bbf0bd242f259bfb97bbf849d16f8>`
  240. February 19, 2013 - :cve:`2013-1664` / :cve:`2013-1665`
  241. -------------------------------------------------------
  242. Entity-based attacks against Python XML libraries. `Full description
  243. <https://www.djangoproject.com/weblog/2013/feb/19/security/>`__
  244. Versions affected
  245. ~~~~~~~~~~~~~~~~~
  246. * Django 1.3 :commit:`(patch) <d19a27066b2247102e65412aa66917aff0091112>`
  247. * Django 1.4 :commit:`(patch) <1c60d07ba23e0350351c278ad28d0bd5aa410b40>`
  248. February 19, 2013 - :cve:`2013-0305`
  249. ------------------------------------
  250. Information leakage via admin history log. `Full description
  251. <https://www.djangoproject.com/weblog/2013/feb/19/security/>`__
  252. Versions affected
  253. ~~~~~~~~~~~~~~~~~
  254. * Django 1.3 :commit:`(patch) <d3a45e10c8ac8268899999129daa27652ec0da35>`
  255. * Django 1.4 :commit:`(patch) <0e7861aec73702f7933ce2a93056f7983939f0d6>`
  256. February 19, 2013 - :cve:`2013-0306`
  257. ------------------------------------
  258. Denial-of-service via formset ``max_num`` bypass. `Full description
  259. <https://www.djangoproject.com/weblog/2013/feb/19/security/>`__
  260. Versions affected
  261. ~~~~~~~~~~~~~~~~~
  262. * Django 1.3 :commit:`(patch) <d7094bbce8cb838f3b40f504f198c098ff1cf727>`
  263. * Django 1.4 :commit:`(patch) <0cc350a896f70ace18280410eb616a9197d862b0>`
  264. August 13, 2013 - :cve:`2013-4249`
  265. ----------------------------------
  266. XSS via admin trusting ``URLField`` values. `Full description
  267. <https://www.djangoproject.com/weblog/2013/aug/13/security-releases-issued/>`__
  268. Versions affected
  269. ~~~~~~~~~~~~~~~~~
  270. * Django 1.5 :commit:`(patch) <90363e388c61874add3f3557ee654a996ec75d78>`
  271. August 13, 2013 - :cve:`2013-6044`
  272. ----------------------------------
  273. Possible XSS via unvalidated URL redirect schemes. `Full description
  274. <https://www.djangoproject.com/weblog/2013/aug/13/security-releases-issued/>`__
  275. Versions affected
  276. ~~~~~~~~~~~~~~~~~
  277. * Django 1.4 :commit:`(patch) <ec67af0bd609c412b76eaa4cc89968a2a8e5ad6a>`
  278. * Django 1.5 :commit:`(patch) <1a274ccd6bc1afbdac80344c9b6e5810c1162b5f>`
  279. September 10, 2013 - :cve:`2013-4315`
  280. -------------------------------------
  281. Directory-traversal via ``ssi`` template tag. `Full description
  282. <https://www.djangoproject.com/weblog/2013/sep/10/security-releases-issued/>`__
  283. Versions affected
  284. ~~~~~~~~~~~~~~~~~
  285. * Django 1.4 :commit:`(patch) <87d2750b39f6f2d54b7047225521a44dcd37e896>`
  286. * Django 1.5 :commit:`(patch) <988b61c550d798f9a66d17ee0511fb7a9a7f33ca>`
  287. September 14, 2013 - :cve:`2013-1443`
  288. -------------------------------------
  289. Denial-of-service via large passwords. `Full description
  290. <https://www.djangoproject.com/weblog/2013/sep/15/security/>`__
  291. Versions affected
  292. ~~~~~~~~~~~~~~~~~
  293. * Django 1.4 :commit:`(patch <3f3d887a6844ec2db743fee64c9e53e04d39a368>` and :commit:`Python compatibility fix) <6903d1690a92aa040adfb0c8eb37cf62e4206714>`
  294. * Django 1.5 :commit:`(patch) <22b74fa09d7ccbc8c52270d648a0da7f3f0fa2bc>`
  295. April 21, 2014 - :cve:`2014-0472`
  296. ---------------------------------
  297. Unexpected code execution using ``reverse()``. `Full description
  298. <https://www.djangoproject.com/weblog/2014/apr/21/security/>`__
  299. Versions affected
  300. ~~~~~~~~~~~~~~~~~
  301. * Django 1.4 :commit:`(patch) <c1a8c420fe4b27fb2caf5e46d23b5712fc0ac535>`
  302. * Django 1.5 :commit:`(patch) <2a5bcb69f42b84464b24b5c835dca6467b6aa7f1>`
  303. * Django 1.6 :commit:`(patch) <4352a50871e239ebcdf64eee6f0b88e714015c1b>`
  304. * Django 1.7 :commit:`(patch) <546740544d7f69254a67b06a3fc7fa0c43512958>`
  305. April 21, 2014 - :cve:`2014-0473`
  306. ---------------------------------
  307. Caching of anonymous pages could reveal CSRF token. `Full description
  308. <https://www.djangoproject.com/weblog/2014/apr/21/security/>`__
  309. Versions affected
  310. ~~~~~~~~~~~~~~~~~
  311. * Django 1.4 :commit:`(patch) <1170f285ddd6a94a65f911a27788ba49ca08c0b0>`
  312. * Django 1.5 :commit:`(patch) <6872f42757d7ef6a97e0b6ec5db4d2615d8a2bd8>`
  313. * Django 1.6 :commit:`(patch) <d63e20942f3024f24cb8cd85a49461ba8a9b6736>`
  314. * Django 1.7 :commit:`(patch) <380545bf85cbf17fc698d136815b7691f8d023ca>`
  315. April 21, 2014 - :cve:`2014-0474`
  316. ---------------------------------
  317. MySQL typecasting causes unexpected query results. `Full description
  318. <https://www.djangoproject.com/weblog/2014/apr/21/security/>`__
  319. Versions affected
  320. ~~~~~~~~~~~~~~~~~
  321. * Django 1.4 :commit:`(patch) <aa80f498de6d687e613860933ac58433ab71ea4b>`
  322. * Django 1.5 :commit:`(patch) <985434fb1d6bf2335bf96c6ebf91c3674f1f399f>`
  323. * Django 1.6 :commit:`(patch) <5f0829a27e85d89ad8c433f5c6a7a7d17c9e9292>`
  324. * Django 1.7 :commit:`(patch) <34526c2f56b863c2103655a0893ac801667e86ea>`
  325. May 18, 2014 - :cve:`2014-1418`
  326. -------------------------------
  327. Caches may be allowed to store and serve private data. `Full description
  328. <https://www.djangoproject.com/weblog/2014/may/14/security-releases-issued/>`__
  329. Versions affected
  330. ~~~~~~~~~~~~~~~~~
  331. * Django 1.4 :commit:`(patch) <28e23306aa53bbbb8fb87db85f99d970b051026c>`
  332. * Django 1.5 :commit:`(patch) <4001ec8698f577b973c5a540801d8a0bbea1205b>`
  333. * Django 1.6 :commit:`(patch) <1abcf3a808b35abae5d425ed4d44cb6e886dc769>`
  334. * Django 1.7 :commit:`(patch) <7fef18ba9e5a8b47bc24b5bb259c8bf3d3879f2a>`
  335. May 18, 2014 - :cve:`2014-3730`
  336. -------------------------------
  337. Malformed URLs from user input incorrectly validated. `Full description
  338. <https://www.djangoproject.com/weblog/2014/may/14/security-releases-issued/>`__
  339. Versions affected
  340. ~~~~~~~~~~~~~~~~~
  341. * Django 1.4 :commit:`(patch) <7feb54bbae3f637ab3c4dd4831d4385964f574df>`
  342. * Django 1.5 :commit:`(patch) <ad32c218850ad40972dcef57beb460f8c979dd6d>`
  343. * Django 1.6 :commit:`(patch) <601107524523bca02376a0ddc1a06c6fdb8f22f3>`
  344. * Django 1.7 :commit:`(patch) <e7b0cace455c2da24492660636bfd48c45a19cdf>`
  345. August 20, 2014 - :cve:`2014-0480`
  346. ----------------------------------
  347. ``reverse()`` can generate URLs pointing to other hosts. `Full description
  348. <https://www.djangoproject.com/weblog/2014/aug/20/security/>`__
  349. Versions affected
  350. ~~~~~~~~~~~~~~~~~
  351. * Django 1.4 :commit:`(patch) <c2fe73133b62a1d9e8f7a6b43966570b14618d7e>`
  352. * Django 1.5 :commit:`(patch) <45ac9d4fb087d21902469fc22643f5201d41a0cd>`
  353. * Django 1.6 :commit:`(patch) <da051da8df5e69944745072611351d4cfc6435d5>`
  354. * Django 1.7 :commit:`(patch) <bf650a2ee78c6d1f4544a875dcc777cf27fe93e9>`
  355. August 20, 2014 - :cve:`2014-0481`
  356. ----------------------------------
  357. File upload denial of service. `Full description
  358. <https://www.djangoproject.com/weblog/2014/aug/20/security/>`__
  359. Versions affected
  360. ~~~~~~~~~~~~~~~~~
  361. * Django 1.4 :commit:`(patch) <30042d475bf084c6723c6217a21598d9247a9c41>`
  362. * Django 1.5 :commit:`(patch) <26cd48e166ac4d84317c8ee6d63ac52a87e8da99>`
  363. * Django 1.6 :commit:`(patch) <dd0c3f4ee1a30c1a1e6055061c6ba6e58c6b54d1>`
  364. * Django 1.7 :commit:`(patch) <3123f8452cf49071be9110e277eea60ba0032216>`
  365. August 20, 2014 - :cve:`2014-0482`
  366. ----------------------------------
  367. ``RemoteUserMiddleware`` session hijacking. `Full description
  368. <https://www.djangoproject.com/weblog/2014/aug/20/security/>`__
  369. Versions affected
  370. ~~~~~~~~~~~~~~~~~
  371. * Django 1.4 :commit:`(patch) <c9e3b9949cd55f090591fbdc4a114fcb8368b6d9>`
  372. * Django 1.5 :commit:`(patch) <dd68f319b365f6cb38c5a6c106faf4f6142d7d88>`
  373. * Django 1.6 :commit:`(patch) <0268b855f9eab3377f2821164ef3e66037789e09>`
  374. * Django 1.7 :commit:`(patch) <1a45d059c70385fcd6f4a3955f3b4e4cc96d0150>`
  375. August 20, 2014 - :cve:`2014-0483`
  376. ----------------------------------
  377. Data leakage via querystring manipulation in admin.
  378. `Full description <https://www.djangoproject.com/weblog/2014/aug/20/security/>`__
  379. Versions affected
  380. ~~~~~~~~~~~~~~~~~
  381. * Django 1.4 :commit:`(patch) <027bd348642007617518379f8b02546abacaa6e0>`
  382. * Django 1.5 :commit:`(patch) <2a446c896e7c814661fb9c4f212b071b2a7fa446>`
  383. * Django 1.6 :commit:`(patch) <f7c494f2506250b8cb5923714360a3642ed63e0f>`
  384. * Django 1.7 :commit:`(patch) <2b31342cdf14fc20e07c43d258f1e7334ad664a6>`
  385. January 13, 2015 - :cve:`2015-0219`
  386. -----------------------------------
  387. WSGI header spoofing via underscore/dash conflation. `Full description
  388. <https://www.djangoproject.com/weblog/2015/jan/13/security/>`__
  389. Versions affected
  390. ~~~~~~~~~~~~~~~~~
  391. * Django 1.4 :commit:`(patch) <4f6fffc1dc429f1ad428ecf8e6620739e8837450>`
  392. * Django 1.6 :commit:`(patch) <d7597b31d5c03106eeba4be14a33b32a5e25f4ee>`
  393. * Django 1.7 :commit:`(patch) <41b4bc73ee0da7b2e09f4af47fc1fd21144c710f>`
  394. January 13, 2015 - :cve:`2015-0220`
  395. -----------------------------------
  396. Mitigated possible XSS attack via user-supplied redirect URLs. `Full
  397. description <https://www.djangoproject.com/weblog/2015/jan/13/security/>`__
  398. Versions affected
  399. ~~~~~~~~~~~~~~~~~
  400. * Django 1.4 :commit:`(patch) <4c241f1b710da6419d9dca160e80b23b82db7758>`
  401. * Django 1.6 :commit:`(patch) <72e0b033662faa11bb7f516f18a132728aa0ae28>`
  402. * Django 1.7 :commit:`(patch) <de67dedc771ad2edec15c1d00c083a1a084e1e89>`
  403. January 13, 2015 - :cve:`2015-0221`
  404. -----------------------------------
  405. Denial-of-service attack against ``django.views.static.serve()``. `Full
  406. description <https://www.djangoproject.com/weblog/2015/jan/13/security/>`__
  407. Versions affected
  408. ~~~~~~~~~~~~~~~~~
  409. * Django 1.4 :commit:`(patch) <d020da6646c5142bc092247d218a3d1ce3e993f7>`
  410. * Django 1.6 :commit:`(patch) <553779c4055e8742cc832ed525b9ee34b174934f>`
  411. * Django 1.7 :commit:`(patch) <818e59a3f0fbadf6c447754d202d88df025f8f2a>`
  412. January 13, 2015 - :cve:`2015-0222`
  413. -----------------------------------
  414. Database denial-of-service with ``ModelMultipleChoiceField``. `Full description
  415. <https://www.djangoproject.com/weblog/2015/jan/13/security/>`__
  416. Versions affected
  417. ~~~~~~~~~~~~~~~~~
  418. * Django 1.6 :commit:`(patch) <d7a06ee7e571b6dad07c0f5b519b1db02e2a476c>`
  419. * Django 1.7 :commit:`(patch) <bcfb47780ce7caecb409a9e9c1c314266e41d392>`
  420. March 9, 2015 - :cve:`2015-2241`
  421. --------------------------------
  422. XSS attack via properties in ``ModelAdmin.readonly_fields``. `Full description
  423. <https://www.djangoproject.com/weblog/2015/mar/09/security-releases/>`__
  424. Versions affected
  425. ~~~~~~~~~~~~~~~~~
  426. * Django 1.7 :commit:`(patch) <d16e4e1d6f95e6f46bff53cc4fd0ab398b8e5059>`
  427. * Django 1.8 :commit:`(patch) <2654e1b93923bac55f12b4e66c5e39b16695ace5>`
  428. March 18, 2015 - :cve:`2015-2316`
  429. ---------------------------------
  430. Denial-of-service possibility with ``strip_tags()``. `Full description
  431. <https://www.djangoproject.com/weblog/2015/mar/18/security-releases/>`__
  432. Versions affected
  433. ~~~~~~~~~~~~~~~~~
  434. * Django 1.6 :commit:`(patch) <b6b3cb9899214a23ebb0f4ebf0e0b300b0ee524f>`
  435. * Django 1.7 :commit:`(patch) <e63363f8e075fa8d66326ad6a1cc3391cc95cd97>`
  436. * Django 1.8 :commit:`(patch) <5447709a571cd5d95971f1d5d21d4a7edcf85bbd>`
  437. March 18, 2015 - :cve:`2015-2317`
  438. ---------------------------------
  439. Mitigated possible XSS attack via user-supplied redirect URLs. `Full
  440. description <https://www.djangoproject.com/weblog/2015/mar/18/security-releases/>`__
  441. Versions affected
  442. ~~~~~~~~~~~~~~~~~
  443. * Django 1.4 :commit:`(patch) <2342693b31f740a422abf7267c53b4e7bc487c1b>`
  444. * Django 1.6 :commit:`(patch) <5510f070711540aaa8d3707776cd77494e688ef9>`
  445. * Django 1.7 :commit:`(patch) <2a4113dbd532ce952308992633d802dc169a75f1>`
  446. * Django 1.8 :commit:`(patch) <770427c2896a078925abfca2317486b284d22f04>`
  447. May 20, 2015 - :cve:`2015-3982`
  448. -------------------------------
  449. Fixed session flushing in the cached_db backend. `Full description
  450. <https://www.djangoproject.com/weblog/2015/may/20/security-release/>`__
  451. Versions affected
  452. ~~~~~~~~~~~~~~~~~
  453. * Django 1.8 :commit:`(patch) <31cb25adecba930bdeee4556709f5a1c42d88fd6>`
  454. July 8, 2015 - :cve:`2015-5143`
  455. -------------------------------
  456. Denial-of-service possibility by filling session store. `Full
  457. description <https://www.djangoproject.com/weblog/2015/jul/08/security-releases/>`__
  458. Versions affected
  459. ~~~~~~~~~~~~~~~~~
  460. * Django 1.8 :commit:`(patch) <66d12d1ababa8f062857ee5eb43276493720bf16>`
  461. * Django 1.7 :commit:`(patch) <1828f4341ec53a8684112d24031b767eba557663>`
  462. * Django 1.4 :commit:`(patch) <2e47f3e401c29bc2ba5ab794d483cb0820855fb9>`
  463. July 8, 2015 - :cve:`2015-5144`
  464. -------------------------------
  465. Header injection possibility since validators accept newlines in input. `Full
  466. description <https://www.djangoproject.com/weblog/2015/jul/08/security-releases/>`__
  467. Versions affected
  468. ~~~~~~~~~~~~~~~~~
  469. * Django 1.8 :commit:`(patch) <574dd5e0b0fbb877ae5827b1603d298edc9bb2a0>`
  470. * Django 1.7 :commit:`(patch) <ae49b4d994656bc037513dcd064cb9ce5bb85649>`
  471. * Django 1.4 :commit:`(patch) <1ba1cdce7d58e6740fe51955d945b56ae51d072a>`
  472. July 8, 2015 - :cve:`2015-5145`
  473. -------------------------------
  474. Denial-of-service possibility in URL validation. `Full description
  475. <https://www.djangoproject.com/weblog/2015/jul/08/security-releases/>`__
  476. Versions affected
  477. ~~~~~~~~~~~~~~~~~
  478. * Django 1.8 :commit:`(patch) <8f9a4d3a2bc42f14bb437defd30c7315adbff22c>`
  479. August 18, 2015 - :cve:`2015-5963` / :cve:`2015-5964`
  480. -----------------------------------------------------
  481. Denial-of-service possibility in ``logout()`` view by filling session store.
  482. `Full description <https://www.djangoproject.com/weblog/2015/aug/18/security-releases/>`__
  483. Versions affected
  484. ~~~~~~~~~~~~~~~~~
  485. * Django 1.8 :commit:`(patch) <2eb86b01d7b59be06076f6179a454d0fd0afaff6>`
  486. * Django 1.7 :commit:`(patch) <2f5485346ee6f84b4e52068c04e043092daf55f7>`
  487. * Django 1.4 :commit:`(patch) <575f59f9bc7c59a5e41a081d1f5f55fc859c5012>`
  488. November 24, 2015 - :cve:`2015-8213`
  489. ------------------------------------
  490. Settings leak possibility in ``date`` template filter. `Full description
  491. <https://www.djangoproject.com/weblog/2015/nov/24/security-releases-issued/>`__
  492. Versions affected
  493. ~~~~~~~~~~~~~~~~~
  494. * Django 1.8 :commit:`(patch) <9f83fc2f66f5a0bac7c291aec55df66050bb6991>`
  495. * Django 1.7 :commit:`(patch) <8a01c6b53169ee079cb21ac5919fdafcc8c5e172>`
  496. February 1, 2016 - :cve:`2016-2048`
  497. -----------------------------------
  498. User with "change" but not "add" permission can create objects for
  499. ``ModelAdmin``’s with ``save_as=True``. `Full description
  500. <https://www.djangoproject.com/weblog/2016/feb/01/releases-192-and-189/>`__
  501. Versions affected
  502. ~~~~~~~~~~~~~~~~~
  503. * Django 1.9 :commit:`(patch) <adbca5e4db42542575734b8e5d26961c8ada7265>`
  504. March 1, 2016 - :cve:`2016-2512`
  505. --------------------------------
  506. Malicious redirect and possible XSS attack via user-supplied redirect URLs
  507. containing basic auth. `Full description
  508. <https://www.djangoproject.com/weblog/2016/mar/01/security-releases/>`__
  509. Versions affected
  510. ~~~~~~~~~~~~~~~~~
  511. * Django 1.9 :commit:`(patch) <fc6d147a63f89795dbcdecb0559256470fff4380>`
  512. * Django 1.8 :commit:`(patch) <382ab137312961ad62feb8109d70a5a581fe8350>`
  513. March 1, 2016 - :cve:`2016-2513`
  514. --------------------------------
  515. User enumeration through timing difference on password hasher work factor
  516. upgrade. `Full description
  517. <https://www.djangoproject.com/weblog/2016/mar/01/security-releases/>`__
  518. Versions affected
  519. ~~~~~~~~~~~~~~~~~
  520. * Django 1.9 :commit:`(patch) <af7d09b0c5c6ab68e629fd9baf736f9dd203b18e>`
  521. * Django 1.8 :commit:`(patch) <f4e6e02f7713a6924d16540be279909ff4091eb6>`
  522. July 18, 2016 - :cve:`2016-6186`
  523. --------------------------------
  524. XSS in admin's add/change related popup. `Full description
  525. <https://www.djangoproject.com/weblog/2016/jul/18/security-releases/>`__
  526. Versions affected
  527. ~~~~~~~~~~~~~~~~~
  528. * Django 1.9 :commit:`(patch) <d03bf6fe4e9bf5b07de62c1a271c4b41a7d3d158>`
  529. * Django 1.8 :commit:`(patch) <f68e5a99164867ab0e071a936470958ed867479d>`
  530. September 26, 2016 - :cve:`2016-7401`
  531. -------------------------------------
  532. CSRF protection bypass on a site with Google Analytics. `Full description
  533. <https://www.djangoproject.com/weblog/2016/sep/26/security-releases/>`__
  534. Versions affected
  535. ~~~~~~~~~~~~~~~~~
  536. * Django 1.9 :commit:`(patch) <d1bc980db1c0fffd6d60677e62f70beadb9fe64a>`
  537. * Django 1.8 :commit:`(patch) <6118ab7d0676f0d622278e5be215f14fb5410b6a>`
  538. November 1, 2016 - :cve:`2016-9013`
  539. -----------------------------------
  540. User with hardcoded password created when running tests on Oracle. `Full
  541. description <https://www.djangoproject.com/weblog/2016/nov/01/security-releases/>`__
  542. Versions affected
  543. ~~~~~~~~~~~~~~~~~
  544. * Django 1.10 :commit:`(patch) <34e10720d81b8d407aa14d763b6a7fe8f13b4f2e>`
  545. * Django 1.9 :commit:`(patch) <4844d86c7728c1a5a3bbce4ad336a8d32304072b>`
  546. * Django 1.8 :commit:`(patch) <70f99952965a430daf69eeb9947079aae535d2d0>`
  547. November 1, 2016 - :cve:`2016-9014`
  548. -----------------------------------
  549. DNS rebinding vulnerability when ``DEBUG=True``. `Full description
  550. <https://www.djangoproject.com/weblog/2016/nov/01/security-releases/>`__
  551. Versions affected
  552. ~~~~~~~~~~~~~~~~~
  553. * Django 1.10 :commit:`(patch) <884e113838e5a72b4b0ec9e5e87aa480f6aa4472>`
  554. * Django 1.9 :commit:`(patch) <45acd6d836895a4c36575f48b3fb36a3dae98d19>`
  555. * Django 1.8 :commit:`(patch) <c401ae9a7dfb1a94a8a61927ed541d6f93089587>`
  556. April 4, 2017 - :cve:`2017-7233`
  557. --------------------------------
  558. Open redirect and possible XSS attack via user-supplied numeric redirect URLs.
  559. `Full description <https://www.djangoproject.com/weblog/2017/apr/04/security-releases/>`__
  560. Versions affected
  561. ~~~~~~~~~~~~~~~~~
  562. * Django 1.10 :commit:`(patch) <f824655bc2c50b19d2f202d7640785caabc82787>`
  563. * Django 1.9 :commit:`(patch) <254326cb3682389f55f886804d2c43f7b9f23e4f>`
  564. * Django 1.8 :commit:`(patch) <8339277518c7d8ec280070a780915304654e3b66>`
  565. April 4, 2017 - :cve:`2017-7234`
  566. --------------------------------
  567. Open redirect vulnerability in ``django.views.static.serve()``. `Full
  568. description <https://www.djangoproject.com/weblog/2017/apr/04/security-releases/>`__
  569. Versions affected
  570. ~~~~~~~~~~~~~~~~~
  571. * Django 1.10 :commit:`(patch) <2a9f6ef71b8e23fd267ee2be1be26dde8ab67037>`
  572. * Django 1.9 :commit:`(patch) <5f1ffb07afc1e59729ce2b283124116d6c0659e4>`
  573. * Django 1.8 :commit:`(patch) <4a6b945dffe8d10e7cec107d93e6efaebfbded29>`
  574. September 5, 2017 - :cve:`2017-12794`
  575. -------------------------------------
  576. Possible XSS in traceback section of technical 500 debug page. `Full
  577. description <https://www.djangoproject.com/weblog/2017/sep/05/security-releases/>`__
  578. Versions affected
  579. ~~~~~~~~~~~~~~~~~
  580. * Django 1.11 :commit:`(patch) <e35a0c56086924f331e9422daa266e907a4784cc>`
  581. * Django 1.10 :commit:`(patch) <58e08e80e362db79eb0fd775dc81faad90dca47a>`
  582. February 1, 2018 - :cve:`2018-6188`
  583. -----------------------------------
  584. Information leakage in ``AuthenticationForm``. `Full description
  585. <https://www.djangoproject.com/weblog/2018/feb/01/security-releases/>`__
  586. Versions affected
  587. ~~~~~~~~~~~~~~~~~
  588. * Django 2.0 :commit:`(patch) <c37bb28677295f6edda61d8ac461014ef0d3aeb2>`
  589. * Django 1.11 :commit:`(patch) <57b95fedad5e0b83fc9c81466b7d1751c6427aae>`
  590. March 6, 2018 - :cve:`2018-7536`
  591. --------------------------------
  592. Denial-of-service possibility in ``urlize`` and ``urlizetrunc`` template
  593. filters. `Full description
  594. <https://www.djangoproject.com/weblog/2018/mar/06/security-releases/>`__
  595. Versions affected
  596. ~~~~~~~~~~~~~~~~~
  597. * Django 2.0 :commit:`(patch) <e157315da3ae7005fa0683ffc9751dbeca7306c8>`
  598. * Django 1.11 :commit:`(patch) <abf89d729f210c692a50e0ad3f75fb6bec6fae16>`
  599. * Django 1.8 :commit:`(patch) <1ca63a66ef3163149ad822701273e8a1844192c2>`
  600. March 6, 2018 - :cve:`2018-7537`
  601. --------------------------------
  602. Denial-of-service possibility in ``truncatechars_html`` and
  603. ``truncatewords_html`` template filters. `Full description
  604. <https://www.djangoproject.com/weblog/2018/mar/06/security-releases/>`__
  605. Versions affected
  606. ~~~~~~~~~~~~~~~~~
  607. * Django 2.0 :commit:`(patch) <94c5da1d17a6b0d378866c66b605102c19f7988c>`
  608. * Django 1.11 :commit:`(patch) <a91436360b79a6ff995c3e5018bcc666dfaf1539>`
  609. * Django 1.8 :commit:`(patch) <d17974a287a6ea2e361daff88fcc004cbd6835fa>`
  610. August 1, 2018 - :cve:`2018-14574`
  611. ----------------------------------
  612. Open redirect possibility in ``CommonMiddleware``. `Full description
  613. <https://www.djangoproject.com/weblog/2018/aug/01/security-releases/>`__
  614. Versions affected
  615. ~~~~~~~~~~~~~~~~~
  616. * Django 2.1 :commit:`(patch) <c4e5ff7fdb5fce447675e90291fd33fddd052b3c>`
  617. * Django 2.0 :commit:`(patch) <6fffc3c6d420e44f4029d5643f38d00a39b08525>`
  618. * Django 1.11 :commit:`(patch) <d6eaee092709aad477a9894598496c6deec532ff>`
  619. October 1, 2018 - :cve:`2018-16984`
  620. -----------------------------------
  621. Password hash disclosure to "view only" admin users. `Full description
  622. <https://www.djangoproject.com/weblog/2018/oct/01/security-release/>`__
  623. Versions affected
  624. ~~~~~~~~~~~~~~~~~
  625. * Django 2.1 :commit:`(patch) <c4bd5b597e0aa2432e4c867b86650f18af117851>`
  626. January 4, 2019 - :cve:`2019-3498`
  627. ----------------------------------
  628. Content spoofing possibility in the default 404 page. `Full description
  629. <https://www.djangoproject.com/weblog/2019/jan/04/security-releases/>`__
  630. Versions affected
  631. ~~~~~~~~~~~~~~~~~
  632. * Django 2.1 :commit:`(patch) <64d2396e83aedba3fcc84ca40f23fbd22f0b9b5b>`
  633. * Django 2.0 :commit:`(patch) <9f4ed7c94c62e21644ef5115e393ac426b886f2e>`
  634. * Django 1.11 :commit:`(patch) <1cd00fcf52d089ef0fe03beabd05d59df8ea052a>`