|
1 | 1 | ---
|
2 | 2 | layout: news_post
|
3 |
| -title: "CVE-2021-41817: Regular Expression Denial of Service Vulnerability of Date Parsing Methods" |
| 3 | +title: "CVE-2021-41817: 날짜 구문 분석 메서드의 정규표현식 서비스 거부(DoS) 취약점" |
4 | 4 | author: "mame"
|
5 |
| -translator: |
| 5 | +translator: "yous" |
6 | 6 | date: 2021-11-15 08:00:00 +0000
|
7 | 7 | tags: security
|
8 |
| -lang: en |
| 8 | +lang: ko |
9 | 9 | ---
|
10 | 10 |
|
11 |
| -We have released date gem version 3.2.1, 3.1.2, 3.0.2, and 2.0.1 that include a security fix for a regular expression denial of service vulnerability (ReDoS) on date parsing methods. An attacker can exploit this vulnerability to cause an effective DoS attack. |
12 |
| -This vulnerability has been assigned the CVE identifier [CVE-2021-41817](https://nvd.nist.gov/vuln/detail/CVE-2021-41817). |
| 11 | +date gem의 날짜 구문 분석 메서드에 정규표현식 서비스 거부(ReDoS) 취약점이 있어, 해당 취약점의 보안 수정을 포함한 3.2.1, 3.1.2, 3.0.2, 2.0.1 버전을 릴리스했습니다. 공격자는 이 취약점을 이용해 유효한 DoS 공격을 수행할 수 있습니다. |
| 12 | +이 취약점은 CVE 번호 [CVE-2021-41817](https://nvd.nist.gov/vuln/detail/CVE-2021-41817)에 할당되었습니다. |
13 | 13 |
|
14 |
| -## Details |
| 14 | +## 세부 내용 |
15 | 15 |
|
16 |
| -Date's parsing methods including `Date.parse` are using Regexps internally, some of which are vulnerable against regular expression denial of service. Applications and libraries that apply such methods to untrusted input may be affected. |
| 16 | +`Date.parse`를 포함한 Date의 구문 분석 메서드는 내부적으로 정규표현식을 사용하고, 그중 일부는 정규표현식 서비스 거부 공격에 취약합니다. 신뢰할 수 없는 입력에 해당 메서드를 적용 중인 애플리케이션 및 라이브러리는 영향을 받을 수 있습니다. |
17 | 17 |
|
18 |
| -The fix limits the input length up to 128 bytes by default instead of changing the regexps. This is because Date gem uses many Regexps and it is possible that there are still undiscovered vulnerable Regexps. For compatibility, it is allowed to remove the limitation by explicitly passing `limit` keywords as `nil` like `Date.parse(str, limit: nil)`, but note that it may take a long time to parse. |
| 18 | +이 수정은 정규표현식을 변경하는 대신 기본 입력 길이를 128 바이트로 제한합니다. 이는 Date gem이 많은 정규표현식을 사용하고 있고, 아직 발견되지 않은 취약한 정규표현식이 있을 수 있기 때문입니다. 호환성을 위해 `Date.parse(str, limit: nil)` 등으로 `limit` 키워드에 `nil`을 명시적으로 넘겨 제한을 없앨 수 있습니다. 하지만 구문 분석에 오랜 시간이 걸릴 수 있게 됩니다. |
19 | 19 |
|
20 |
| -Please update the date gem to version 3.2.1, 3.1.2, 3.0.2, and 2.0.1, or later. You can use `gem update date` to update it. If you are using bundler, please add `gem "date", ">= 3.2.1"` to your `Gemfile`. |
21 |
| -Alternatively, you can update Ruby to 3.0.3, 2.7.5, 2.6.9 or later. |
| 20 | +date gem을 3.2.1, 3.1.2, 3.0.2, 2.0.1 이상 버전으로 업데이트하시기 바랍니다. `gem update date`를 사용해 업데이트할 수 있습니다. bundler를 사용한다면, `Gemfile`에 `gem "date", ">= 3.2.1"`을 추가하세요. |
| 21 | +다른 방법으로 Ruby 3.0.3, 2.7.5, 2.6.9 이상 버전으로 업데이트할 수도 있습니다. |
22 | 22 |
|
23 |
| -## Affected versions |
| 23 | +## 해당 버전 |
24 | 24 |
|
25 |
| -* date gem 2.0.0 or prior (which are bundled versions with Ruby 2.6 series prior to Ruby 2.6.9) |
26 |
| -* date gem 3.0.1 or prior (which are bundled versions with Ruby 2.7 series prior to Ruby 2.7.5) |
27 |
| -* date gem 3.1.1 or prior (which are bundled versions with Ruby 3.0 series prior to Ruby 3.0.3) |
28 |
| -* date gem 3.2.0 or prior |
| 25 | +* date gem 2.0.0 이하 (Ruby 2.6.9 이하의 Ruby 2.6 버전대에 포함된 버전) |
| 26 | +* date gem 3.0.1 이하 (Ruby 2.7.5 이하의 Ruby 2.7 버전대에 포함된 버전) |
| 27 | +* date gem 3.1.1 이하 (Ruby 3.0.3 이하의 Ruby 3.0 버전대에 포함된 버전) |
| 28 | +* date gem 3.2.0 이하 |
29 | 29 |
|
30 |
| -## Credits |
| 30 | +## 도움을 준 사람 |
31 | 31 |
|
32 |
| -Thanks to [svalkanov](https://github.com/SValkanov/) for discovering this issue. |
| 32 | +이 문제를 발견해 준 [svalkanov](https://github.com/SValkanov/)에게 감사를 표합니다. |
33 | 33 |
|
34 |
| -## History |
| 34 | +## 수정 이력 |
35 | 35 |
|
36 |
| -* Originally published at 2021-11-15 08:00:00 (UTC) |
37 |
| -* Mention about new Ruby releases at 2021-11-24 13:20:00 (UTC) |
| 36 | +* 2021-11-15 08:00:00 (UTC) 최초 공개 |
| 37 | +* 2021-11-24 13:20:00 (UTC) 새 Ruby 릴리스 언급 |
0 commit comments