<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <meta charset="utf-8">
        <title>CVE-2016-3092 & CVE-2013-2186 Apache Commons Fileupload vulnerabilities | Apache Wicket</title>
        <meta name="viewport" content="width=device-width, initial-scale=1" />

        <link rel="shortcut icon" href="/favicon.ico" type="image/vnd.microsoft.icon" />
        <link rel="stylesheet" href="/css/style.css" type="text/css" media="screen" />
        <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />

		<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>

    </head>

    <body class="">
        <div class="header default">
    <div class="l-menu-container">
<nav class="mainmenu">
    <ul>
		<!-- /start/quickstart.html || /news/2016/08/05/cve-2016-3092.html -->
    	<li class=""><a href="/start/quickstart.html">Quick Start</a></li>
		<!-- /start/download.html || /news/2016/08/05/cve-2016-3092.html -->
    	<li class=""><a href="/start/download.html">Download</a></li>
		<!-- /learn || /news/2016/08/05/cve-2016-3092.html -->
    	<li class=""><a href="/learn">Documentation</a></li>
		<!-- /help || /news/2016/08/05/cve-2016-3092.html -->
    	<li class=""><a href="/help">Support</a></li>
		<!-- /contribute || /news/2016/08/05/cve-2016-3092.html -->
    	<li class=""><a href="/contribute">Contribute</a></li>
		<!-- /community || /news/2016/08/05/cve-2016-3092.html -->
    	<li class=""><a href="/community">Community</a></li>
		<!-- /apache || /news/2016/08/05/cve-2016-3092.html -->
    	<li class=""><a href="/apache">Apache</a></li>
    </ul>
</nav>
        <div class="logo">
    <a href="/"><img src="/img/logo-apachewicket.svg" alt="Apache Wicket"></a>
</div>
    </div>
</div>
<main>
    <div class="l-container">
        <header class="l-full preamble">
            <h1>CVE-2016-3092 & CVE-2013-2186 Apache Commons Fileupload vulnerabilities</h1>
        </header>
        <section class="left">
            <div class="l-full">
    <p class="meta">05 Aug 2016</p>
    <p>Severity: Important</p>
<p>Vendor:
The Apache Software Foundation</p>
<p>Versions Affected:
Apache Wicket 1.5.x, 6.x and 7.x</p>
<p>Description:</p>
<p>CVE-2016-3092: A malicious client can send file upload requests that cause the HTTP server
using the Apache Commons Fileupload library to become unresponsive, preventing
the server from servicing other requests.</p>
<p>This flaw is not exploitable beyond causing the code to loop expending
CPU resources.</p>
<p>CVE-2013-2186:
The DiskFileItem class in Apache Commons FileUpload allows remote attackers to write to arbitrary files via a NULL byte in a file name in a serialized instance.</p>
<h2 id="the-application-developers-are-recommended-to-upgrade-to">The application developers are recommended to upgrade to:</h2>
<ul>
  <li><a href="/news/2016/08/05/wicket-1.5.16-released.html">Apache Wicket 1.5.16</a></li>
  <li><a href="/news/2016/07/21/wicket-6.24.0-released.html">Apache Wicket 6.24.0</a></li>
  <li><a href="/news/2016/07/21/wicket-7.4.0-released.html">Apache Wicket 7.4.0</a></li>
</ul>
<p>Since version 7.0.0 Apache Wicket does not embed Apache Commons FileUpload but uses it as a Maven dependency so an application can just update the dependency to version 1.3.2.</p>
<p>Apache Wicket Team</p>
</div>
        </section>
    </div>
</main>
        <footer class="l-container">
            <div class="l-full">
   	<img src="/img/asf_logo_url.svg" style="height:90px; float:left; margin-right:10px;">
    <div style="margin-top:12px;">Copyright © 2020 — The Apache Software Foundation. Apache Wicket, Wicket, Apache, the Apache feather logo, and the Apache Wicket project logo are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</div>
</div>
        </footer>
    </body>

</html>
