Security advisory
The create_script function in the lxc_container module in Ansible before 1.9.6-1 and 2.x before 2.0.2.0 allows local users to write to arbitrary files or gain privileges via a symlink attack on (1) /opt/.lxc-attach-script, (2) the archived container in the archive_path directory, or the (3) lxc-attach-script.log or (4) lxc-attach-script.err files in the temporary directory.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2016-3096
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 09:42 UTC · Revision 1
Source evidence
The create_script function in the lxc_container module in Ansible before 1.9.6-1 and 2.x before 2.0.2.0 allows local users to write to arbitrary files or gain privileges via a symlink attack on (1) /opt/.lxc-attach-script, (2) the archived container in the archive_path directory, or the (3) lxc-attach-script.log or (4) lxc-attach-script.err files in the temporary directory.
osv:CVE-2016-3096
Complete source record
{
"id": "ad1d7a924007cd64f394e77a564e94d5e71b2cf79a28313fb5421a4d87cdf512",
"url": "https://osv.dev/vulnerability/CVE-2016-3096",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2016-3096",
"summary": "The create_script function in the lxc_container module in Ansible before 1.9.6-1 and 2.x before 2.0.2.0 allows local users to write to arbitrary files or gain privileges via a symlink attack on (1) /opt/.lxc-attach-script, (2) the archived container in the archive_path directory, or the (3) lxc-attach-script.log or (4) lxc-attach-script.err files in the temporary directory.",
"evidence": "osv:CVE-2016-3096",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2016-3096",
"aliases": [
"CVE-2016-3096",
"GHSA-rh6x-qvg7-rrmj",
"PYSEC-2016-1"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/ansible/ansible",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"last_affected": "7644312b20ba0a18eb12fe31d0fbddf656c2ce5e"
},
{
"introduced": "bb6cadefa2d68ed2a668fba14dc027947e043ae5"
},
{
"last_affected": "bb6cadefa2d68ed2a668fba14dc027947e043ae5"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:redhat:ansible:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"last_affected": "1.9.6"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:redhat:ansible:2.0.1:*:*:*:*:*:*:*",
"range": [
{
"introduced": "2.0.1"
},
{
"last_affected": "2.0.1"
}
],
"source": "CPE_STRING"
}
]
}
}
],
"versions": [
"2.0.1",
"v1.9.6-1",
"v1.9.6-0.1.rc1",
"v1.9.5-1",
"v1.9.5-0.1.rc1",
"v2.0.1.0-1",
"v1.9.4-1",
"v1.9.4-0.3.rc3",
"v1.9.4-0.2.rc2",
"v1.9.4-0.1.rc1",
"v1.9.3-1",
"v1.9.3-0.3.rc3",
"v1.9.3-0.2.rc2",
"v1.9.3-0.1.rc1",
"v1.9.2-1",
"v1.9.2-0.2.rc2",
"v1.9.1-1",
"v1.9.2-0.1.rc1",
"v1.9.1-0.3.rc3",
"v1.9.1-0.4.rc4",
"v1.9.1-0.2.rc2",
"v1.9.1-0.1.rc1",
"v1.9.0.1-1",
"v1.9.0-2",
"v1.9.0-1",
"v1.9.0-0.2.rc2",
"v1.9.0-0.1.rc1",
"v1.6.0",
"v1.4.0",
"v1.2",
"v1.1",
"v1.0",
"0.7",
"0.3",
"0.0.1",
"0.01"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2016-3096.json"
}
}
],
"modified": "2026-10-20T10:47:36.466440122Z",
"provider": "osv",
"references": [
"https://groups.google.com/forum/#%21topic/ansible-announce/E80HLZilTU0",
"https://groups.google.com/forum/#%21topic/ansible-announce/tqiZbcWxYig",
"https://github.com/ansible/ansible/blob/v1.9.6-1/CHANGELOG.md#196-dancing-in-the-street---tbd",
"https://security.gentoo.org/glsa/201607-14",
"https://bugzilla.redhat.com/show_bug.cgi?id=1322925",
"https://github.com/ansible/ansible-modules-extras/pull/1941",
"https://github.com/ansible/ansible-modules-extras/pull/1941/commits/8c6fe646ee79f5e55361b885b7efed5bec72d4a4",
"https://github.com/ansible/ansible/blob/v2.0.2.0-1/CHANGELOG.md#202-over-the-hills-and-far-away"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:o:fedoraproject:fedora:22:*:*:*:*:*:*:*",
"cpe:2.3:o:fedoraproject:fedora:23:*:*:*:*:*:*:*",
"cpe:2.3:o:fedoraproject:fedora:24:*:*:*:*:*:*:*"
],
"vendor_product": "fedoraproject:fedora",
"extracted_events": [
{
"range": [
{
"introduced": "22"
},
{
"last_affected": "22"
},
{
"introduced": "23"
},
{
"last_affected": "23"
},
{
"introduced": "24"
},
{
"last_affected": "24"
}
],
"source": "CPE_STRING"
}
]
},
{
"cpes": [
"cpe:2.3:a:redhat:ansible:2.0:*:*:*:*:*:*:*"
],
"vendor_product": "redhat:ansible",
"extracted_events": [
{
"range": [
{
"introduced": "2.0"
},
{
"last_affected": "2.0"
}
],
"source": "CPE_STRING"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2016-3096",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 379573,
"published_at": "2016-06-03T14:59:04.263+00:00"
}