Security: enforce ownership and auth on user profile and saved policy routes
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 38/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- python
- Lĩnh vực
- api, authentication, authorization, backend, security
Hướng nghiên cứu
Đọc policyengine_api/routes/user_profile_routes.py, policyengine_api/endpoints/policy.py và các route mount trong policyengine_api/api.py. Xác định cơ chế xác thực hiện có và cách principal đã được xác thực được cung cấp trước khi thêm các bài kiểm tra phân quyền cho quyền truy cập giữa những người dùng. Hoàn thành nghĩa là các route user-profile và saved-policy yêu cầu xác thực và từ chối các giá trị auth0_id hoặc user_id của người dùng khác do bên gọi cung cấp.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Summary
policyengine-api exposes unauthenticated user-profile and user-policy routes with caller-controlled identifiers.
Severity
High
Impact
Any client can create, read, or mutate another user’s profile and saved policies by supplying arbitrary auth0_id or user_id values.
Affected code
policyengine_api/routes/user_profile_routes.py:12-135policyengine_api/endpoints/policy.py:81-359policyengine_api/api.py:100-101,148-154
Details
The affected routes have no auth or ownership checks and are mounted with app-wide CORS enabled.
Expected behavior
User-scoped routes should require authenticated callers and enforce ownership based on the authenticated principal, not caller-supplied IDs.
Suggested remediation
- Add auth middleware/decorators to user-scoped routes
- Derive subject/ownership from the validated token
- Reject caller-supplied foreign
auth0_id/user_idcombinations - Add authorization tests for cross-user access attempts
- Ngôn ngữ chính
- Python
- Star
- 18
- Fork
- 33
- Merge trung bình
- 1 ngày 15 giờ
- Pull request đã merge (30 ngày)
- 18
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của PolicyEngine/policyengine-api
-
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 88/100
PolicyEngine/policyengine-api#3911 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 82/100
PolicyEngine/policyengine-api#3910 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Enable ruff security, logging and debugging rules (S, T20, LOG, G, DTZ, ERA, TD, FIX, EXE)Có thể đã có người làm @anth-volk đã nhận hôm nay. Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 18/100
PolicyEngine/policyengine-api#3914 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 38/100
PolicyEngine/policyengine-api#3912 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
validate_country prints "Validating country" on every requestCó thể đã có người làm @anth-volk đã nhận hôm nay. Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 25/100
PolicyEngine/policyengine-api#3909 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của PolicyEngine/policyengine-api
Issue tương tự
-
[Bug]: LangGraph Store sync put bypasses namespace validationCó thể đã có người làm @ktz03 đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
volcengine/OpenViking#6050 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[Bug]: Streamed /v1/chat/completions sends unredacted agent error text (keys) in the final chunkCó thể đã có người làm @rodricksz4h5 đã nhận hôm nay. Đang mởarea/streaming comp/gateway P2 type/security
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
NousResearch/hermes-agent#138245 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[oblt-aw][autodoc] Update user onboarding guide for mandatory trigger CODEOWNERS stepCó thể đã có người làm @github-actions đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
Maintainer thường phản hồi trong vòng 1 ngày
-
correction metadata
Độ khó 2/5 Dưới một giờ Mức phù hợp với người mới 68/100
acl-org/acl-anthology#10378 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
cloudtrail_multi_region_enabled_logging_management_events fails when the advanced event selector has a custom nameCó thể đã có người làm @12YYCCYY16 đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
prowler-cloud/prowler#13033 ·
Maintainer thường phản hồi trong vòng 1 ngày