SecurityTracker.com
    Home    |    View Topics    |    Search    |    Contact Us    |   

SecurityTracker
Archives


 


Category:   Application (Security)  >   Libsafe Vendors:   Avaya
(Mandrake Issues Fix) Libsafe Libary Security Function Format String Protections Can Be Bypassed
SecurityTracker Alert ID:  1004029
SecurityTracker URL:  http://securitytracker.com/id/1004029
CVE Reference:   GENERIC-MAP-NOMATCH   (Links to External Site)
Date:  Apr 12 2002
Impact:   Execution of arbitrary code via local system, Execution of arbitrary code via network, Host/resource access via network
Fix Available:  Yes  Vendor Confirmed:  Yes  
Version(s): prior to 2.0-12
Description:   A vulnerability was reported in libsafe library security function. A user may be able to bypass the libsafe format string protection mechanisms.

It is reported that libsafe protections against format string exploits may be bypassed using flag characters that are implemented in glibc but are not implemented in libsafe.

The following flags are definied in SUSv2 but are not defined in C standard (quoting from printf(3) manpage):

' For decimal conversion (i, d, u, f, F, g, G) the
output is to be grouped with thousands' grouping
characters if the locale information indicates any.
Note that many versions of gcc cannot parse this
option and will issue a warning. SUSv2 does not
include %'F.

I For decimal integer conversion (i, d, u) the output
uses the locale's alternative output digits, if any
(for example, Arabic digits). However, it does not
include any locale definitions with such outdigits
defined. (glibc 2.2 only)

For example, this could be exploited as follows:

printf("%'n", &target);
printf("%In", &target);

It is also reported that the libsafe *printf function wrappers incorrectly parse argument indexing in format strings. The function wrappers apparently assume that the n-th conversion specification always uses the n-th argument and the wrappers do not count the real number of arguments used. As a result, arguments whose index numbers are above the total number of conversion specifications are not verified at all.

A demonstratoin exploit example is provided.

printf("%2$n", "unused argument", &target);

Total number of % format string used: 1 ("%2$n")
Number of argument used: 2

Impact:   A user may be able to craft an attack against a libsafe-protected application that will bypass the libsafe format string protection mechanisms.
Solution:   The vendor has released a fix.

Linux-Mandrake 7.1:
2e5051889cc2aa3c6aec0f9e284d627c 7.1/RPMS/libsafe-2.0.13-1.2mdk.i586.rpm
9a8f35d46d0f59b02cfdde585ad26520 7.1/SRPMS/libsafe-2.0.13-1.2mdk.src.rpm

Linux-Mandrake 7.2:
4a709ce0e447ee0b419adfd29a8c3e5e 7.2/RPMS/libsafe-2.0.13-1.3mdk.i586.rpm
07f1c27a01efc4934d4ecf21c9b16519 7.2/SRPMS/libsafe-2.0.13-1.3mdk.src.rpm

Mandrake Linux 8.0:
1d0a81906bbc693b0509816013acac98 8.0/RPMS/libsafe-2.0.13-1.2mdk.i586.rpm
9a8f35d46d0f59b02cfdde585ad26520 8.0/SRPMS/libsafe-2.0.13-1.2mdk.src.rpm

Mandrake Linux 8.1:
2ec21f68a7521aed44aa5d31be8d7da9 8.1/RPMS/libsafe-2.0.13-1.2mdk.i586.rpm
9a8f35d46d0f59b02cfdde585ad26520 8.1/SRPMS/libsafe-2.0.13-1.2mdk.src.rpm

Mandrake Linux 8.2:
4de44dea8f94c02d3f4350479dafe4e5 8.2/RPMS/libsafe-2.0.13-1.2mdk.i586.rpm
9a8f35d46d0f59b02cfdde585ad26520 8.2/SRPMS/libsafe-2.0.13-1.2mdk.src.rpm

Corporate Server 1.0.1:
2e5051889cc2aa3c6aec0f9e284d627c 1.0.1/RPMS/libsafe-2.0.13-1.2mdk.i586.rpm
9a8f35d46d0f59b02cfdde585ad26520 1.0.1/SRPMS/libsafe-2.0.13-1.2mdk.src.rpm

Single Network Firewall 7.2:
4a709ce0e447ee0b419adfd29a8c3e5e snf7.2/RPMS/libsafe-2.0.13-1.3mdk.i586.rpm
07f1c27a01efc4934d4ecf21c9b16519 snf7.2/SRPMS/libsafe-2.0.13-1.3mdk.src.rpm

To upgrade automatically, use MandrakeUpdate. The verification of md5 checksums and GPG signatures is performed automatically for you.

If you want to upgrade manually, download the updated package from one of the Mandrake FTP server mirrors and upgrade with "rpm -Fvh *.rpm".

Vendor URL:  www.research.avayalabs.com/project/libsafe/ (Links to External Site)
Cause:   Input validation error
Underlying OS:  Linux (Mandriva/Mandrake)
Underlying OS Comments:  7.1, 7.2, 8.0, 8.1, Corporate Server 1.0.1, Single Network Firewall 7.2

Message History:   This archive entry is a follow-up to the message listed below.
Mar 20 2002 Libsafe Libary Security Function Format String Protections Can Be Bypassed



 Source Message Contents

Subject:  [Security Announce] MDKSA-2002:026 - libsafe update


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

________________________________________________________________________

                Mandrake Linux Security Update Advisory
________________________________________________________________________

Package name:           libsafe
Advisory ID:            MDKSA-2002:026
Date:                   April 11th, 2002
Affected versions:      7.1, 7.2, 8.0, 8.1, Corporate Server 1.0.1,
                        Single Network Firewall 7.2
________________________________________________________________________

Problem Description:

 Wojciech Purczynski discovered that format string protection in libsafe
 can be easily bypassed by using flag characters that are implemented in
 glibc but are not implemented in libsafe.  It was also discovered that
 *printf function wrappers incorrectly parse argument indexing in format
 strings, making some incorrect assumptions on the number of arguments
 and conversion specifications.

 These problems were fixed by the libsafe authors in 2.0-12.
________________________________________________________________________

References:

 http://online.securityfocus.com/bid/4326
 http://online.securityfocus.com/bid/4327
________________________________________________________________________

Updated Packages:

 Linux-Mandrake 7.1:
 2e5051889cc2aa3c6aec0f9e284d627c  7.1/RPMS/libsafe-2.0.13-1.2mdk.i586.rpm
 9a8f35d46d0f59b02cfdde585ad26520  7.1/SRPMS/libsafe-2.0.13-1.2mdk.src.rpm

 Linux-Mandrake 7.2:
 4a709ce0e447ee0b419adfd29a8c3e5e  7.2/RPMS/libsafe-2.0.13-1.3mdk.i586.rpm
 07f1c27a01efc4934d4ecf21c9b16519  7.2/SRPMS/libsafe-2.0.13-1.3mdk.src.rpm

 Mandrake Linux 8.0:
 1d0a81906bbc693b0509816013acac98  8.0/RPMS/libsafe-2.0.13-1.2mdk.i586.rpm
 9a8f35d46d0f59b02cfdde585ad26520  8.0/SRPMS/libsafe-2.0.13-1.2mdk.src.rpm

 Mandrake Linux 8.1:
 2ec21f68a7521aed44aa5d31be8d7da9  8.1/RPMS/libsafe-2.0.13-1.2mdk.i586.rpm
 9a8f35d46d0f59b02cfdde585ad26520  8.1/SRPMS/libsafe-2.0.13-1.2mdk.src.rpm

 Mandrake Linux 8.2:
 4de44dea8f94c02d3f4350479dafe4e5  8.2/RPMS/libsafe-2.0.13-1.2mdk.i586.rpm
 9a8f35d46d0f59b02cfdde585ad26520  8.2/SRPMS/libsafe-2.0.13-1.2mdk.src.rpm

 Corporate Server 1.0.1:
 2e5051889cc2aa3c6aec0f9e284d627c  1.0.1/RPMS/libsafe-2.0.13-1.2mdk.i586.rpm
 9a8f35d46d0f59b02cfdde585ad26520  1.0.1/SRPMS/libsafe-2.0.13-1.2mdk.src.rpm

 Single Network Firewall 7.2:
 4a709ce0e447ee0b419adfd29a8c3e5e  snf7.2/RPMS/libsafe-2.0.13-1.3mdk.i586.rpm
 07f1c27a01efc4934d4ecf21c9b16519  snf7.2/SRPMS/libsafe-2.0.13-1.3mdk.src.rpm
________________________________________________________________________

Bug IDs fixed (see https://qa.mandrakesoft.com for more information):

________________________________________________________________________

To upgrade automatically, use MandrakeUpdate.  The verification of md5
checksums and GPG signatures is performed automatically for you.

If you want to upgrade manually, download the updated package from one 
of our FTP server mirrors and upgrade with "rpm -Fvh *.rpm".  A list of
FTP mirrors can be obtained from:

  http://www.mandrakesecure.net/en/ftp.php

Please verify the update prior to upgrading to ensure the integrity of
the downloaded package.  You can do this with the command:

  rpm --checksig <filename>

All packages are signed by MandrakeSoft for security.  You can obtain
the GPG public key of the Mandrake Linux Security Team from:

  https://www.mandrakesecure.net/RPM-GPG-KEYS

Please be aware that sometimes it takes the mirrors a few hours to 
update.

You can view other update advisories for Mandrake Linux at:

  http://www.mandrakesecure.net/en/advisories/

MandrakeSoft has several security-related mailing list services that
anyone can subscribe to.  Information on these lists can be obtained by
visiting:

  http://www.mandrakesecure.net/en/mlist.php

If you want to report vulnerabilities, please contact

  security@linux-mandrake.com
________________________________________________________________________

Type Bits/KeyID     Date       User ID
pub  1024D/22458A98 2000-07-10 Linux Mandrake Security Team
  <security@linux-mandrake.com>


- -----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.0.5 (GNU/Linux)
Comment: For info see http://www.gnupg.org

mQGiBDlp594RBAC2tDozI3ZgQsE7XwxurJCJrX0L5vx7SDByR5GHDdWekGhdiday
L4nfUax+SeR9SCoCgTgPW1xB8vtQc8/sinJlMjp9197a2iKM0FOcPlkpa3HcOdt7
WKJqQhlMrHvRcsivzcgqjH44GBBJIT6sygUF8k0lU6YnMHj5MPc/NGWt8wCg9vKo
P0l5QVAFSsHtqcU9W8cc7wMEAJzQsAlnvPXDBfBLEH6u7ptWFdp0GvbSuG2wRaPl
hynHvRiE01ZvwbJZXsPsKm1z7uVoW+NknKLunWKB5axrNXDHxCYJBzY3jTeFjsqx
PFZkIEAQphLTkeXXelAjQ5u9tEshPswEtMvJvUgNiAfbzHfPYmq8D6x5xOw1IySg
2e/LBACxr2UJYCCB2BZ3p508mAB0RpuLGukq+7UWiOizy+kSskIBg2O7sQkVY/Cs
iyGEo4XvXqZFMY39RBdfm2GY+WB/5NFiTOYJRKjfprP6K1YbtsmctsX8dG+foKsD
LLFs7OuVfaydLQYp1iiN6D+LJDSMPM8/LCWzZsgr9EKJ8NXiyrQ6TGludXggTWFu
ZHJha2UgU2VjdXJpdHkgVGVhbSA8c2VjdXJpdHlAbGludXgtbWFuZHJha2UuY29t
PohWBBMRAgAWBQI5aefeBAsKBAMDFQMCAxYCAQIXgAAKCRCaqNDQIkWKmK6LAKCy
/NInDsaMSI+WHwrquwC5PZrcnQCeI+v3gUDsNfQfiKBvQSANu1hdulqIRgQQEQIA
BgUCOtNVGQAKCRBZ5w3um0pAJJWQAKDUoL5He+mKbfrMaTuyU5lmRyJ0fwCgoFAP
WdvQlu/kFjphF740XeOwtOqIRgQQEQIABgUCOu8A6QAKCRBynDnb9lq3CnpjAJ4w
Pk0SEE9U4r40IxWpwLU+wrWVugCdFfSPllPpZRCiaC7HwbFcfExRmPa5AQ0EOWnn
7xAEAOQlTVY4TiNo5V/iP0J1xnqjqlqZsU7yEBKo/gZz6/+hx75RURe1ebiJ9F77
9FQbpJ9Epz1KLSXvq974rnVb813zuGdmgFyk+ryA/rTR2RQ8h+EoNkwmATzRxBXV
Jb57fFQjxOu4eNjZAtfII/YXb0uyXXrdr5dlJ/3eXrcO4p0XAAMFBACCxo6Z269s
+A4v8C6Ui12aarOQcCDlV8cVG9LkyatU3FNTlnasqwo6EkaP572448weJWwN6SCX
Vl+xOYLiK0hL/6Jb/O9Agw75yUVdk+RMM2I4fNEi+y4hmfMh2siBv8yEkEvZjTcl
3TpkTfzYky85tu433wmKaLFOv0WjBFSikohGBBgRAgAGBQI5aefvAAoJEJqo0NAi
RYqYid0AoJgeWzXrEdIClBOSW5Q6FzqJJyaqAKC0Y9YI3UFlE4zSIGjcFlLJEJGX
lA==
=0ahQ
- -----END PGP PUBLIC KEY BLOCK-----

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE8tlNLmqjQ0CJFipgRAs1AAJ0fKGP3CCTCUkCIvmrvSuZLCqaaAwCeJtXC
krV18phLuLRPw7TAifb7Ipo=
=X4Rr
-----END PGP SIGNATURE-----

 
 


Go to the Top of This SecurityTracker Archive Page





Home   |    View Topics   |    Search   |    Contact Us

This web site uses cookies for web analytics. Learn More

Copyright 2021, SecurityGlobal.net LLC