summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYue Tao <Yue.Tao@windriver.com>2014-04-14 13:01:16 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-05-21 09:08:09 +0100
commitbe8693bf151987f59c9622b8fd8b659ee203cefc (patch)
tree2d260f14007a8198cd8e3bc0f9db2784c664be5d
parent25a212d0154906e7a05075d015dbc1cfdfabb73a (diff)
downloadopenembedded-core-be8693bf151987f59c9622b8fd8b659ee203cefc.tar.gz
openembedded-core-be8693bf151987f59c9622b8fd8b659ee203cefc.tar.bz2
openembedded-core-be8693bf151987f59c9622b8fd8b659ee203cefc.zip
screen: fix for Security Advisory CVE-2009-1215
Race condition in GNU screen 4.0.3 allows local users to create or overwrite arbitrary files via a symlink attack on the /tmp/screen-exchange temporary file. Signed-off-by: Yue Tao <Yue.Tao@windriver.com> Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
-rw-r--r--meta/recipes-extended/screen/screen-4.0.3/screen-4.0.2-CVE-2009-1215.patch27
-rw-r--r--meta/recipes-extended/screen/screen_4.0.3.bb1
2 files changed, 28 insertions, 0 deletions
diff --git a/meta/recipes-extended/screen/screen-4.0.3/screen-4.0.2-CVE-2009-1215.patch b/meta/recipes-extended/screen/screen-4.0.3/screen-4.0.2-CVE-2009-1215.patch
new file mode 100644
index 0000000000..538a8fa3b2
--- /dev/null
+++ b/meta/recipes-extended/screen/screen-4.0.3/screen-4.0.2-CVE-2009-1215.patch
@@ -0,0 +1,27 @@
+Upstream-Status: Backport
+
+This patch is a backport from screen_4.0.3-11+lenny1.diff
+to fix CVE-2009-1215.
+
+Signed-off-by: Shenbo Huang<shenbo.huang@windriver.com)
+---
+ properly by keeping the umask instead of dropping
+ the 'public exchange file' concept. Modify dpatch 22.
+ <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521123>
+---
+ fileio.c | 5 -----
+ 1 file changed, 5 deletions(-)
+--- a/fileio.c
++++ b/fileio.c
+@@ -365,11 +365,6 @@ int dump;
+ char *mode = "w";
+ #ifdef COPY_PASTE
+ int public = 0;
+-# ifdef _MODE_T
+- mode_t old_umask;
+-# else
+- int old_umask;
+-# endif
+ # ifdef HAVE_LSTAT
+ struct stat stb, stb2;
+ int fd, exists = 0;
diff --git a/meta/recipes-extended/screen/screen_4.0.3.bb b/meta/recipes-extended/screen/screen_4.0.3.bb
index a0aa15c0d3..c5218ec1db 100644
--- a/meta/recipes-extended/screen/screen_4.0.3.bb
+++ b/meta/recipes-extended/screen/screen_4.0.3.bb
@@ -21,6 +21,7 @@ SRC_URI = "${GNU_MIRROR}/screen/screen-${PV}.tar.gz;name=tarball \
file://configure.patch \
file://fix-parallel-make.patch \
file://screen-4.0.3-CVE-2009-1214.patch \
+ file://screen-4.0.2-CVE-2009-1215.patch \
${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)}"
PAM_SRC_URI = "file://screen.pam"