On Wed, 18 Dec 2024, 陈星杵 via curl-library wrote:

Sorry to bother you. I noticed that the "introduce commit" listed on the "https://curl.se/docs/CVE-2017-7407.html"is 90030a49c7facfefeca8, but when I checked the commit, there were no related code changes. I also found that commit "dfec172157" is the initial commit where the vulnerability file was introduced. So the truth introduce commit is "dfec172157"?

Thanks for checking and reporting. I think both hashes are wrong!

What could be considered the source of this (old) problem was this condition/line:

   else if('\\' == *ptr) {

At least that's the line we changed to fix the problem [1].

Tracing back through history, we can see that this line existed already back here:

  https://github.com/curl/curl/blob/curl-6_5/lib/writeout.c

That's curl 6.5 (much earlier than dfec172157), which the security advisory says was affected.

This is before libcurl existed, but there was a lib directory because there was already work going on toward a library. The file lib/writeout.c was created in commit d073ec0a719bfa (introduced in 6.5) and seems to have the vulnerable code path.

I therefore now believe d073ec0a719bfad2 [2] is the correct original commit that introduced this problem.

Do you agree?

[1] = https://github.com/curl/curl/commit/8e65877870c1
[2] = https://github.com/curl/curl/commit/d073ec0a719bfad28

--

 / daniel.haxx.se || https://rock-solid.curl.dev
-- 
Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html

Reply via email to