<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apk-tools, branch 2.6-stable</title>
<subtitle>Alpine Package Keeper, the 2.x tree
</subtitle>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/'/>
<entry>
<title>apk-tools-2.6.10</title>
<updated>2018-09-10T12:15:53+00:00</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2018-09-10T12:15:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=de531c867947723736d95346be6b2032b2fc379b'/>
<id>de531c867947723736d95346be6b2032b2fc379b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>rework unpacking of packages and harden package file format requirements</title>
<updated>2018-09-10T08:18:39+00:00</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2018-09-05T16:49:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=d2eb263642527d7b6c8c71042a994dcea368b632'/>
<id>d2eb263642527d7b6c8c71042a994dcea368b632</id>
<content type='text'>
A crafted .apk file could to trick apk writing unverified data to
an unexpected file during temporary file creation due to bugs in handling
long link target name and the way a regular file is extracted.

Several hardening steps are implemented to avoid this:
 - the temporary file is now always first unlinked (apk thus reserved
   all filenames .apk.* to be it's working files)
 - the temporary file is after that created with O_EXCL to avoid races
 - the temporary file is no longer directly the archive entry name
   and thus directly controlled by potentially untrusted data
 - long file names and link target names are now rejected
 - hard link targets are now more rigorously checked
 - various additional checks added for the extraction process to
   error out early in case of malformed (or old legacy) file

Reported-by: Max Justicz &lt;max@justi.cz&gt;
(cherry picked from commit 6484ed9849f03971eb48ee1fdc21a2f128247eb1)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A crafted .apk file could to trick apk writing unverified data to
an unexpected file during temporary file creation due to bugs in handling
long link target name and the way a regular file is extracted.

Several hardening steps are implemented to avoid this:
 - the temporary file is now always first unlinked (apk thus reserved
   all filenames .apk.* to be it's working files)
 - the temporary file is after that created with O_EXCL to avoid races
 - the temporary file is no longer directly the archive entry name
   and thus directly controlled by potentially untrusted data
 - long file names and link target names are now rejected
 - hard link targets are now more rigorously checked
 - various additional checks added for the extraction process to
   error out early in case of malformed (or old legacy) file

Reported-by: Max Justicz &lt;max@justi.cz&gt;
(cherry picked from commit 6484ed9849f03971eb48ee1fdc21a2f128247eb1)
</pre>
</div>
</content>
</entry>
<entry>
<title>apk: sanitize return value</title>
<updated>2018-09-06T11:47:02+00:00</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2018-09-05T07:21:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=d214c18ac51adb7317284f8f65173494cc726814'/>
<id>d214c18ac51adb7317284f8f65173494cc726814</id>
<content type='text'>
Most applets return whatever apk_solver_commit() returns. It is the
number of errors found (or negative for hard error). Sanitize the
error value to not give false success exit code in the unlikely case
of errors % 256 == 0.

Reported-by: Max Justicz &lt;max@justi.cz&gt;
(cherry picked from commit 7b654e125461b00bc26e52b25e6a7be3a32c11b9)
(cherry picked from commit 7c90fd0529c0358dd04cab0fce506e8a8b191506)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Most applets return whatever apk_solver_commit() returns. It is the
number of errors found (or negative for hard error). Sanitize the
error value to not give false success exit code in the unlikely case
of errors % 256 == 0.

Reported-by: Max Justicz &lt;max@justi.cz&gt;
(cherry picked from commit 7b654e125461b00bc26e52b25e6a7be3a32c11b9)
(cherry picked from commit 7c90fd0529c0358dd04cab0fce506e8a8b191506)
</pre>
</div>
</content>
</entry>
<entry>
<title>archive: enable FIFO extraction</title>
<updated>2018-09-06T11:46:28+00:00</updated>
<author>
<name>Jesse Young</name>
<email>jlyo@jlyo.org</email>
</author>
<published>2018-08-14T17:32:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=abe925f864e38a095ab26b0cbcb4b74d60d667ee'/>
<id>abe925f864e38a095ab26b0cbcb4b74d60d667ee</id>
<content type='text'>
(cherry picked from commit 1d55b9488f2d9c6d367fa7f21b058466c24f3ad1)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry picked from commit 1d55b9488f2d9c6d367fa7f21b058466c24f3ad1)
</pre>
</div>
</content>
</entry>
<entry>
<title>io: fix skip and splice to detect unexpected end-of-file</title>
<updated>2018-09-06T11:45:23+00:00</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2017-10-12T10:35:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=70deb0aa595a9a45b0628738eb196666b8ac03f8'/>
<id>70deb0aa595a9a45b0628738eb196666b8ac03f8</id>
<content type='text'>
(cherry picked from commit 2f3c8420493a731556909eb3ebd6d50478fb7b24)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry picked from commit 2f3c8420493a731556909eb3ebd6d50478fb7b24)
</pre>
</div>
</content>
</entry>
<entry>
<title>tar: return correct error for short read of tar archive</title>
<updated>2018-09-06T11:35:52+00:00</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2017-01-05T14:14:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=e48f441ed53744d24b3f745efccb8134e5abedb1'/>
<id>e48f441ed53744d24b3f745efccb8134e5abedb1</id>
<content type='text'>
(cherry picked from commit ca368916e0333bf24cdcbdbe42130ec6a92c3f6e)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry picked from commit ca368916e0333bf24cdcbdbe42130ec6a92c3f6e)
</pre>
</div>
</content>
</entry>
<entry>
<title>apk-tools-2.6.9</title>
<updated>2017-06-23T07:05:36+00:00</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2017-06-23T07:05:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=483f64ea1f6e5ebf37f7a75581b9d8b5465cf4a3'/>
<id>483f64ea1f6e5ebf37f7a75581b9d8b5465cf4a3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>archive: validate reading of pax and gnu long filename extensions</title>
<updated>2017-06-23T07:03:20+00:00</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2017-06-21T12:25:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=cb5972fba80f3b3b97c4f816ffb368a03616c6a9'/>
<id>cb5972fba80f3b3b97c4f816ffb368a03616c6a9</id>
<content type='text'>
Detect properly if the file stream gets an error during these
read operations.

Reported-by: Ariel Zelivansky from Twistlock
(cherry picked from commit cd531aef3033475c26f29a1f650a3bf392cc2daa)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Detect properly if the file stream gets an error during these
read operations.

Reported-by: Ariel Zelivansky from Twistlock
(cherry picked from commit cd531aef3033475c26f29a1f650a3bf392cc2daa)
</pre>
</div>
</content>
</entry>
<entry>
<title>archive: fix incorrect bounds checking for memory allocation</title>
<updated>2017-06-23T07:03:16+00:00</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2017-06-21T12:12:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=285371126a44d50bf81fe7957560bc0c048d1fdb'/>
<id>285371126a44d50bf81fe7957560bc0c048d1fdb</id>
<content type='text'>
The value from tar header is unsigned int; keep it casted to
unsigned int and size_t instead of (signed) int, otherwise
the comparisons fail to do their job properly. Additionally check
entry.size against SSIZE_MAX so the rounding up later on is
guaranteed to not overflow.

Fixes CVE-2017-9669 and CVE-2017-9671.
Reported-by: Ariel Zelivansky from Twistlock

(cherry picked from commit 286aa77ef1811e477895713df162c92b2ffc6df8)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The value from tar header is unsigned int; keep it casted to
unsigned int and size_t instead of (signed) int, otherwise
the comparisons fail to do their job properly. Additionally check
entry.size against SSIZE_MAX so the rounding up later on is
guaranteed to not overflow.

Fixes CVE-2017-9669 and CVE-2017-9671.
Reported-by: Ariel Zelivansky from Twistlock

(cherry picked from commit 286aa77ef1811e477895713df162c92b2ffc6df8)
</pre>
</div>
</content>
</entry>
<entry>
<title>apk-tools-2.6.8</title>
<updated>2016-10-25T08:06:30+00:00</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2016-10-25T08:06:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=d07f777934d4377b3f189bf3e057653748b1daa3'/>
<id>d07f777934d4377b3f189bf3e057653748b1daa3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
