View Another User Information with IDOR Vulnerability IDOR

Lỗ hổng IDOR tồn tại ở “My Profile Page” và được khai thác bằng cách thay đổi cookie UID2=4820038 thành UID2=4820036.

Access to All █████████ Files, including CAC Authentication Bypass IDOR

Attacker tìm thấy lỗ hổng IDOR ở endpoint ███/StatusLogIn.aspx?PackageID=x dùng để xem status của package. Lỗ hổng này cho phép download bất kỳ package (mà bản chất là các file) đến email của attacker. Các file chủ yếu là tài liệu FOUO (For Official Use Only) - là các tài liệu không được phân loại nhưng chỉ được phép sử dụng trong nội bộ cũng như là các tài liệu được phân loại là FOUO//CLOSE HOLD, FOUO//SENSITIVE, và FOUO//LIMITED DISTRIBUTION DOCUMENT.

Mass Account Takeover broken-access-control

Tồn tại lỗ hổng misconfig cho phép attacker là chủ của một tổ chức có thể thay đổi email của bất kỳ thành viên nào trong tổ chức.

Info

Report này ban đầu bị HackerOne staff đánh giá là Informative nhưng về sau được Stripe staff reopen và Triaged.

403 Forbidden Bypass at www.██████.mil broken-access-control

Attacker bypass 403 forbidden để truy cập https://www.████████.mil/███████ bằng cách dùng POST request và Content-Length là 0.

Use of Unreleased Features in Programming Education Service (https://entry.line.me) broken-access-control

Attacker tìm thấy chức năng chỉ cho phép admin được quyền dùng và vẫn còn đang trong giai đoạn phát triển trước khi người dùng được quyền dùng. Lỗ hổng xảy ra do attacker có thể dùng tính năng mà không cần quyền.

The User, Who Was Deleted from GitHub Organization, Still Can Access All Functions of Federalist, in case He Didn’t Do Log out broken-access-control

Attacker tìm thấy lỗ hổng trong việc quản lý session: khi user log in vào Federalist thông qua GitHub thì application có kiểm tra Org ID. Nhưng khi user bị deleted khỏi tổ chức nhưng còn đăng nhập thì vẫn có thể thực hiện các actions dưới danh nghĩa của tổ chức.

Privilege Persistence via Cloned Agent broken-access-control

Admin sẽ quản lý các chat agent thông qua một dashboard và có thể bật tắt một agent nào đó. Khi bật lên, user/attacker có thể tạo mới một agent và chỉnh sửa SID của nó thành gemini-pro để có thể clone agent của admin:

Ngoài ra, khi admin disable agent ở dashboard thì user/attacker vẫn có thể sử dụng agent đó.

Thậm chí, user còn có thể xóa agent của admin thông qua tài khoản của họ.

Broken Access Control Exposes Email Verification Status and Privacy Settings via API Endpoint broken-access-control

Endpoint /api/v1/users/{username} bị lỗ hổng IDOR cho phép xem metadata của email (is_email_confirmed, is_email_public, etc) của user khác.

BAC – Bypass Chatbot Restrictions via Unauthorized Mention Injection broken-access-control

Admin enable agent Gemini Pro:

Khi chọn agent sẽ có POST request gửi đến /api/w/BSsJ1zPUYE/assistant/conversations/PdBk9DSYXA/messages/UyXjPLmW5j/edit

Mặc dù user không được cấp quyền để sử dụng các agent chẳng hạn như Gemini Pro, họ vẫn có thể sử dụng bằng cách thay đổi mentionconfigurationId ở trong request gửi đi.

Nhờ vậy, user được phép chat với agent tùy thích nếu nó được enabled mà không cần phải được cấp quyền.

Impact của việc này là khiến cho việc quản lý của admin trở nên vô nghĩa.

Privilege Escalation in Edit and Create Secret Endpoints Leads to Unauthorized Secret Modification broken-access-control

User với quyền Builder (quyền mà không được quản lý secrets) có thể:

  • Liệt kê tất cả các secret names trong workspace
GET /api/w/[workspace_id]/dust_app_secrets HTTP/2
Host: dust.tt
Cookie: [appSession]
 
{
  "secrets": [
	{ "name": "NAME-1", "value": "•••••••" },
	{ "name": "NAME-2", "value": "•••••••" }
  ]
}
  • Tạo các secrets mới
POST /api/w/[workspace_id]/dust_app_secrets HTTP/2
Host: dust.tt
Content-Type: application/json
Cookie: [appSession]
 
{
  "name": "NAME-1",
  "value": "malicious-value"
}
  • Ghi đè các secrets cũ bằng cách tạo các secret mới có trùng tên.

Impact là attacker có thể leo thang đặc quyền, chỉnh sửa các cấu hình tùy ý hoặc truy cập vào các dữ liệu không được phép.

Tip

Ở đây ta thấy mặc dù attacker chỉ có quyền đọc một phần (chỉ đọc được tên thay vì giá trị), hắn vẫn có thể ghi đè các secret cũ khi kết hợp với quyền tạo secret mới.

Email Verification Bypass via Request to Endpoint accounts.insightly.com/signup/provisionuser broken-access-control

Chức năng tạo tài khoản cho phép dùng email của nạn nhân đã có tài khoản từ trước và cho phép takeover tài khoản của nạn nhân thông qua param EmailAddress của request dùng để tạo tài khoản. Tức là, việc tạo tài khoản giống như việc ghi đè tài khoản và nó khiến cho mật khẩu của tài khoản gốc bị thay đổi.

Tip

Việc tạo record có field trùng với record cũ đôi khi có thể dẫn đến việc overwrite.

Banned User Still Has Access to Their Deleted account via HackerOne’s API Using Their API Key broken-access-control

Khi một user bị banned ra khỏi HackerOne, họ không thể submit reports và nếu như không có pending payouts nào thì tài khoản của họ sẽ sớm bị deleted. Ngoài ra, banned user cũng không thể truy cập vào tài khoản của họ cũng như là xem profile.

Tuy nhiên, bằng cách sử dụng các API token trước khi bị banned, user vẫn có thể thực hiện các hành động sau:

  • Get Reports
  • Get Balance
  • Get Earnings
  • Get Payouts
  • Get Weaknesses
  • Get Programs

IDOR on In-app Hardcoded Zombie Endpoints broken-access-control

Bằng cách reverse engineer ứng dụng Android, researcher tìm thấy một vài endpoints cũ không còn được sử dụng nữa mà làm lộ thông tin nhạy cảm liên quan đến tài xế.

Tip

Việc reverse engineer ứng dụng Android cũng là một cách hay để tìm các endpoints ẩn.

IDOR: Account Deletion via Session Misbinding – Attacker Can Delete Victim Account broken-access-control

Attacker có thể xóa tài khoản của victim thông qua endpoint POST /v1/account/destroy với param emailauthPW (password hash) của nạn nhân do ứng dụng không kiểm tra xem ai đang thực hiện việc xóa tài khoản.

{
  "email": "victims344@gmail.com",
  "authPW": "42b4c2940fe2efecce851a2d8e9754d0f1cb1d37e3ccaabb060fe9ac21900caff"
}

Shopify Partners Invitation Process Allows Privilege Escalation Without Email Verifications broken-access-control

Xét trường hợp attacker và victim là owner đều ở cùng trong một Shopify Partners account (một tính năng của Shopify). Victim khi mời ai đó thì attacker có thể thấy email của người này. Do quá trình tạo tài khoản không yêu cầu xác thực email, attacker có thể tạo tài khoảng bằng người được mời, đăng nhập vào và chấp nhận lời mời. Nếu người được mời được cấp quyền cao, attacker có thể leo quyền.

Bypass Email verification for monitoring at monitor.mozilla.org broken-access-control info-disclose

Attacker có thể thêm email của victim vào trang monitor.mozilla.com để monitor mà không cần verify email. Root cause là vì endpoint /api/v1/user/breaches leak toàn bộ verify token của các email đã được xác thực và của cả các email chưa được xác thực. Với token có được, attacker có thể verify sử dụng endpoint /api/v1/user/verify-email?token=<verification token>&utm_campaign=verified-subscribers&utm_content=account-verification-email&utm_source=fx-monitor&utm_medium=email.

Bypassing Access Control through OPTIONS Request + Method Smuggling