- Trên trang Notion công khai, UUID của biên tập viên bị lộ mà không cần xác thực, và chỉ với một yêu cầu POST có thể lấy được tên, email, ảnh hồ sơ
- Ở wiki công ty hoặc tài liệu được công khai, địa chỉ email của nhân viên đã chỉnh sửa trang đó có thể bị lộ nguyên vẹn; trên trang Notion Community cũng xác nhận được 12 email trong số 13 ID người dùng
- Trong thử nghiệm có nhân viên Notion, service account như
svc-notion-prod@makenotion.com, và cả nhà thầu bên ngoài; có thể truy vấn mà không cần cookie, token hay quy trình xác thực riêng
getLoginOptions cũng có thể được gọi mà không cần xác thực, nên có thể phân biệt từng tài khoản có dùng đăng nhập bằng mật khẩu hay SSO
- Vấn đề này vẫn chưa được sửa dù đã được báo cáo từ năm 2022, khiến các tổ chức dùng rộng rãi trang công khai đối mặt với rủi ro lộ PII lớn
Cách tái hiện và thông tin bị lộ
- Trong thông tin quyền của trang công khai, API của Notion trả về UUID của biên tập viên, và quá trình này không cần xác thực
- Khi nhắm vào trang Notion Community, đã xác nhận được 13 ID người dùng trong quyền của block, rồi gửi chúng tới
/api/v3/syncRecordValuesMain để lấy 12 địa chỉ email
- Đối tượng được trả về bao gồm nhân viên Notion, production service account là
svc-notion-prod@makenotion.com, và nhà thầu bên ngoài
- Tất cả đều được xác nhận chỉ từ một trang
- Có thể gửi yêu cầu mà không cần cookie, token hay quy trình xác thực riêng
Tác động và rủi ro bổ sung
- Trang Notion được dùng rộng rãi dưới nhiều dạng như wiki công ty, bảng tin tuyển dụng, tài liệu công khai, hướng dẫn onboarding
- Có thể tìm thấy hàng nghìn trang công khai bằng tìm kiếm
site: notion.site
- Với mỗi trang công khai như vậy, chỉ cần một lệnh gọi API không cần xác thực là có thể làm lộ địa chỉ email của biên tập viên
- Nếu một workspace enterprise có 500 nhân viên chia sẻ trang công khai, thì chỉ với một yêu cầu có thể lấy được 500 địa chỉ email công ty
- Không có rate limiting, và có thể xử lý theo lô 50 người một lần
getLoginOptions cũng có thể gọi mà không cần xác thực
- Kết hợp hai thứ này có thể phân biệt mỗi tài khoản đang dùng đăng nhập bằng mật khẩu hay SSO
- Sự kết hợp này có thể trở thành danh sách mục tiêu miễn phí cho credential stuffing
- Báo cáo ban đầu được gửi lên HackerOne vào ngày 28 tháng 7 năm 2022
- Sau đó gần 4 năm vẫn chưa được sửa
- Cùng một vấn đề này cũng được tìm lại và báo cáo riêng lần nữa nhưng bị xử lý là trùng lặp
- Kết quả thử lại vẫn cho thấy cùng endpoint, trạng thái không xác thực, và vẫn trả về email
- HackerOne phân loại báo cáo này là informative; theo bài gốc không có CVE, không có bug bounty
- Đây được xem là tình trạng lộ PII của khách hàng
- Các nhóm đang dùng trang Notion công khai cần kiểm tra lại cài đặt chia sẻ
3 bình luận
Từ sau khi chuyển từ Notion sang Obsidian thì cũng không còn dùng đến nữa..
Từ sau Notion AI thì đúng là... mình cũng chẳng còn biết nó là ứng dụng gì nữa rồi.
Không ngờ còn có cả chuyện thế này.
Ý kiến trên Hacker News