summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorailin-nemui <ailin-nemui@users.noreply.github.com>2016-09-21 21:26:09 +0200
committerGitHub <noreply@github.com>2016-09-21 21:26:09 +0200
commitcfa5f81288059fb7d1c9e721d84f73fa3f67788f (patch)
treebe67ad360d3e284491ce91fa75e16b730fa88524
parent9c2ebf64cbf02753f4843d778fae4e700265bbc1 (diff)
parentd9e323edf82cd753bcc6a980a567bcf947bb4712 (diff)
downloadirssi.github.io-cfa5f81288059fb7d1c9e721d84f73fa3f67788f.zip
Merge pull request #28 from ailin-nemui/back
Release Irssi 0.8.20
-rw-r--r--_includes/sb_whatsnew.html2
-rw-r--r--_posts/2016-09-21-irssi-0.8.20-released.markdown37
-rw-r--r--download/index.markdown4
-rw-r--r--security/irssi_sa_2016.txt102
-rw-r--r--security/sa_patch.pl2
5 files changed, 144 insertions, 3 deletions
diff --git a/_includes/sb_whatsnew.html b/_includes/sb_whatsnew.html
index 1e9161d..c5d4fa5 100644
--- a/_includes/sb_whatsnew.html
+++ b/_includes/sb_whatsnew.html
@@ -1,3 +1,3 @@
+<p><small>2016-09-21</small> <a href="/2016/09/21/irssi-0.8.20-released">Irssi 0.8.20 has been released!</a> </p>
<p><small>2016-03-24</small> <a href="/2016/03/24/irssi-0.8.19-released">Irssi 0.8.19 has been released!</a> </p>
-<p><small>2016-02-29</small> <a href="/2016/02/29/irssi-0.8.18-released">Irssi 0.8.18 has been released!</a> </p>
<p><small>2015-12-15</small> <a href="/2015/12/14/irssi-website-now-on-github-pages">Irssi site now on github pages!</a> </p>
diff --git a/_posts/2016-09-21-irssi-0.8.20-released.markdown b/_posts/2016-09-21-irssi-0.8.20-released.markdown
new file mode 100644
index 0000000..d388f6c
--- /dev/null
+++ b/_posts/2016-09-21-irssi-0.8.20-released.markdown
@@ -0,0 +1,37 @@
+---
+layout: post
+title: "Irssi 0.8.20 Released"
+---
+
+Irssi 0.8.20 has been released. This release fixes two remote crash
+issues in Irssi 0.8.17 and later. There are no new features. **All
+users should upgrade to this version**. See the
+[NEWS](//raw.githubusercontent.com/irssi/irssi/0.8.20/NEWS) for
+details.
+
+This release can be downloaded from [our releases
+page](https://github.com/irssi/irssi/releases). Binary test packages
+for various Linux distributions are automatically generated by the
+[openSUSE Build Service](https://build.opensuse.org/) and are
+available for download in the
+[irssi-test](https://software.opensuse.org/download.html?project=home:ailin_nemui:irssi-test;package=irssi)
+repository. Please check with your distro whether they provide
+officially updated packages.
+
+Read the [security advisory](/security/irssi_sa_2016.txt).
+
+Furthermore, we are always looking for testers of the development
+version. Binaries of the current git development version are
+automatically packaged in the
+[irssi-git](https://software.opensuse.org/download.html?project=home:ailin_nemui:irssi-git;package=irssi-git)
+repository. The current development source code can be downloaded from
+[GitHub](https://github.com/irssi/irssi). Some more information on the
+[Contributing](https://irssi.org/development/) page. Report
+[Issues](https://github.com/irssi/irssi/issues) and do not hesitate to
+send in [Patches](https://github.com/irssi/irssi/pulls)!
+
+Remember to follow Irssi on
+[Twitter](https://twitter.com/IrssiProject), or pop into `#irssi` on
+Freenode.
+
+The Irssi Team.
diff --git a/download/index.markdown b/download/index.markdown
index 43a2cba..fa8fc76 100644
--- a/download/index.markdown
+++ b/download/index.markdown
@@ -156,7 +156,7 @@ The [openSUSE Build Service](http://build.opensuse.org/){:rel='external'} is bui
## Release Sources
-Latest release version: **0.8.19** – [Downloads][14]{:rel='external'}
+Latest release version: **0.8.20** – [Downloads][14]{:rel='external'}
See the included [INSTALL][15]{:rel='external'} file for building instructions
@@ -166,7 +166,7 @@ To verify the signatures:
You shouldn't really trust this key without verifying its fingerprint. See it with `gpg --fingerprint staff@irssi.org` and ask someone if it matches (eg. on `#irssi`).
- gpg --verify irssi-0.8.19.tar.xz.asc
+ gpg --verify irssi-0.8.20.tar.xz.asc
(This key is different from the one used to sign binaries of versions before 0.8.10. More gpg help can be found from GPG manual)
diff --git a/security/irssi_sa_2016.txt b/security/irssi_sa_2016.txt
new file mode 100644
index 0000000..7c4d22c
--- /dev/null
+++ b/security/irssi_sa_2016.txt
@@ -0,0 +1,102 @@
+heap corruption and missing boundary checks
+===========================================
+CWE Classification: CWE-20, CWE-823, CWE-126, CWE-122
+
+CVE-2016-7044 [1] was assigned to bug 1
+CVE-2016-7045 [2] was assigned to bug 2
+
+
+Description
+-----------
+
+Gabriel Campana and Adrien Guinet from Quarkslab reported two remote
+crash and heap corruption vulnerabilites in Irssi's format parsing
+code.
+
+They also provided us with proof of concept exploit code and patches
+to fix those issues.
+
+
+Impact
+------
+
+Remote crash and heap corruption. Remote code execution seems
+difficult since only Nuls are written.
+
+
+Detailed analysis
+-----------------
+
+Based on analysis Provided by Gabriel Campana and Adrien Guinet from
+Quarkslab:
+
+Bug 1
+
+The unformat_24bit_color() function is called by format_send_to_gui()
+to decode 24bit color codes into their components. The pointer is
+advanced unconditionally without checking if a complete code was
+supplied.
+
+Thus, after the return of unformat_24bit_color(), ptr might be invalid
+and point out of the buffer.
+
+Bug 2
+
+The format_send_to_gui() function does not validate the length of the
+string before incrementing the `ptr' pointer in all cases.
+
+If that happens, the pointer `ptr' can be incremented twice and thus
+end past the boundaries of the original `dup' buffer.
+
+
+Affected versions
+-----------------
+
+Irssi 0.8.17-beta up to and including 0.8.19 up to 0.8.19-219-g52fedea
+
+Bug 1 affects only Irssis compiled with true-color enabled.
+Bug 2 affects all Irssis regardless of compilation flags.
+
+
+Fixed in
+--------
+
+Irssi 0.8.20
+
+
+Recommended action
+------------------
+
+Upgrade to Irssi 0.8.20. Irssi 0.8.20 is a maintenance release
+without any new features.
+
+After installing the updated packages, one can issue the /upgrade
+command to load the new binary. TLS connections will require
+/reconnect. If the buf.pl script is loaded and symlinked into
+~/.irssi/scripts/autorun, text buffer content will be saved and
+restored.
+
+
+Fallback action
+---------------
+
+Distributions which need to remain on Irssi 0.8.17 are strongly urged
+to apply the patch and provide updated packages.
+
+Those totally unable to upgrade, but with Perl support enabled in
+their Irssi, can load the following script and add it to
+~/.irssi/scripts/autorun as a first aid to mitigating these issues:
+
+https://irssi.org/security/sa_patch.pl
+
+
+Patch
+-----
+
+https://github.com/irssi/irssi/commit/295a4b77f07f14602eeaa371f00ddbf09910c82b
+
+
+References
+----------
+[1] http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-7044
+[2] http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-7045
diff --git a/security/sa_patch.pl b/security/sa_patch.pl
new file mode 100644
index 0000000..2194dc7
--- /dev/null
+++ b/security/sa_patch.pl
@@ -0,0 +1,2 @@
+Irssi::signal_add_first("print text", sub {
+ for ($_[1]) { $_ .= ' ' if /\cD(?!.....)/ } &Irssi::signal_continue })