{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.1",
    "cveMetadata": {
        "cveId": "CVE-2023-3326",
        "assignerOrgId": "63664ac6-956c-4cba-a5d0-f46076e16109",
        "state": "PUBLISHED",
        "assignerShortName": "freebsd",
        "dateReserved": "2023-06-19T16:14:36.133Z",
        "datePublished": "2023-06-22T16:37:51.360Z",
        "dateUpdated": "2024-08-02T06:55:03.226Z"
    },
    "containers": {
        "cna": {
            "affected": [
                {
                    "defaultStatus": "unaffected",
                    "modules": [
                        "pam_krb5"
                    ],
                    "product": "FreeBSD",
                    "vendor": "FreeBSD",
                    "versions": [
                        {
                            "lessThan": "13.2-RELEASE-p1",
                            "status": "affected",
                            "version": "13.2-RELEASE",
                            "versionType": "release"
                        },
                        {
                            "lessThan": "13.1-RELEASE-p8",
                            "status": "affected",
                            "version": "13.1-RELEASE",
                            "versionType": "release"
                        },
                        {
                            "lessThan": "12.4-RELEASE-p3",
                            "status": "affected",
                            "version": "12.4-RELEASE",
                            "versionType": "release"
                        }
                    ]
                }
            ],
            "configurations": [
                {
                    "lang": "en",
                    "supportingMedia": [
                        {
                            "base64": false,
                            "type": "text/html",
                            "value": "<div>Exposure only occurs if pam_krb5 is enabled in the PAM configuration, an /etc/krb5.conf is installed, and the system does not have a system keytab.</div><div><br></div><div>For FreeBSD, the default installation has pam_krb5 commented out and does not have an /etc/krb5.conf.</div>"
                        }
                    ],
                    "value": "Exposure only occurs if pam_krb5 is enabled in the PAM configuration, an /etc/krb5.conf is installed, and the system does not have a system keytab.\n\n\n\n\nFor FreeBSD, the default installation has pam_krb5 commented out and does not have an /etc/krb5.conf.\n\n"
                }
            ],
            "credits": [
                {
                    "lang": "en",
                    "type": "finder",
                    "user": "00000000-0000-4000-9000-000000000000",
                    "value": "Taylor R Campbell <riastradh@NetBSD.org>"
                }
            ],
            "datePublic": "2023-06-21T06:00:00.000Z",
            "descriptions": [
                {
                    "lang": "en",
                    "supportingMedia": [
                        {
                            "base64": false,
                            "type": "text/html",
                            "value": "pam_krb5 authenticates a user by essentially running kinit with the password, getting a ticket-granting ticket (tgt) from the Kerberos KDC (Key Distribution Center) over the network, as a way to verify the password. However, if a keytab is not provisioned on the system, pam_krb5 has no way to validate the response from the KDC, and essentially trusts the tgt provided over the network as being valid. In a non-default FreeBSD installation that leverages pam_krb5 for authentication and does not have a keytab provisioned, an attacker that is able to control both the password and the KDC responses can return a valid tgt, allowing authentication to occur for any user on the system.<br>"
                        }
                    ],
                    "value": "pam_krb5 authenticates a user by essentially running kinit with the password, getting a ticket-granting ticket (tgt) from the Kerberos KDC (Key Distribution Center) over the network, as a way to verify the password. However, if a keytab is not provisioned on the system, pam_krb5 has no way to validate the response from the KDC, and essentially trusts the tgt provided over the network as being valid. In a non-default FreeBSD installation that leverages pam_krb5 for authentication and does not have a keytab provisioned, an attacker that is able to control both the password and the KDC responses can return a valid tgt, allowing authentication to occur for any user on the system.\n"
                }
            ],
            "impacts": [
                {
                    "capecId": "CAPEC-114",
                    "descriptions": [
                        {
                            "lang": "en",
                            "value": "CAPEC-114 Authentication Abuse"
                        }
                    ]
                }
            ],
            "problemTypes": [
                {
                    "descriptions": [
                        {
                            "cweId": "CWE-303",
                            "description": "CWE-303  Incorrect Implementation of Authentication Algorithm",
                            "lang": "en",
                            "type": "CWE"
                        }
                    ]
                }
            ],
            "providerMetadata": {
                "orgId": "63664ac6-956c-4cba-a5d0-f46076e16109",
                "shortName": "freebsd",
                "dateUpdated": "2023-08-01T22:40:58.267Z"
            },
            "references": [
                {
                    "tags": [
                        "vendor-advisory"
                    ],
                    "url": "https://security.FreeBSD.org/advisories/FreeBSD-SA-23:04.pam_krb5.asc"
                },
                {
                    "tags": [
                        "third-party-advisory"
                    ],
                    "url": "https://security.netapp.com/advisory/ntap-20230714-0005/"
                },
                {
                    "tags": [
                        "vendor-advisory"
                    ],
                    "url": "https://security.FreeBSD.org/advisories/FreeBSD-SA-23:09.pam_krb5.asc"
                }
            ],
            "source": {
                "advisory": "FreeBSD-SA-23:04.pam_krb5",
                "discovery": "UNKNOWN"
            },
            "title": "Network authentication attack via pam_krb5",
            "workarounds": [
                {
                    "lang": "en",
                    "supportingMedia": [
                        {
                            "base64": false,
                            "type": "text/html",
                            "value": "If you are not using Kerberos at all, ensure /etc/krb5.conf is missing from your system. Additionally, ensure pam_krb5 is commented out of your PAM configuration located as documented in pam.conf(5), generally /etc/pam.d. Note, the default FreeBSD PAM configuration has pam_krb5 commented out.<br><br>If you are using Kerberos, but not using pam_krb5, ensure pam_krb5 is commented out of your PAM configuration located as documented in pam.conf(5), generally /etc/pam.d. Note, the default FreeBSD PAM configuration has pam_krb5 commented out.<br><br>If you are using pam_krb5, ensure you have a keytab on your system as provided by your Kerberos administrator.<br>"
                        }
                    ],
                    "value": "If you are not using Kerberos at all, ensure /etc/krb5.conf is missing from your system. Additionally, ensure pam_krb5 is commented out of your PAM configuration located as documented in pam.conf(5), generally /etc/pam.d. Note, the default FreeBSD PAM configuration has pam_krb5 commented out.\n\nIf you are using Kerberos, but not using pam_krb5, ensure pam_krb5 is commented out of your PAM configuration located as documented in pam.conf(5), generally /etc/pam.d. Note, the default FreeBSD PAM configuration has pam_krb5 commented out.\n\nIf you are using pam_krb5, ensure you have a keytab on your system as provided by your Kerberos administrator.\n"
                }
            ],
            "x_generator": {
                "engine": "Vulnogram 0.1.0-dev"
            }
        },
        "adp": [
            {
                "providerMetadata": {
                    "orgId": "af854a3a-2127-422b-91ae-364da2661108",
                    "shortName": "CVE",
                    "dateUpdated": "2024-08-02T06:55:03.226Z"
                },
                "title": "CVE Program Container",
                "references": [
                    {
                        "tags": [
                            "vendor-advisory",
                            "x_transferred"
                        ],
                        "url": "https://security.FreeBSD.org/advisories/FreeBSD-SA-23:04.pam_krb5.asc"
                    },
                    {
                        "tags": [
                            "third-party-advisory",
                            "x_transferred"
                        ],
                        "url": "https://security.netapp.com/advisory/ntap-20230714-0005/"
                    },
                    {
                        "tags": [
                            "vendor-advisory",
                            "x_transferred"
                        ],
                        "url": "https://security.FreeBSD.org/advisories/FreeBSD-SA-23:09.pam_krb5.asc"
                    }
                ]
            }
        ]
    }
}