X-Recipient: archive-cygwin@delorie.com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:mime-version:from:date:message-id:subject:to
	:content-type:content-transfer-encoding; q=dns; s=default; b=X1T
	ilkdL6XwJX+9SxZu3XOSYpcEvBnre6MTu9lYpW1IzDc/zNz90IjMKAcIXGIPWKnD
	FmB2vzVhYOOEptfhzzuYAdMMXlRYZ3clExQ4HoLk6KkS+L2gunvO7bXvCO5dWxje
	l8CRBsPs/XKo4GC+mEAV/4CPSG5wxJTuemZUxinw=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:mime-version:from:date:message-id:subject:to
	:content-type:content-transfer-encoding; s=default; bh=uoBrFPx4Q
	UZ2lsOeNAXFvceJSrc=; b=CqxWm/9lOSIF8g0CaMUxxh57qJK7ikyZ46YqGcUhk
	e9Ha2INE8YcVkakLa3MDB5ToaVq5LjYvqofsNDf3LIWJLWYHXaefliKHwACJQHNX
	9gbOOJWLJ2qJX6ZYOf+e34q6YoT8/b1vSzrhbPLBcI3DT8IIPHgRdC6gGL3a2LhN
	OM=
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Authentication-Results: sourceware.org; auth=none
X-Spam-SWARE-Status: No, score=0.1 required=5.0 tests=AWL,BAYES_00,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=no version=3.3.1 spammy=HX-HELO:sk:mail-il, HX-Languages-Length:2705, H*c:alternative
X-HELO: mail-il1-f178.google.com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;        d=gmail.com; s=20161025;        h=mime-version:from:date:message-id:subject:to;        bh=3NyjaJ6FFZJtCRCw/01HxzhWED0Ey1rvT9w5hXO2GzA=;        b=SnbHpD8QvJKomjv9LZ4QSavu1iBkac182RlIZuxeVCMxQ40D/kj0Y53ln5fUGg4Vjp         kLYkccF4EmbgQAlJ5tZffUE4CSu1PDXOpo4I1J3XIgi7JO2cAapoP7EFP/1/nahxYfx3         IU1r2SRyRsmpwNoK+yT0ayriXr7lwzomq1/yucSEZPvU+ofvdUtvIiJNzcycOzpcRw0w         GhXLu8zf+7FMPdjz1JAs8OaG4FZGObHNu2yLfk7xCQhiWDwTrPQYZ59EOujQ3utyeE/v         +pva9YEhy/E2IdECQyUnHWQRWWvNDi5ixtjGaTXWt1WEA3XuOUxxhTszYTNwb9o7cPiJ         9yBQ==
MIME-Version: 1.0
From: houjingyi <houjingyi647@gmail.com>
Date: Tue, 5 Nov 2019 17:45:14 +0800
Message-ID: <CAN1eSkv02aZZb-09sYYwidexjZBNsPcMsEuit95P12r6vkccZw@mail.gmail.com>
Subject: report security problem
To: cygwin@cygwin.com
Content-Type: text/plain; charset="UTF-8"
X-IsSubscribed: yes
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id xA59kHFJ009031

fhandler_console::create_invisible_console_workaround in
newlib-cygwin\winsup\cygwin\fhandler_console.cc will call CreateProcessW to
create a new hidden process. According to CreateProcessW documention:

The lpApplicationName parameter can be NULL. In that case, the module name
must be the first white space–delimited token in the lpCommandLine string.
If you are using a long file name that contains a space, use quoted strings
to indicate where the file name ends and the arguments begin; otherwise,
the file name is ambiguous. For example, consider the string "c:\program
files\sub dir\program name". This string can be interpreted in a number of
ways. The system tries to interpret the possibilities in the following
order:
c:\program.exe
c:\program files\sub.exe
c:\program files\sub dir\program.exe
c:\program files\sub dir\program name.exe

Unfortunately fhandler_console::create_invisible_console_workaround did not
use quote. This problem can be triggered by many ways since
the component was used by other softwares. I can confirm it can at least be
triggered by git(https://git-scm.com/download/win). Just create program.exe
and put it to C:\problem.exe, git-bash.exe creates process mintty.exe,
mintty.exe loads msys-2.0.dll which contains the vulnerable code and
program.exe get executed(I will inform git too).

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


