การควบคุมการเข้าถึงที่ใช้งานไม่ได้ + การกำหนดค่าผิดพลาด = การเพิ่มสิทธิ์ที่สวยงาม
สวัสดีเขา/เธอ
เรื่องนี้จะเกี่ยวกับช่องโหว่ของ Privilege escalation ที่ฉันพบเมื่อไม่นานมานี้
- มี 2 บทบาทในผู้สร้างไซต์นี้/เจ้าของบัญชี
- ผู้ใช้ที่เป็นเจ้าของบัญชีคือการจัดการและสามารถเข้าถึงผู้ใช้บัญชีทั้งหมดและฟังก์ชันอื่นๆ ได้
- บทบาทผู้สร้างสามารถสร้างบางสิ่งในองค์กรได้เท่านั้น แต่ไม่สามารถเข้าถึงสิ่งใดๆ เช่น ข้อมูลผู้ใช้, UUID's และข้อมูล/PII อื่นๆ ขององค์กร
- ฉันลองปลายทางส่วนใหญ่เพื่อค้นหาการควบคุมการเข้าถึงที่เสีย แต่ส่วนใหญ่ 403 ถูกห้าม มีเพียงหนึ่งปลายทางเท่านั้นที่อนุญาตให้ฉันอ่านข้อมูลผู้ใช้/PII
GET /v1/account/customer/users?includeDetails=true HTTP/1.1 Host: dontlookhere Cookie: FewRoleUserCookies User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:106.0) Gecko/20100101 Firefox/106.0 ยอมรับ: แอปพลิเคชัน/json, ข้อความ/ธรรมดา, */* ยอมรับภาษา: en-US,en;q=0.5 ยอมรับการเข้ารหัส: gzip, deflate ผู้อ้างอิง: https:// dontlookhere Dnt: 1 วินาที-Fetch-Dest: ว่างเปล่า Sec- Fetch-Mode: cors Sec-Fetch-Site: แหล่งกำเนิดเดียวกัน Te: รถพ่วง การเชื่อมต่อ: ปิด
- การควบคุมการเข้าถึงที่เสียหายข้างต้นที่ฉันพบจุดสิ้นสุดทำให้ฉันสามารถเข้าถึงข้อมูลผู้ใช้ขององค์กร เช่น อีเมล หมายเลขโทรศัพท์ UUID ที่อยู่ และอื่นๆ
- นอกจากนี้ ฟังก์ชันส่วนใหญ่กลับถูกห้าม 403 การเพิ่มผู้ใช้ ลบผู้ใช้ และฟังก์ชันการเขียนอื่นๆ ส่งคืน 403
- ดำเนินการเพียงหนึ่งฟังก์ชันและส่งคืน 200 ในบัญชีบทบาทของผู้ใช้ไม่กี่คน
- ดังนั้นฉันจึงลองคำขอนี้
- ในคำขอข้างต้น ฉันพบว่าฉันสามารถเปลี่ยนสถานะผู้ใช้เป็นปิดใช้งานโดยไม่ต้องใช้ 403 และผู้ใช้เปลี่ยนเป็นสถานะปิดใช้งานและสามารถเปิดใช้งานใหม่ได้
- แต่ประการที่สองที่นี่ ฉันสามารถอัปเกรดบทบาทของฉันจากผู้สร้างเป็นผู้จัดการบัญชีโดยใช้ฟังก์ชันเปลี่ยนบทบาท
[1]
บทบาท [2] เป็นผู้สร้างและบทบาท [1] เป็นผู้จัดการบัญชี
ดังนั้นฉันจึงแทนที่คุกกี้เป็นคุกกี้บัญชีบทบาทของผู้สร้าง และเปลี่ยน UUID เป็นบัญชีบทบาทของผู้สร้างเดียวกัน UUID ฉันได้รับจากการควบคุมการเข้าถึงที่เสียหายด้านบน และฉันยัง สามารถแก้ไขบทบาทของผู้ใช้รายอื่นได้เนื่องจากฉันสามารถดึง UUID ที่นั่นได้
- คำขอดำเนินการโดยผู้ใช้จำนวนน้อย และอะไร
- และนั่นเป็นเรื่องดีที่บทบาทบัญชีเปลี่ยนเป็นผู้จัดการบัญชี และตอนนี้ฉันเป็นผู้ดูแลระบบขององค์กรแล้ว :)
- ดังนั้นฟังก์ชันที่ฉันสามารถเลื่อนระดับได้คือ:
เข้าถึง PII/ข้อมูลของผู้ใช้
เปลี่ยนบทบาทของฉัน/ และบทบาทของผู้ใช้ และรับบทบาทเจ้าของบัญชี
ขอบคุณที่อ่าน หวังว่าคุณจะมีวันดีๆ จนกว่าเราจะได้พบกันใหม่
โซเชียล:
Linkedin.com/in/m359ah
ทวิตเตอร์.com/m359ah