README.txt 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. Welcome to the Zend Framework 1.12 Release!
  2. RELEASE INFORMATION
  3. ===================
  4. Zend Framework 1.12.4dev Release ([INSERT REV NUM HERE]).
  5. Released on <Month> <Day>, <Year>.
  6. IMPORTANT FIXES FOR 1.12.3
  7. --------------------------
  8. This release incorporates is primarily aimed to update
  9. Zend_Service_Twitter to the Twitter v1.1 API:
  10. - http://framework.zend.com/issues/browse/ZF-12530
  11. Because the Twitter v1.1 API is not backwards compatible with v1.0, the
  12. API for Zend_Service_Twitter has been changed; if you have been using it
  13. previously, you will need to update your code accordingly. Both the
  14. end-user and API documentation have been updated to reflect the changes.
  15. IMPORTANT FIXES FOR 1.12.2
  16. --------------------------
  17. This release incorporates over 40 bugfixes. In particular, the following
  18. issue has been resolved in Zend_Service_Twitter:
  19. - http://framework.zend.com/issues/browse/ZF-9253
  20. This fix ensures that Zend_Service_Twitter uses the new versioned API
  21. endpoint required by Twitter.
  22. SECURITY FIXES FOR 1.12.1
  23. -------------------------
  24. This release incorporates fixes for:
  25. - http://framework.zend.com/security/advisory/ZF2012-05
  26. Zend_Feed_Rss and Zend_Feed_Atom were found to contain XML eXternal
  27. Entity (XXE) Injection vectors due to insecure usage of the DOM
  28. extension. External entities could be specified by adding a specific
  29. DOCTYPE element to XML-RPC requests; exploiting this vulnerability could
  30. coerce opening arbitrary files and/or TCP connections.
  31. A similar issue was fixed for 1.12.0, in the Zend_Feed::import() method;
  32. however, the reporter of the issue discovered that the individual
  33. classes contained similar functionality in their constructors which
  34. remained vulnerable.
  35. The patch applied removes the XXE vector by calling
  36. libxml_disable_entity_loader() before attempting to parse the feed via
  37. DOMDocument::loadXML().
  38. The above patches are also available in the 1.11 series of releases.
  39. Thanks goes to Yury Dyachenko at Positive Research Center for for
  40. reporting the XXE vulnerability and reviewing the patches created to fix
  41. the issue.
  42. SECURITY FIXES FOR 1.12.0
  43. -------------------------
  44. This release incorporates fixes for each of:
  45. - http://framework.zend.com/security/advisory/ZF2012-01
  46. - http://framework.zend.com/security/advisory/ZF2012-02
  47. Several components were found to be vulnerable to XML eXternal Entity
  48. (XXE) Injection attacks due to insecure usage of the SimpleXMLElement
  49. class (SimpleXML PHP extension). External entities could be specified
  50. by adding a specific DOCTYPE element to XML-RPC requests; exploiting
  51. this vulnerability could coerce opening arbitrary files and/or TCP
  52. connections.
  53. Additionally, these same components were found to be vulnerable to XML
  54. Entity Expansion (XEE) vectors. XEE attacks define custom entities
  55. within the DOCTYPE that refer to themselves, leading to recursion; the
  56. end result is excessive consumption of CPU and RAM, making Denial of
  57. Service (DoS) attacks easier to implement.
  58. Vulnerable components included:
  59. - Zend_Dom
  60. - Zend_Feed
  61. - Zend_Soap
  62. - Zend_XmlRpc
  63. The patches applied do the following:
  64. - To remove XXE vectors, libxml_disable_entity_loader() is called
  65. before any SimpleXML calls are executed.
  66. - To remove XEE vectors, we loop through the DOMDocument child nodes,
  67. ensuring none are of type XML_DOCUMENT_TYPE_NODE, and raising an
  68. exception if any are. If SimpleXML is used, a DOMDocument is created
  69. first, processed as above, and then passed to simplexml_import_dom.
  70. The above patches are also available in the 1.11 series of releases.
  71. Thanks goes to Johannes Greil and Kestutis Gudinavicius of SEC-Consult
  72. for reporting the original XXE vulnerability against Zend_XmlRpc and
  73. working with us to provide a working solution. Thanks goes to Pádraic
  74. Brady for helping us identify other XXE vectors, as well as identifying
  75. and patching the XEE vectors.
  76. NEW FEATURES
  77. ============
  78. Zend_Loader changes
  79. -------------------
  80. A number of autoloaders and autoloader facilities were back ported from
  81. ZF2 to provide performant alternatives to those already available in the
  82. 1.X releases. These include: Zend_Loader_StandardAutoloader, which
  83. improves on Zend_Loader_Autoloader by allowing the ability to specify a
  84. specific path to associate with a vendor prefix or namespace;
  85. Zend_Loader_ClassMapAutoloader, which provides the ability to use lookup
  86. tables for autoloading (which are typically the fastest possible way to
  87. autoload); and Zend_Loader_AutoloaderFactory, which can both create and
  88. update autoloaders for you, as well as register them with
  89. spl_autoload_register().
  90. The Zend_Loader changes were back ported from ZF2 by Matthew Weier
  91. O’Phinney
  92. Zend_EventManager
  93. -----------------
  94. Zend_EventManager is a component that allows you to attach and detach
  95. listeners to named events, both on a per-instance basis as well as via
  96. shared collections; trigger events; and interrupt execution of
  97. listeners.
  98. Zend_EventManager was back ported from ZF2 by Matthew Weier O’Phinney
  99. Zend_Http_UserAgent_Features_Adapter_Browscap
  100. ---------------------------------------------
  101. This class provides a features adapter that calls get_browser() in order
  102. to discover mobile device capabilities to inject into UserAgent device
  103. instances.
  104. Browscap (http://browsers.garykeith.com/) is an open project dedicated
  105. to collecting an disseminating a “database” of browser capabilities. PHP
  106. has built-in support for using these files via the get_browser()
  107. function. This function requires that your php.ini provides a browscap
  108. entry pointing to the PHP-specific php_browscap.ini file which is
  109. available at http://browsers.garykeith.com/stream.asp?PHP_BrowsCapINI.
  110. Zend_Http_UserAgent_Features_Adapter_Browscap was created by Matthew
  111. Weier O’Phinney
  112. Zend_Mobile_Push
  113. ----------------
  114. Zend_Mobile_Push is a component for implementing push notifications for
  115. the 3 major push notification platforms (Apple (Apns), Google (C2dm) and
  116. Microsoft (Mpns).
  117. Zend_Mobile_Push was contributed by Mike Willbanks.
  118. Zend_Gdata_Analytics
  119. --------------------
  120. Zend_Gdata_Analytics is an extension to Zend_Gdata to allow interaction
  121. with Google’s Analytics Data Export API. This extension does not
  122. encompass any major changes in the overall operation of Zend_Gdata
  123. components.
  124. Zend_Gdata_Analytics was contributed by Daniel Hartmann.
  125. Removed features
  126. ================
  127. Zend_Http_UserAgent_Features_Adapter_WurflApi
  128. ---------------------------------------------
  129. Due to the changes in licensing of WURFL, we have removed the WurflApi
  130. adapter. We will be providing the WurflApi adapter to ScientiaMobile so
  131. that users of WURFL will still have that option.
  132. Bug Fixes
  133. =========
  134. In addition, over 200 reported issues in the tracker have been fixed.
  135. We’d like to particularly thank Adam Lundrigan, Frank Brückner and
  136. Martin Hujer for their efforts in making this happen. Thanks also to the
  137. many people who ran the ZF1 unit tests and reported their results!
  138. For a complete list, visit:
  139. * http://framework.zend.com/issues/secure/IssueNavigator.jspa?requestId=12877
  140. * http://framework.zend.com/changelog/
  141. MIGRATION NOTES
  142. ===============
  143. A detailed list of migration notes may be found at:
  144. http://framework.zend.com/manual/en/migration.html
  145. SYSTEM REQUIREMENTS
  146. ===================
  147. Zend Framework requires PHP 5.2.11 or later. Please see our reference
  148. guide for more detailed system requirements:
  149. http://framework.zend.com/manual/en/requirements.html
  150. INSTALLATION
  151. ============
  152. Please see [INSTALL.txt](INSTALL.txt).
  153. REPOSITORY HISTORY
  154. ==================
  155. This repository was created based on the release-1.12 branch of a Subversion
  156. repository, http://framework.zend.com/svn/framework/standard/. It contains a
  157. subset of the project history, dating from between the 1.5.0 and 1.6.0 releases,
  158. and only contains the tags for the 1.12 series. If you would like an older
  159. version, you may access the subversion repository linked above, or download an
  160. older version from http://framework.zend.com/downloads/archives.
  161. QUESTIONS AND FEEDBACK
  162. ======================
  163. Online documentation can be found at http://framework.zend.com/manual.
  164. Questions that are not addressed in the manual should be directed to the
  165. appropriate mailing list:
  166. http://framework.zend.com/wiki/display/ZFDEV/Mailing+Lists
  167. If you find code in this release behaving in an unexpected manner or
  168. contrary to its documented behavior, please create an issue in the Zend
  169. Framework issue tracker at:
  170. http://framework.zend.com/issues
  171. If you would like to be notified of new releases, you can subscribe to
  172. the fw-announce mailing list by sending a blank message to:
  173. fw-announce-subscribe@lists.zend.com.
  174. LICENSE
  175. =======
  176. The files in this archive are released under the Zend Framework license.
  177. You can find a copy of this license in [LICENSE.txt](LICENSE.txt).
  178. ACKNOWLEDGEMENTS
  179. ================
  180. The Zend Framework team would like to thank all the contributors to the Zend
  181. Framework project, our corporate sponsor, and you, the Zend Framework user.
  182. Please visit us sometime soon at http://framework.zend.com.