นี่เป็นความพยายามทางวิศวกรรมย้อนกลับของระบบ Apple Content Caching
เป้าหมายของโปรเจ็กต์นี้คือการท้าทายตัวเองในความพยายามวิศวกรรมย้อนกลับอย่างจริงจัง ในขณะเดียวกันก็สร้างสิ่งที่ฉันต้องการสร้างด้วย นั่นก็คือ Apple Content Cache ที่ทำงานบนเซิร์ฟเวอร์ Linux
หมายเหตุ : Asset-cache-tool เป็นความต่อเนื่องของงานนี้บางส่วน
เรียนคุณแอปเปิ้ล
ฉันเป็นนักแสดงโดยสุจริต และเนื่องจากการออกแบบแคช ฉันไม่เชื่อว่าสิ่งนี้จะก่อให้เกิดอันตรายใดๆ หากคุณพิจารณาเป็นอย่างอื่น โปรดติดต่อฉันทางอีเมล: [email protected]
ขอบคุณอเล็กซ์
โปรดอย่าละเมิดเนื้อหาที่คุณเห็นที่นี่ ฉันกำลังพยายามดำเนินการนี้โดยสุจริตใจ และไม่ยอมรับการใช้งานระบบ Apple Content Cache ในทางที่ผิด ไม่ว่ามันจะเป็นอะไรก็ตาม
การแคชเนื้อหามีอยู่ในส่วนการแชร์ของการตั้งค่าระบบ ใช้เพื่อแคชเนื้อหาบนเครือข่ายท้องถิ่นของคุณสำหรับเนื้อหาสาธารณะของ Apple หรือเนื้อหา iCloud /usr/libexec/AssetCache/AssetCache
รับผิดชอบงานส่วนใหญ่ มีเซิร์ฟเวอร์ HTTP ที่มี API ที่อนุญาตให้ดึงและอัพโหลดเนื้อหาจากเซิร์ฟเวอร์
นอกจากนี้ การจับแพ็กเก็ตยังจัดให้มีไว้ในไดเร็กทอรี captures
งานที่นี่เสร็จสิ้นโดยใช้ Charles Proxy และ Frida
ไฟล์ tools/frida-ssl-pin.js
เป็นสคริปต์ Frida ที่สามารถแนบกับกระบวนการ macOS ใดๆ และปิดใช้การตรวจสอบ SSL และการปักหมุดใบรับรอง SSL ทั้งหมด สิ่งนี้ทำให้ฉันสามารถตรวจสอบคำขอที่ส่งไปยังเซิร์ฟเวอร์ของ Apple ได้อย่างละเอียด สคริปต์นี้น่าจะมีประโยชน์กับกรณีการใช้งานอื่นๆ มากมาย หากมีใครใช้มันอีก ฉันอยากจะได้ยินว่ามันใช้งานอย่างไร (ฉันเป็นคนเนิร์ดตัวยงและค่อนข้างสนใจวิศวกรรมย้อนกลับ) โปรดทราบว่าจะต้องปิดการใช้งาน SIP เพื่อให้ใช้งานได้อย่างถูกต้อง
ฉันยังมีสคริปต์ Frida Python ที่ได้รับการแก้ไขซึ่งมีเป้าหมาย launchd
เพื่อฉีดสคริปต์การปักหมุด SSL และสคริปต์ปิดการใช้งานการตรวจสอบ เนื่องจาก AssetCache
เกิดโดย launchd คุณจึงสามารถแนบ Frida ไปที่ launchd และรอการเกิด AssetCache
ผ่านบริการได้ สคริปต์ตั้งอยู่ที่: tools/frida-ssl-pin-target.py
เพียงทำ pip3 install frida frida-tools
แล้วเรียกใช้สคริปต์