| 제목 | grass 0.13.4 Denial of Service |
|---|
| 설명 | grass is a pure-Rust Sass-to-CSS compiler. When the parser encounters a syntax error, it constructs a diagnostic via `grass_compiler::raw_to_parse_error`, which hands the byte-offset error span to the `codemap` crate for line/column resolution. If the error span boundary falls inside a multi-byte UTF-8 character, `codemap::File::find_line_col` attempts `&source[start..end]` on a non-char-boundary index and Rust panics with `"byte index N is not a char boundary; it is inside ..."`. The panic propagates up through the public `grass::from_string` API and aborts the process.
This violates the documented contract that `grass::from_string` returns `Result<String, Box<grass::Error>>` for all inputs, but a malformed SCSS source should yield `Err`, not crash the process. |
|---|
| 원천 | ⚠️ https://github.com/connorskees/grass/issues/116 |
|---|
| 사용자 | Zyz3366 (UID 97230) |
|---|
| 제출 | 2026. 06. 03. AM 04:40 (1 월 ago) |
|---|
| 모더레이션 | 2026. 07. 03. PM 08:40 (1 month later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 376163 [connorskees grass 까지 0.13.4 UTF-8 Character raw_to_parse_error 서비스 거부] |
|---|
| 포인트들 | 20 |
|---|