โดย George Curta ·
URL ของ API แบ็กเอนด์ถูกปฏิเสธ (allowlist ของ SSRF)
แอปปฏิเสธการบันทึก URL ของ API แบ็กเอนด์ หรือคำขอล้มเหลวด้วยข้อผิดพลาด URL ไม่ได้รับอนุญาต
เหตุใดจึงเกิดขึ้น
ทั้งสองแอปจะตรวจสอบ URL ของ API แบ็กเอนด์ที่ตั้งค่าไว้กับ allowlist โฮสต์ที่ตรวจสอบขณะทำงาน (UrlGuard) ก่อนส่งคำขอใด ๆ การป้องกัน SSRF นี้มีขึ้นเพื่อไม่ให้ URL ที่เป็นอันตรายหรือตั้งค่าผิดพลาดสามารถทำให้ Bearer token ของแอปไปถึงโฮสต์ที่ผู้โจมตีควบคุมได้ อนุญาตเฉพาะ anonym.legal และ anonymize.business (โฮสต์ DEV) เท่านั้น — โฮสต์อื่นทั้งหมดจะถูกปฏิเสธโดยการออกแบบ
วิธีแก้ไข
- 1.ใช้ https://anonym.legal (production) หรือ https://anonymize.business (DEV) เป็น URL ของ API แบ็กเอนด์ให้ตรงเป๊ะ
- 2.ลบพาธต่อท้าย พอร์ต หรือการพิมพ์ผิดใด ๆ ออกจาก URL — allowlist จะจับคู่ชื่อโฮสต์แบบตรงเป๊ะเท่านั้น
- 3.หากคุณคิดว่าโฮสต์ที่ถูกต้องถูกปฏิเสธ โปรดติดต่อฝ่ายสนับสนุน — allowlist ถูกออกแบบมาให้ผู้ใช้แก้ไขเองไม่ได้โดยตั้งใจ
การแจ้งเตือน "มีเวอร์ชันใหม่พร้อมใช้งาน"
การตั้งค่าผู้ดูแลระบบของแอปแสดงการแจ้งเตือนว่ามีเวอร์ชันใหม่
เหตุใดจึงเกิดขึ้น
ทั้งสองแอปจะตรวจสอบเวอร์ชันใหม่เป็นระยะ และแสดงการแจ้งเตือนแบบธรรมดาแก่ผู้ดูแลระบบพร้อมลิงก์ไปยังบันทึกการเปลี่ยนแปลงเมื่อมีเวอร์ชันใหม่ นี่เป็นเพียงการแจ้งเตือนให้อัปเกรดด้วยตนเอง ไม่ใช่การอัปเดตอัตโนมัติ — จะไม่มีการติดตั้งใด ๆ เกิดขึ้นเองบนระบบ Nextcloud ของคุณ
วิธีแก้ไข
- 1.ตามลิงก์บันทึกการเปลี่ยนแปลงในการแจ้งเตือนเพื่อดูสิ่งที่เปลี่ยนไป
- 2.ดาวน์โหลดไฟล์อาร์ไคฟ์ของแอปเวอร์ชันใหม่จากหน้า GitHub releases
- 3.แตกไฟล์ลงใน apps/ แล้วรัน occ upgrade — ขั้นตอนติดตั้งด้วยตนเองแบบเดียวกับการติดตั้งครั้งแรก — ตามตารางเวลาที่คุณกำหนดเอง
ข้อผิดพลาด 403: "ต้องใช้แพ็กเกจ Basic ขึ้นไป"
การเรียกใช้ API จากแอปล้มเหลวด้วยสถานะ 403 พร้อมข้อความแจ้งว่าต้องใช้แพ็กเกจ Basic ขึ้นไป
เหตุใดจึงเกิดขึ้น
แอป Nextcloud ทั้งสองต้องมีบัญชี anonym.legal แพ็กเกจ Basic ขึ้นไป แพ็กเกจฟรีไม่รวมสิทธิ์การเข้าถึง API ที่แอปเหล่านี้ต้องใช้ ดังนั้นแบ็กเอนด์จะส่งคืน 403 พร้อมข้อความ "การเชื่อมต่อ Nextcloud ต้องใช้แพ็กเกจ Basic ขึ้นไป กรุณาอัปเกรดแพ็กเกจของคุณ" แทนที่จะล้มเหลวแบบเงียบ ๆ
วิธีแก้ไข
- 1.ตรวจสอบว่าโทเค็นที่ตั้งค่าไว้เป็นของบัญชี anonym.legal ใด
- 2.อัปเกรดบัญชีนั้นเป็นแพ็กเกจ Basic ขึ้นไป
- 3.ลองส่งคำขออีกครั้ง — ไม่ต้องติดตั้งใหม่หรือตั้งค่าใหม่หลังจากอัปเกรดบัญชีแล้ว
โทเค็นการเชื่อมต่ออ่านคีย์เข้ารหัสไม่ได้ — เป็นบั๊กหรือไม่
คำขอที่พยายามดึงข้อมูลคีย์ที่ถอดรหัสแล้วด้วยโทเค็นที่ตั้งค่าไว้จะถูกปฏิเสธ
เหตุใดจึงเกิดขึ้น
ไม่ใช่บั๊ก — เป็นไปตามที่ตั้งใจไว้ โทเค็นที่แอปเหล่านี้ใช้เป็นโทเค็นแบบจำกัดขอบเขตสำหรับการเชื่อมต่อ ซึ่งถูกจำกัดสิทธิ์ไว้มากกว่าโทเค็น API บัญชีเต็มรูปแบบโดยตั้งใจ คือสามารถวิเคราะห์และปิดบังเนื้อหาได้ แต่ทุกเอนด์พอยต์ที่จะส่งคืนข้อมูลคีย์ที่ถอดรหัสแล้วจะตอบกลับ 403 ให้กับโทเค็นแบบจำกัดขอบเขต ดังนั้นแม้เซิร์ฟเวอร์ Nextcloud จะถูกบุกรุก ก็ไม่สามารถนำไปถอดรหัสประวัติการเข้ารหัสแบบย้อนกลับได้ของคุณได้เลย
สิ่งที่ควรทำ
- 1.นี่คือพฤติกรรมที่คาดไว้อยู่แล้ว ไม่ใช่ข้อผิดพลาดที่ต้องแก้ไข — แอปเหล่านี้ไม่จำเป็นต้องใช้ข้อมูลคีย์ที่ถอดรหัสแล้วสำหรับขั้นตอนวิเคราะห์/ปิดบัง/เลิกปิดบังเลย
- 2.หากขั้นตอนการทำงานใดจำเป็นต้องใช้สิทธิ์บัญชีเต็มรูปแบบจริง ๆ ให้ใช้โทเค็น API แบบเต็มขอบเขตนอกเหนือจากแอปเหล่านี้ ในบริบทที่คุณควบคุมได้เอง
ยังต้องการความช่วยเหลืออยู่หรือไม่
หากวิธีแก้ไขข้างต้นทั้งหมดไม่ได้ผล โปรดติดต่อเรา แล้วเราจะช่วยคุณแก้ไขปัญหา