Commit Graph

400 Commits

Author SHA1 Message Date
Jon Trulson 15a2032626 Convert uses of XKeycodeToKeysym (deprecated) to XkbKeycodeToKeysym
patch supplied from Peter G.
2020-03-23 12:51:18 -06:00
Jon Trulson 6b32246d06 dtsession, DtSvc: fix CVE-2020-2696/VU#308289
Marco Ivaldi <marco.ivaldi@mediaservice.net> has identified 3
vulnerabilities in CDE.

Two of them could affect our CDE (open-source version), while the 3rd
(sdtcm_convert) is Solaris specific.

The two vulnerabilities, both of which affect dtsession could allow a
local privilege escalation to root.  A POC exists for Solaris.  The
POC will not function on our CDE for two main reasons:

- the POC is Solaris specific
- The overflowed variables in question are allocated on the heap,
  whereas in Solaris these variables are located on the stack.

The first vulnerability allows an extra long palette name to be used
to cause a crash via insufficient validation in
SrvPalette.c:CheckMonitor().

The second, which has not yet been assigned a CERT CVE resides in
SmCreateDirs.c:_DtCreateDtDirs() in libDtSvc.  Due to insufficient
bounds checking, a crash or corruption can be achieved by using a very
long DISPLAY name.

This one is considered difficult to exploit, and no POC code is
available at this time.  CDE 2.x code-bases are also listed as not
vulnerable, however some work has been done anyway to do some proper
bounds checking in this function.

The following text portions are copied from the relevant advisories,
which have not been released as of this writing.

NOTE: Oracle CDE does NOT use CDE 2.3.0a or earlier as mentioned
below.  They are completely different code-bases):

Regarding CVE-2020-2692:

  A buffer overflow in the CheckMonitor() function in the Common
  Desktop Environment 2.3.0a and earlier, as distributed with Oracle
  Solaris 10 1/13 (Update 11) and earlier, allows local users to gain
  root privileges via a long palette name passed to dtsession in a
  malicious .Xdefaults file.

  Note that Oracle Solaris CDE is based on the original CDE 1.x train,
  which is different from the CDE 2.x codebase that was later open
  sourced. Most notably, the vulnerable buffer in the Oracle Solaris
  CDE is stack-based, while in the open source version it is
  heap-based.

Regarding the DtSvc bug, which does not currently have a CERT CVE:

  A difficult to exploit stack-based buffer overflow in the
  _DtCreateDtDirs() function in the Common Desktop Environment version
  distributed with Oracle Solaris 10 1/13 (Update 11) and earlier may
  allow local users to corrupt memory and potentially execute
  arbitrary code in order to escalate privileges via a long X11
  display name. The vulnerable function is located in the libDtSvc
  library and can be reached by executing the setuid program
  dtsession.

  The open source version of CDE (based on the CDE 2.x codebase) is
  not affected.
2020-01-13 19:13:23 -07:00
Jon Trulson ab023dfaed DtSvc: always use vsnprintf
There was code (_DtSimpleError() and _DtSimpleErrornoError()) that
only used snprintf when USE_SNPRINTF was defined, which it never was
of course.  We just remove the 2 checks and always use [v]snprintf.
2020-01-12 17:25:56 -07:00
Jon Trulson 2f8a2ec066 FreeBSD 12/libDtHelp: fix link errors with missing libjpeg 2020-01-04 14:36:06 -07:00
Nina Didenko 9221c55a5f tt_type_comp: use CppCmd definition
Hi.

This patch makes tt_type_comp respect CppCmd

Thanks!
2019-11-29 18:12:20 -07:00
Jon Trulson 0d70d8b120 Set version to 2.3.1a (devel) for current master 2019-11-18 13:03:52 -07:00
Jon Trulson 5fe7ee5b67 Change CDE version info for 2.3.1 release 2019-11-15 18:04:01 -07:00
Chase 88b46c6a28 il: remove various deprecated files 2019-11-01 17:23:48 -06:00
Chase 0f36a57eff remove more internal jpeg headers 2019-11-01 17:23:24 -06:00
Jon Trulson d7e5206d6b DtSvc/DtUtil2: fix implicit function declarations 2019-10-28 14:30:43 -06:00
Jon Trulson dbce2e4337 DtSvc/DtUtil1: fix implicit function declarations 2019-10-28 14:30:36 -06:00
Jon Trulson 5e05b59025 ttserver: fixup forward (vexing) fucntion decl's in main, get rid of **environ 2019-10-19 18:36:54 -06:00
wmoxam ab741a1241 'notdef' means it's not used, so we remove it 2019-10-15 20:32:13 -06:00
wmoxam de81a5b518 Remove ancient HP VUE compatibility support 2019-10-15 20:32:05 -06:00
Chase 4107a1b6be Remove old jpeg files 2019-10-14 19:18:40 -06:00
Jon Trulson ad94f2089d dtterm: add scroll wheel support
This patch was manually added via a diff supplied from a user on the
CDE mailing list: Michele Ghisolfo <ghisolfo.m@gmail.com>
2019-10-14 14:08:43 -06:00
wmoxam 923951b414 Remove NOTDONE code 2019-10-14 11:57:41 -06:00
Jose Rubio 0086a7067e Fix to compile warnings.
* discarded-qualifiers warnings.
* Function definitions, the .h doesn't match the .c.
* Added some include to ensure the .c has function definition.
2019-10-11 10:49:48 +02:00
Jose Rubio f9790767f3 Fix to different compile warnings.
Fix to multiple int-conversion
Removal of duplicated function definition in dtudcfonted/util.h
Added XtEventHandler prototypes to mtfgui
2019-10-10 19:59:40 +02:00
Jon Trulson 6e23c81914 Merge /u/jrubio/cdesktopenv/ branch pointer-compare into master
https://sourceforge.net/p/cdesktopenv/code/merge-requests/8/
2019-09-12 22:11:52 +00:00
Jon Trulson 426a18d9ef isfname.c: remove register keyword 2019-09-11 17:48:06 -06:00
Jose Rubio db7370b62b Cleanup of -Wpointer-compare warnings. 2019-08-19 18:02:25 +02:00
Peter Howkins cb4075e855 libDtHelp: Fix another regression caused by Coverity fix, clicking 'Help Manager' works again. 2018-11-07 17:04:59 +00:00
Peter Howkins fff0c54538 libDtHelp: Fix a regression with the Help Index pages caused by an overzealous Coverity fix 2018-11-07 01:05:56 +00:00
Jon Trulson 59dc231872 linux: DtHelp/StringFuncs, enable real iconv() support
For some reason, the #include of iconv.h was removed, and dummy stubs
were put in place on linux systems (only).  This caused iconv() calls
to be completely ignored.

Now we use iconv() just like very other OS we support.
2018-11-05 15:33:16 -07:00
Jon Trulson 2c1f56d37c Merge branch 'master' into cde-next 2018-11-04 10:56:04 -07:00
chase dd68514e4f Remove hpversion.h from repository
This patch removes hpversion.h from the repository, this also untangles a
lot of ifdef mess. This closes bug CDExc19524.
2018-10-06 17:00:38 -06:00
chase 90a2b2848a remove ultrix support 2018-09-30 17:27:04 -06:00
Jon Trulson 2dadc23e0e Merge branch 'master' into cde-next 2018-09-22 15:50:13 -06:00
Jon Trulson 6a72e2cea8 Change version to 2.3.0a (devel) 2018-09-20 16:49:01 -06:00
chase bf0b602b9a il: Remove deprecated files 2018-08-26 16:58:38 -06:00
chase 5e96644596 DtsMM.c: Remove null in string 2018-08-26 15:44:47 -06:00
chase d12ad886c1 Remove old windows support 2018-08-25 15:47:54 -06:00
Peter Howkins ddaa606d36 libDtHelp: Cov 88381 2018-08-11 01:28:57 +01:00
Peter Howkins 6a15c3deaa libDtHelp: Cov 88365 2018-08-11 01:26:59 +01:00
Peter Howkins f14e247a41 libDtHelp: Cov 89129 and 88355 2018-08-11 01:18:45 +01:00
Peter Howkins c9f5a14778 libDtHelp: Cov 88302 2018-08-11 01:14:03 +01:00
Peter Howkins 027bc031fd libDtHelp: Cov 88890 and 88294 2018-08-11 01:11:04 +01:00
Peter Howkins b4c10b4d63 libDtHelp: Cov 88275 2018-08-11 01:08:17 +01:00
Peter Howkins 5571bbceae libDtHelp: Cov 88262 and 88459 2018-08-11 01:05:01 +01:00
Peter Howkins f74bf1a29f libDtHelp: Cov 88240 2018-08-11 01:03:23 +01:00
Peter Howkins a97c7370a5 libDtHelp: Cov 88209 2018-08-11 01:01:13 +01:00
Peter Howkins 1c0312de48 libDtHelp: Cov 88162 2018-08-11 00:58:46 +01:00
Peter Howkins 2b2a1225da libDtHelp: Cov 88119 2018-08-11 00:57:11 +01:00
Peter Howkins 30809197c7 libDtHelp: Cov 88109 2018-08-11 00:55:03 +01:00
Peter Howkins 258a7e3803 libDtHelp: Cov 174697 2018-08-11 00:53:10 +01:00
Peter Howkins a895cc3e9c libDtHelp: Cov 89532 2018-08-11 00:51:59 +01:00
Peter Howkins ef54b70ac1 libDtHelp: Cov 89524 2018-08-11 00:50:33 +01:00
Peter Howkins 0be3e91f4d libDtHelp: Cov 89401 2018-08-11 00:47:42 +01:00
Peter Howkins 6441ea4bf4 libDtHelp: Cov 89084 2018-08-11 00:46:06 +01:00