ฉันจะลบรากของระบบจำนวนมากจาก Apple System Keychain ได้อย่างไร


14

แอปพลิเคชันพวงกุญแจ Apple จะไม่ยอมให้คุณลบรากของระบบ แต่จะอนุญาตให้คุณปิดการใช้งานได้เท่านั้น มันจะช่วยให้คุณปิดการใช้งานพวกเขาทีละคน สำหรับแต่ละอันคุณจะต้องผ่านแผง 3 UI และพิมพ์รหัสผ่านของคุณ มีวิธีใดที่จะทำสิ่งนี้โดยอัตโนมัติหรือทำทั้งหมดในครั้งเดียว? ฉันไม่ชอบการเลือกระบบรากของ Apple ในปัจจุบัน


ฉันไม่สามารถให้คำตอบ / วิธีแก้ปัญหาแก่คุณได้ แต่ฉันขอแนะนำให้คุณลองคิดอีกครั้ง คุณหวังว่าจะทำอะไรให้สำเร็จ / เป้าหมายของคุณคืออะไร? อะไรคือข้อดีของการทำเช่นนี้? อะไรคือข้อเสียของการทำเช่นนี้? หากเป็นเพียงเรื่องของการต้องการทำความสะอาด Keychain ฉันจะลืมมัน การเปลี่ยนแปลงอะไรก็ตามที่เกี่ยวข้องกับ "ระบบ" อาจนำไปสู่ปัญหาและโดยทั่วไปไม่แนะนำ มันเป็นหนึ่งใน "ถ้ามันยังไม่พังอย่าแก้ไข" สถานการณ์
modelamac

5
เป้าหมายของฉันคือการลบรากที่เชื่อถือได้ออกจากองค์กรที่ฉันไม่ไว้วางใจ ฉันไม่ไว้วางใจรัฐบาลจีน ฉันไม่ไว้วางใจเพลงที่ถูกบุกรุกจากเนเธอร์แลนด์ ฉันไม่เชื่อถือ certs จากองค์กรอื่น ๆ ฉันไม่ต้องการพวกเขา เหตุใดฉันจึงควรเชื่อถือองค์กรเหล่านี้ทั้งหมด ฉันไม่.
vy32

3
ฉันกำลังค้นหา / พัฒนารายการ certs ที่ไม่ไว้ใจและแฮชของพวกเขาซึ่งจะเป็นประโยชน์สำหรับการไม่ไว้ใจ ดูเหมือนว่าฉันเป็นความคิดที่ดีที่จะไม่ไว้ใจคนที่ไม่ได้เห็นนอกกรอบที่เชี่ยวชาญเป็นประจำ บางที netcraft มีรายการ CA ที่ใช้กันอย่างแพร่หลายที่พัฒนาผ่านการสำรวจของพวกเขาเพื่อตรวจสอบที่ใช้กันอย่างแพร่หลาย ฉันเดิมพันที่มีประมาณหนึ่งโหล CAs ฉันมี 500 อันดับแรกของเว็บไซต์และทุกเว็บไซต์ที่ฉันเข้าชมเป็นประจำ vy32 ฉันอยากรู้ว่าคุณมีรายการคอนเสิร์ตที่คุณตัดสินใจไม่ไว้ใจหรือไม่และทำไมคุณเลือกพวกเขา คุณแบ่งปันได้ไหม นอกจากนี้
MrE

คุณจะทราบได้อย่างไรว่าใบรับรองใดเป็นของแอปพลิเคชันใด
Ruskes

ใบรับรองไม่ได้เป็นของแอปพลิเคชัน พวกเขาเป็นของระบบ
vy32

คำตอบ:


13

สำรองพวงกุญแจก่อนที่จะลองทำอะไร

รายการใบรับรองหลัก:

sudo security dump-keychain /System/Library/Keychains/SystemRootCertificates.keychain

เพียงมองหาชื่อหรือค่าแฮชของใบรับรองที่คุณต้องการกำจัดและจดไว้

ตอนนี้คุณสามารถลบใบรับรองรูทนั้นโดยใช้security delete-certificateคำสั่ง

การใช้งาน: ลบใบรับรอง [-c ชื่อ] [-Z แฮช] [-t] [พวงกุญแจ ... ]

-c  Specify certificate to delete by its common name
-Z  Specify certificate to delete by its SHA-1 hash value
-t  Also delete user trust settings for this certificate The certificate to be deleted must be uniquely specified either by a

สตริงที่พบในชื่อสามัญหรือโดยแฮช SHA-1 หากไม่ได้ระบุพวงกุญแจสำหรับค้นหารายการค้นหาเริ่มต้นจะถูกใช้

ตัวอย่างเช่นคุณสามารถลบใบรับรองรูทภาษาจีนโดยใช้คำสั่งนี้:

sudo security delete-certificate -Z 8BAF4C9B1DF02A92F7DA128EB91BACF498604B6F /System/Library/Keychains/SystemRootCertificates.keychain

3
เมื่อรายการใบรับรองหลักถูกทิ้งภายใต้แอตทริบิวต์ใดฉันจะค้นหาค่าแฮช SHA-1 ได้หรือไม่
BrightIntelDusk

1
@BrightIntelDusk คุณสามารถใช้คำสั่งต่อไปนี้:sudo security find-certificate -a -c startcom -Z /System/Library/Keychains/SystemRootCertificates.keychain
lifeofguenter

1

ขอขอบคุณ! ทำงานให้ฉันด้วยตัวเลือก -c ค้นหาชื่อของใบรับรองหลักใน Keychain.app จากนั้นsudo security delete -c "CERTNAME" /System/Library/Keychains/SystemRootCertificates.keychain ถ้าคุณเปิด Keychain.app ไว้โดยที่ใบรับรองนั้นอยู่ในมุมมองคุณจะสังเกตเห็นว่ามันลบทันทีเมื่อดำเนินการคำสั่งในเทอร์มินัล


0

ความไม่ไว้วางใจของรูทที่มีใบรับรองการลบโดยแฮชใช้งานไม่ได้: sudo security delete- certificate -Z 8250BED5A214433A66377CBC10EF83F669DA3A67 / System/Library/Keychains/SystemRootCertificates.keychainมักจะล้มเหลวด้วย:“ ความปลอดภัย: SecKeychainItemDelete: UNIX [ไม่อนุญาตการดำเนินการ]” แม้ว่าใบรับรองที่อ้างอิงนี้จะมีอยู่ก็ตาม

นี่เป็นวิธีแก้ปัญหาจากการพูดคุยที่ DEFCON24

บันทึกใบรับรองรูทเป็นไฟล์ cer แทนและใช้: security add-trusted-cert -d -r deny -k "/Library/Keychains/System.keychain" certname.cer


0
  1. แอป Open Keychain Access (/ Applications / Utilities / Keychain Access.app)
  2. เลือก System Roots ในพวงกุญแจ
  3. เลือกใบรับรองในหมวดหมู่
  4. ค้นหาชื่อใบรับรองที่หมดอายุ
  5. คลิกขวาที่ใบรับรองแล้วเลือก "ลบ"
  6. ป้อนรหัสผ่านผู้ดูแลระบบ

สิ่งนี้ไม่ทำงานอีกต่อไปตั้งแต่ el capitan เนื่องจากการป้องกันความสมบูรณ์ของระบบ อย่างไรก็ตามคุณสามารถเลือกที่จะไม่เชื่อถือ
Antzi
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.