| 제목 | AstrBotDevs AstrBot 4.23.6 Path Traversal (CWE-22) |
|---|
| 설명 | # Technical Details
A Path Traversal exists in the `/api/skills/delete` API endpoint in AstrBot.
The application fails to sanitize the `name` parameter provided during the skill deletion process. An authenticated attacker can supply a path traversal payload in the JSON body (e.g., `{"name": "../target_directory"}`) to delete arbitrary directories on the underlying host filesystem, bypassing intended directory restrictions.
# Vulnerable Code
File: [Needs Manual Input]
Method: delete_skill (API: /api/skills/delete)
Why: The API endpoint uses the attacker-controlled `name` parameter to construct a directory path for deletion without proper normalization or boundary checks to ensure the path remains within the skills folder.
# Reproduction
1. Authenticate to the AstrBot Dashboard via `/api/auth/login` to obtain a JWT token.
2. Send a `POST` request to the `/api/skills/delete` endpoint.
3. Supply a JSON payload targeting a directory outside the intended scope using path traversal: `{"name": "../poc_target_exploit"}`.
4. Observe that the arbitrary directory on the server filesystem is successfully deleted.
# Impact
- Arbitrary directory deletion, resulting in potential data loss.
- High risk of Denial of Service (DoS) by removing critical application or system directories. |
|---|
| 원천 | ⚠️ https://gist.github.com/YLChen-007/8155cf1b9519f0a3524eea73dfeead2f |
|---|
| 사용자 | Eric-a (UID 96353) |
|---|
| 제출 | 2026. 05. 07. PM 01:32 (1 월 ago) |
|---|
| 모더레이션 | 2026. 05. 31. AM 09:14 (24 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 367492 [AstrBotDevs AstrBot 4.23.6 API Endpoint /api/skills/delete 이름 디렉토리 순회] |
|---|
| 포인트들 | 20 |
|---|