NVD Vulnerability Detail
Search Exploit, PoC
CVE-2017-1000254
Summary

libcurl may read outside of a heap allocated buffer when doing FTP. When libcurl connects to an FTP server and successfully logs in (anonymous or not), it asks the server for the current directory with the `PWD` command. The server then responds with a 257 response containing the path, inside double quotes. The returned path name is then kept by libcurl for subsequent uses. Due to a flaw in the string parser for this directory name, a directory name passed like this but without a closing double quote would lead to libcurl not adding a trailing NUL byte to the buffer holding the name. When libcurl would then later access the string, it could read beyond the allocated heap buffer and crash or wrongly access data beyond the buffer, thinking it was part of the path. A malicious server could abuse this fact and effectively prevent libcurl-based clients to work with it - the PWD command is always issued on new FTP connections and the mistake has a high chance of causing a segfault. The simple fact that this has issue remained undiscovered for this long could suggest that malformed PWD responses are rare in benign servers. We are not aware of any exploit of this flaw. This bug was introduced in commit [415d2e7cb7](https://github.com/curl/curl/commit/415d2e7cb7), March 2005. In libcurl version 7.56.0, the parser always zero terminates the string but also rejects it if not terminated properly with a final double quote.

Publication Date Oct. 6, 2017, 10:29 p.m.
Registration Date Jan. 26, 2021, 1:11 p.m.
Last Update Nov. 21, 2024, 12:04 p.m.
CVSS3.0 : HIGH
スコア 7.5
Vector CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
攻撃元区分(AV) ネットワーク
攻撃条件の複雑さ(AC)
攻撃に必要な特権レベル(PR) 不要
利用者の関与(UI) 不要
影響の想定範囲(S) 変更なし
機密性への影響(C) なし
完全性への影響(I) なし
可用性への影響(A)
CVSS2.0 : MEDIUM
Score 5.0
Vector AV:N/AC:L/Au:N/C:N/I:N/A:P
攻撃元区分(AV) ネットワーク
攻撃条件の複雑さ(AC)
攻撃前の認証要否(Au) 不要
機密性への影響(C) なし
完全性への影響(I) なし
可用性への影響(A)
Get all privileges. いいえ
Get user privileges いいえ
Get other privileges いいえ
User operation required いいえ
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:a:haxx:libcurl:7.9.5:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.9.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.19.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.19.6:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.8:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.9.6:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.7.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.21.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.11.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.37.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.40.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.17.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.19.4:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.30.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.25.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.12.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.21.3:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.16.4:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.7.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.12.3:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.8.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.33.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.18.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.23.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.19.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.26.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.36.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.9.4:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.10.5:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.10.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.15.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.16.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.16.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.34.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.31.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.15.5:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.35.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.22.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.20.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.7.3:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.9.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.21.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.14.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.28.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.11.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.18.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.13.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.21.5:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.15.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.19.3:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.17.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.24.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.13.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.10.8:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.27.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.9:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.15.3:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.19.7:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.12.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.10.6:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.42.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.10.3:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.41.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.23.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.21.6:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.19.5:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.9.7:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.42.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.14.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.10:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.21.7:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.21.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.38.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.10.4:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.16.3:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.9.3:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.13.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.15.4:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.20.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.11.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.16.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.32.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.29.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.7:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.10.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.37.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.18.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.10.7:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.9.8:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.28.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.12.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.39:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.15.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.21.4:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.19.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.52.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.52.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.53.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.53.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.54.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.54.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.50.3:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.51.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.43.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.44.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.45.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.46.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.47.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.47.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.48.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.49.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.49.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.50.0:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.50.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.50.2:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.55.1:*:*:*:*:*:*:*
cpe:2.3:a:haxx:libcurl:7.55.0:*:*:*:*:*:*:*
Related information, measures and tools
Common Vulnerabilities List

JVN Vulnerability Information
libcurl におけるバッファエラーの脆弱性
Title libcurl におけるバッファエラーの脆弱性
Summary

libcurl には、バッファエラーの脆弱性が存在します。

Possible impacts サービス運用妨害 (DoS) 状態にされる可能性があります。
Solution

ベンダより正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

Publication Date Oct. 4, 2017, midnight
Registration Date Nov. 8, 2017, 10:44 a.m.
Last Update Nov. 8, 2017, 10:44 a.m.
Affected System
Haxx
libcurl 
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
Change Log
No Changed Details Date of change
0 [2017年11月08日]
  掲載
Feb. 17, 2018, 10:37 a.m.