| 제목 | Daptin https://github.com/daptin/daptin 0.10.3 SQL Injection |
|---|
| 설명 | A SQL Injection vulnerability exists in Daptin's aggregate API endpoint (`/aggregate/:typename`). The vulnerability occurs because user-supplied input is directly passed to `goqu.L()` (Literal function) without proper sanitization or validation, allowing attackers to execute arbitrary SQL queries.
In the file `server/resource/resource_aggregate.go`, the `column`, `group`, and `order` parameters from user requests are directly interpolated into SQL queries using `goqu.L()`:
```go
// Lines 139-141 in resource_aggregate.go
if strings.Index(project, " as ") > -1 {
parts := strings.Split(project, " as ")
projectionsAdded = append(projectionsAdded, goqu.L(parts[0]).As(parts[1]))
} else {
projectionsAdded = append(projectionsAdded, goqu.L(project))
}
```
The `goqu.L()` function treats input as a raw SQL literal, bypassing all query parameterization and escaping mechanisms.
|
|---|
| 원천 | ⚠️ https://note-hxlab.wetolink.com/share/yMZ8oEgMTAur |
|---|
| 사용자 | hiro (UID 93548) |
|---|
| 제출 | 2025. 12. 19. AM 08:04 (8 개월 ago) |
|---|
| 모더레이션 | 2026. 01. 02. AM 11:08 (14 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 339384 [Daptin 0.10.3 Aggregate API resource_aggregate.go goqu.L column/group/order SQL 주입] |
|---|
| 포인트들 | 20 |
|---|