CVE-2012-3406
The vfprintf function in stdio-common/vfprintf.c in GNU C Library (aka glibc) 2.5, 2.12, and...
The vfprintf function in stdio-common/vfprintf.c in GNU C Library (aka glibc) 2.5, 2.12, and probably other versions does not "properly restrict the use of" the alloca function when allocating the SPECS array, which allows context-dependent attackers to bypass the FORTIFY_SOURCE format-string protection mechanism and cause a denial of service (crash) or possibly execute arbitrary code via a crafted format string using positional parameters and a large number of format specifiers, a different vulnerability than CVE-2012-3404 and CVE-2012-3405.
Exploit likelihood
What each source reports
NVD Score used
6.8
The vfprintf function in stdio-common/vfprintf.c in GNU C Library (aka glibc) 2.5, 2.12, and probably other versions does not "properly restrict the use of" the alloca function when allocating the SPECS array, which allows context-dependent attackers to bypass the FORTIFY_SOURCE format-string protection mechanism and cause a denial of service (crash) or possibly execute arbitrary code via a crafted format string using positional parameters and a large number of format specifiers, a different vulnerability than CVE-2012-3404 and CVE-2012-3405.
- Record
CVE-2012-3406- CVSS 2.0
- 6.8 Medium
AV:N/AC:M/Au:N/C:P/I:P/A:P - Weakness
- CWE-264
- Updated
- 2026-11-02
CVE List No score
The vfprintf function in stdio-common/vfprintf.c in GNU C Library (aka glibc) 2.5, 2.12, and probably other versions does not "properly restrict the use of" the alloca function when allocating the SPECS array, which allows context-dependent attackers to bypass the FORTIFY_SOURCE format-string protection mechanism and cause a denial of service (crash) or possibly execute arbitrary code via a crafted format string using positional parameters and a large number of format specifiers, a different vulnerability than CVE-2012-3404 and CVE-2012-3405.
- Record
CVE-2012-3406- Updated
- 2026-11-02
EUVDEUVD-2012-3377 No score
The vfprintf function in stdio-common/vfprintf.c in GNU C Library (aka glibc) 2.5, 2.12, and probably other versions does not "properly restrict the use of" the alloca function when allocating the SPECS array, which allows context-dependent attackers to bypass the FORTIFY_SOURCE format-string protection mechanism and cause a denial of service (crash) or possibly execute arbitrary code via a crafted format string using positional parameters and a large number of format specifiers, a different vulnerability than CVE-2012-3404 and CVE-2012-3405.
- Record
EUVD-2012-3377- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-8mj9-m673-h2gf No score
The vfprintf function in stdio-common/vfprintf.c in GNU C Library (aka glibc) 2.5, 2.12, and...
The vfprintf function in stdio-common/vfprintf.c in GNU C Library (aka glibc) 2.5, 2.12, and probably other versions does not "properly restrict the use of" the alloca function when allocating the SPECS array, which allows context-dependent attackers to bypass the FORTIFY_SOURCE format-string protection mechanism and cause a denial of service (crash) or possibly execute arbitrary code via a crafted format string using positional parameters and a large number of format specifiers, a different vulnerability than CVE-2012-3404 and CVE-2012-3405.
- Record
GHSA-8mj9-m673-h2gf- Updated
- 2026-11-02
OSV No score
The vfprintf function in stdio-common/vfprintf.c in GNU C Library (aka glibc) 2.5, 2.12, and probably other versions does not "properly restrict the use of" the alloca function when allocating the SPECS array, which allows context-dependent attackers to bypass the FORTIFY_SOURCE format-string protection mechanism and cause a denial of service (crash) or possibly execute arbitrary code via a crafted format string using positional parameters and a large number of format specifiers, a different vulnerability than CVE-2012-3404 and CVE-2012-3405.
- Record
CVE-2012-3406- Updated
- 2026-11-02
OSVDEBIAN-CVE-2012-3406 No score
The vfprintf function in stdio-common/vfprintf.c in GNU C Library (aka glibc) 2.5, 2.12, and probably other versions does not "properly restrict the use of" the alloca function when allocating the SPECS array, which allows context-dependent attackers to bypass the FORTIFY_SOURCE format-string protection mechanism and cause a denial of service (crash) or possibly execute arbitrary code via a crafted format string using positional parameters and a large number of format specifiers, a different vulnerability than CVE-2012-3404 and CVE-2012-3405.
- Record
DEBIAN-CVE-2012-3406- Updated
- 2026-11-02
OSVMGASA-2015-0013 No score
Updated glibc packages fix security vulnerabilities
The vfprintf function in stdio-common/vfprintf.c in GNU C Library (aka glibc) 2.5, 2.12, and probably other versions does not "properly restrict the use of" the alloca function when allocating the SPECS array, which allows context- dependent attackers to bypass the FORTIFY_SOURCE format-string protection mechanism and cause a denial of service (crash) or possibly execute arbitrary code via a crafted format string using positional parameters and a large number of format specifiers (CVE-2012-3406).
The nss_dns implementation of getnetbyname could run into an infinite loop if the DNS response contained a PTR record of an unexpected format (CVE-2014-9402).
Also glibc lock elision (new feature in glibc 2.18) has been disabled as it can break glibc at runtime on newer Intel hardware (due to hardware bug)
- Record
MGASA-2015-0013- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:10154-1 No score
glibc-2.24-2.3 on GA media
These are all security issues fixed in the glibc-2.24-2.3 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:10154-1- Updated
- 2026-11-02
OSVSUSE-SU-2015:0551-1 No score
Security update for glibc
This update for glibc contains the following fixes:
* Fix integer overflows in malloc (CVE-2013-4332, bnc#839870)
* Fix buffer overflow in glob (bnc#691365)
* Fix buffer overflow in strcoll (CVE-2012-4412, bnc#779320)
* Update mount flags in <sys/mount.h> (bnc#791928)
* Fix buffer overrun in regexp matcher (CVE-2013-0242, bnc#801246)
* Fix memory leaks in dlopen (bnc#811979)
* Fix stack overflow in getaddrinfo with many results (CVE-2013-1914,
bnc#813121)
* Fix check for XEN build in glibc_post_upgrade that causes missing
init re-exec (bnc#818628)
* Don't raise UNDERFLOW in tan/tanf for small but normal argument
(bnc#819347)
* Properly cross page boundary in SSE4.2 implementation of strcmp
(bnc#822210)
* Fix robust mutex handling after fork (bnc#827811)
* Fix missing character in IBM-943 charset (bnc#828235)
* Fix use of alloca in gaih_inet (bnc#828637)
* Initialize pointer guard also in static executables (CVE-2013-4788,
bnc#830268)
* Fix readdir_r with long file names (CVE-2013-4237, bnc#834594).
Security Issues:
* CVE-2012-4412
<http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-4412>
* CVE-2013-0242
<http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-0242>
* CVE-2013-1914
<http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-1914>
* CVE-2013-4237
<http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-4237>
* CVE-2013-4332
<http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-4332>
* CVE-2013-4788
<http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-4788>
- Record
SUSE-SU-2015:0551-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
glibcDebian:12 |
before 2.19-14 | 2.19-14 |
glibcDebian:13 |
before 2.19-14 | 2.19-14 |
glibcDebian:14 |
before 2.19-14 | 2.19-14 |
eglibcDebian:6.0 |
before 2.11.3-4+deb6u5, plus listed versions 2.11.2-102.11.2-10+m68k.12.11.2-112.11.2-11+m68k.12.11.2-12 Show 5 moreShow less2.11.2-132.11.3-12.11.3-22.11.3-32.11.3-4 |
2.11.3-4+deb6u5 |
eglibcDebian:7 |
before 2.13-38+deb7u8, plus listed versions 2.13-382.13-38+deb7u12.13-38+deb7u22.13-38+deb7u32.13-38+deb7u42.13-38+deb7u52.13-38+deb7u62.13-38+deb7u7 |
2.13-38+deb7u8 |
glibcMageia:4 |
before 2.18-9.8.mga4 | 2.18-9.8.mga4 |
glibcRed Hat:enterprise_linux:5::client |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-commonRed Hat:enterprise_linux:5::client |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-debuginfoRed Hat:enterprise_linux:5::client |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-debuginfo-commonRed Hat:enterprise_linux:5::client |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
Show 50 moreShow less
| Package | Affected | Fixed |
|---|---|---|
glibc-develRed Hat:enterprise_linux:5::client |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-headersRed Hat:enterprise_linux:5::client |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-utilsRed Hat:enterprise_linux:5::client |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
nscdRed Hat:enterprise_linux:5::client |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibcRed Hat:enterprise_linux:5::server |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-commonRed Hat:enterprise_linux:5::server |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-debuginfoRed Hat:enterprise_linux:5::server |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-debuginfo-commonRed Hat:enterprise_linux:5::server |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-develRed Hat:enterprise_linux:5::server |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-headersRed Hat:enterprise_linux:5::server |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibc-utilsRed Hat:enterprise_linux:5::server |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
nscdRed Hat:enterprise_linux:5::server |
before 0:2.5-81.el5_8.4 | 0:2.5-81.el5_8.4 |
glibcRed Hat:enterprise_linux:6::client |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-commonRed Hat:enterprise_linux:6::client |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-debuginfoRed Hat:enterprise_linux:6::client |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-debuginfo-commonRed Hat:enterprise_linux:6::client |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-develRed Hat:enterprise_linux:6::client |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-headersRed Hat:enterprise_linux:6::client |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-utilsRed Hat:enterprise_linux:6::client |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
nscdRed Hat:enterprise_linux:6::client |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-staticRed Hat:enterprise_linux:6::client |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibcRed Hat:enterprise_linux:6::computenode |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-commonRed Hat:enterprise_linux:6::computenode |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-debuginfoRed Hat:enterprise_linux:6::computenode |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-debuginfo-commonRed Hat:enterprise_linux:6::computenode |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-develRed Hat:enterprise_linux:6::computenode |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-headersRed Hat:enterprise_linux:6::computenode |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-utilsRed Hat:enterprise_linux:6::computenode |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
nscdRed Hat:enterprise_linux:6::computenode |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-staticRed Hat:enterprise_linux:6::computenode |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibcRed Hat:enterprise_linux:6::server |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-commonRed Hat:enterprise_linux:6::server |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-debuginfoRed Hat:enterprise_linux:6::server |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-debuginfo-commonRed Hat:enterprise_linux:6::server |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-develRed Hat:enterprise_linux:6::server |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-headersRed Hat:enterprise_linux:6::server |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-utilsRed Hat:enterprise_linux:6::server |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
nscdRed Hat:enterprise_linux:6::server |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-staticRed Hat:enterprise_linux:6::server |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibcRed Hat:enterprise_linux:6::workstation |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-commonRed Hat:enterprise_linux:6::workstation |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-debuginfoRed Hat:enterprise_linux:6::workstation |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-debuginfo-commonRed Hat:enterprise_linux:6::workstation |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-develRed Hat:enterprise_linux:6::workstation |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-headersRed Hat:enterprise_linux:6::workstation |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-utilsRed Hat:enterprise_linux:6::workstation |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
nscdRed Hat:enterprise_linux:6::workstation |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
glibc-staticRed Hat:enterprise_linux:6::workstation |
before 0:2.12-1.80.el6_3.3 | 0:2.12-1.80.el6_3.3 |
rhev-hypervisor6Red Hat:enterprise_linux:6::hypervisor |
before 0:6.3-20120815.0.el6_3 | 0:6.3-20120815.0.el6_3 |
glibcopenSUSE:Tumbleweed |
before 2.24-2.3 | 2.24-2.3 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2012-3406 is a medium vulnerability (CVSS 6.8) in Gnu Glibc, published September 13, 2013. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 3.16%, the 88th percentile. Fixed in glibc 2.19-14.
References
rhn.redhat.com/errata/RHSA-2012-1200.html
bugzilla.redhat.com/show_bug.cgi?id=826943
rhn.redhat.com/errata/RHSA-2012-1097.html
security.gentoo.org/glsa/201503-04
rhn.redhat.com/errata/RHSA-2012-1098.html
ubuntu.com/usn/USN-1589-1
Show 117 moreShow less
rhn.redhat.com/errata/RHSA-2012-1185.html
openwall.com/lists/oss-security/2012/07/11/17
bugzilla.redhat.com/attachment.cgi?id=594722
nvd.nist.gov/vuln/detail/CVE-2012-3406
github.com/advisories/GHSA-8mj9-m673-h2gf
security-tracker.debian.org/tracker/CVE-2012-3406
advisories.mageia.org/MGASA-2015-0013.html
bugs.mageia.org/show_bug.cgi?id=14852
access.redhat.com/errata/RHSA-2012:1097
access.redhat.com/security/updates/classification
security.access.redhat.com/data/csaf/v2/advisories/2012/rhsa-2012_1097.json
access.redhat.com/security/cve/CVE-2012-3406
cve.org/CVERecord?id=CVE-2012-3406
access.redhat.com/errata/RHSA-2012:1098
bugzilla.redhat.com/show_bug.cgi?id=833703
bugzilla.redhat.com/show_bug.cgi?id=833704
bugzilla.redhat.com/show_bug.cgi?id=837026
security.access.redhat.com/data/csaf/v2/advisories/2012/rhsa-2012_1098.json
access.redhat.com/security/cve/CVE-2012-3404
cve.org/CVERecord?id=CVE-2012-3404
nvd.nist.gov/vuln/detail/CVE-2012-3404
access.redhat.com/security/cve/CVE-2012-3405
cve.org/CVERecord?id=CVE-2012-3405
nvd.nist.gov/vuln/detail/CVE-2012-3405
access.redhat.com/errata/RHSA-2012:1200
access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/5/html/Hypervisor_Deployment_Guide/chap-Deployment_Guide-Upgrading_Red_Hat_Enterprise_Virtualization_Hypervisors.html
access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Hypervisor_Deployment_Guide/chap-Deployment_Guide-Upgrading_Red_Hat_Enterprise_Virtualization_Hypervisors.html
bugzilla.redhat.com/show_bug.cgi?id=835169
security.access.redhat.com/data/csaf/v2/advisories/2012/rhsa-2012_1200.json
suse.com/support/update/announcement/2015/suse-su-20150551-1
bugzilla.suse.com/684534
bugzilla.suse.com/691365
bugzilla.suse.com/741345
bugzilla.suse.com/743689
bugzilla.suse.com/744996
bugzilla.suse.com/745658
bugzilla.suse.com/746824
bugzilla.suse.com/747768
bugzilla.suse.com/750741
bugzilla.suse.com/760795
bugzilla.suse.com/763512
bugzilla.suse.com/767266
bugzilla.suse.com/770891
bugzilla.suse.com/775690
bugzilla.suse.com/777233
bugzilla.suse.com/779320
bugzilla.suse.com/783060
bugzilla.suse.com/785041
bugzilla.suse.com/791928
bugzilla.suse.com/793146
bugzilla.suse.com/795129
bugzilla.suse.com/801246
bugzilla.suse.com/811979
bugzilla.suse.com/813121
bugzilla.suse.com/818628
bugzilla.suse.com/819347
bugzilla.suse.com/822210
bugzilla.suse.com/827811
bugzilla.suse.com/828235
bugzilla.suse.com/828637
bugzilla.suse.com/830268
bugzilla.suse.com/834594
bugzilla.suse.com/836746
bugzilla.suse.com/839870
bugzilla.suse.com/844309
bugzilla.suse.com/864081
bugzilla.suse.com/882600
bugzilla.suse.com/887022
bugzilla.suse.com/892073
bugzilla.suse.com/894553
bugzilla.suse.com/894556
bugzilla.suse.com/906371
bugzilla.suse.com/909053
bugzilla.suse.com/910599
bugzilla.suse.com/913646
bugzilla.suse.com/915526
bugzilla.suse.com/916222
bugzilla.suse.com/918233
suse.com/security/cve/CVE-2012-0864
suse.com/security/cve/CVE-2012-3404
suse.com/security/cve/CVE-2012-3405
suse.com/security/cve/CVE-2012-3406
suse.com/security/cve/CVE-2012-3480
suse.com/security/cve/CVE-2012-4412
suse.com/security/cve/CVE-2012-6656
suse.com/security/cve/CVE-2013-0242
suse.com/security/cve/CVE-2013-1914
suse.com/security/cve/CVE-2013-4237
suse.com/security/cve/CVE-2013-4332
suse.com/security/cve/CVE-2013-4357
suse.com/security/cve/CVE-2013-4788
suse.com/security/cve/CVE-2013-7423
suse.com/security/cve/CVE-2014-5119
suse.com/security/cve/CVE-2014-6040
suse.com/security/cve/CVE-2014-7817
suse.com/security/cve/CVE-2014-9402
suse.com/security/cve/CVE-2015-0235
suse.com/security/cve/CVE-2015-1472
suse.com/security/cve/CVE-2009-5029
suse.com/security/cve/CVE-2013-2207
suse.com/security/cve/CVE-2013-4458
suse.com/security/cve/CVE-2014-0475
suse.com/security/cve/CVE-2014-4043
suse.com/security/cve/CVE-2014-8121
suse.com/security/cve/CVE-2014-9761
suse.com/security/cve/CVE-2015-1473
suse.com/security/cve/CVE-2015-1781
suse.com/security/cve/CVE-2015-7547
suse.com/security/cve/CVE-2015-8776
suse.com/security/cve/CVE-2015-8777
suse.com/security/cve/CVE-2015-8778
suse.com/security/cve/CVE-2015-8779
suse.com/security/cve/CVE-2016-1234
suse.com/security/cve/CVE-2016-3075
suse.com/security/cve/CVE-2016-3706
suse.com/security/cve/CVE-2016-4429
suse.com/security/cve/CVE-2016-5417