SUPPORT / SAMPLES & SAS NOTES
 

Support

Problem Note 64212: Stack-overflow error from the HPSPLIT procedure could be exploited by a crafted attack

DetailsHotfixAboutRate It

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

Product FamilyProductSystemProduct ReleaseSAS Release
ReportedFixed*ReportedFixed*
SAS SystemSAS/STATz/OS14.39.4 TS1M5
z/OS 64-bit14.39.4 TS1M5
Microsoft® Windows® for x6414.39.4 TS1M5
Microsoft Windows 8 Enterprise 32-bit14.39.4 TS1M5
Microsoft Windows 8 Enterprise x6414.39.4 TS1M5
Microsoft Windows 8 Pro 32-bit14.39.4 TS1M5
Microsoft Windows 8 Pro x6414.39.4 TS1M5
Microsoft Windows 8.1 Enterprise 32-bit14.39.4 TS1M5
Microsoft Windows 8.1 Enterprise x6414.39.4 TS1M5
Microsoft Windows 8.1 Pro 32-bit14.39.4 TS1M5
Microsoft Windows 8.1 Pro x6414.39.4 TS1M5
Microsoft Windows 1014.39.4 TS1M5
Microsoft Windows Server 200814.39.4 TS1M5
Microsoft Windows Server 2008 R214.39.4 TS1M5
Microsoft Windows Server 2008 for x6414.39.4 TS1M5
Microsoft Windows Server 2012 Datacenter14.39.4 TS1M5
Microsoft Windows Server 2012 R2 Datacenter14.39.4 TS1M5
Microsoft Windows Server 2012 R2 Std14.39.4 TS1M5
Microsoft Windows Server 2012 Std14.39.4 TS1M5
Microsoft Windows Server 201614.39.4 TS1M5
Windows 7 Enterprise 32 bit14.39.4 TS1M5
Windows 7 Enterprise x6414.39.4 TS1M5
Windows 7 Home Premium 32 bit14.39.4 TS1M5
Windows 7 Home Premium x6414.39.4 TS1M5
Windows 7 Professional 32 bit14.39.4 TS1M5
Windows 7 Professional x6414.39.4 TS1M5
Windows 7 Ultimate 32 bit14.39.4 TS1M5
Windows 7 Ultimate x6414.39.4 TS1M5
64-bit Enabled AIX14.39.4 TS1M5
64-bit Enabled Solaris14.39.4 TS1M5
HP-UX IPF14.39.4 TS1M5
Linux for x6414.39.4 TS1M5
Solaris for x6414.39.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.