Problem Note 64212: Stack-overflow error from the HPSPLIT procedure could be exploited by a crafted attack
Title: stack-overflow error from the HPSPLIT procedure could be exploited by a crafted attack
Severity: Medium
Description: In SAS/STAT® software, if you are using the HPSPLIT procedure and a stack-overflow error occurs, then you might encounter a security vulnerability.  Stack-overflow errors display text like the following:
Stack trace:
(gdb) where
#0  0x00007fe517bfd207 in raise () from /sasusr/u/rgh/philip/lib64/libc.so.6
#1  0x00007fe517bfe8f8 in abort () from /sasusr/u/rgh/philip/lib64/libc.so.6
#2  0x00007fe49475c9b7 in __intel_security_check_cookie ()
   from /sasusr/u/rgh/philip/pbr/sfw/sas/940/SASFoundation/9.4/sasexe/tkhp3.so
#3  0x00007fe4946d7946 in str_append_cls_q (v=0x1e3d5, lev=44123, ToTKChar=0x6,
    buf=0xffffffffffffffff <Address 0xffffffffffffffff out of bounds>,
len=0x7fe4aa6e2700, maxlen=8007521588175070582,
    lenerr=0x2020202020202020 <Address 0x2020202020202020 out of bounds>,
    quot=0x202020202020 <Address 0x202020202020 out of bounds>) at
/sas/wky/mva-v940m5/tkhpstat/src/regtree.c:3490
#4  0x2020202020202020 in ?? ()
#5  0x2020202020202020 in ?? ()
#6  0x0000202020202020 in ?? ()
#7  0x00000000000008e4 in ?? ()
#8  0xffffffffffffffff in ?? ()
#9  0xffffffffffffffd0 in ?? ()
#10 0x00007fe4aed49d40 in ?? ()
#11 0x0000000000000000 in ?? ()
Stack-overflow errors can occur when both of these conditions are true.
	- You are using the CLASS/MODEL syntax in your HPSPLIT code.
 
	- At least one of the variables in the model has a formatted length that exceeds 32.
 
To avoid the problem, take either of these actions.
	- Use the INPUT/TARGET syntax instead of the CLASS/MODEL syntax. The INPUT/TARGET syntax normalizes variable levels such that the overflow cannot occur.
 
	- Use formatted data lengths that do not exceed 32.
 
 
Potential Impact: stack-overflow from the HPSPLIT procedure could be exploited by a crafted attack
 
Click the Hot Fix tab in this note to access the hot fix for this issue.
Operating System and Release Information
| SAS System | SAS/STAT | z/OS | 14.3 |  | 9.4 TS1M5 |  | 
| z/OS 64-bit | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft® Windows® for x64 | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows 8 Enterprise 32-bit | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows 8 Enterprise x64 | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows 8 Pro 32-bit | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows 8 Pro x64 | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows 8.1 Enterprise 32-bit | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows 8.1 Enterprise x64 | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows 8.1 Pro 32-bit | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows 8.1 Pro x64 | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows 10 | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows Server 2008 | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows Server 2008 R2 | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows Server 2008 for x64 | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows Server 2012 Datacenter | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows Server 2012 R2 Datacenter | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows Server 2012 R2 Std | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows Server 2012 Std | 14.3 |  | 9.4 TS1M5 |  | 
| Microsoft Windows Server 2016 | 14.3 |  | 9.4 TS1M5 |  | 
| Windows 7 Enterprise 32 bit | 14.3 |  | 9.4 TS1M5 |  | 
| Windows 7 Enterprise x64 | 14.3 |  | 9.4 TS1M5 |  | 
| Windows 7 Home Premium 32 bit | 14.3 |  | 9.4 TS1M5 |  | 
| Windows 7 Home Premium x64 | 14.3 |  | 9.4 TS1M5 |  | 
| Windows 7 Professional 32 bit | 14.3 |  | 9.4 TS1M5 |  | 
| Windows 7 Professional x64 | 14.3 |  | 9.4 TS1M5 |  | 
| Windows 7 Ultimate 32 bit | 14.3 |  | 9.4 TS1M5 |  | 
| Windows 7 Ultimate x64 | 14.3 |  | 9.4 TS1M5 |  | 
| 64-bit Enabled AIX | 14.3 |  | 9.4 TS1M5 |  | 
| 64-bit Enabled Solaris | 14.3 |  | 9.4 TS1M5 |  | 
| HP-UX IPF | 14.3 |  | 9.4 TS1M5 |  | 
| Linux for x64 | 14.3 |  | 9.4 TS1M5 |  | 
| Solaris for x64 | 14.3 |  | 9.4 TS1M5 |  | 
*
        For software releases that are not yet generally available, the Fixed
        Release is the software release in which the problem is planned to be
        fixed.
       
| Type: | Problem Note | 
| Priority: | medium | 
| Date Modified: | 2019-05-30 10:28:14 | 
| Date Created: | 2019-05-17 14:36:34 |