Hi,

This is in relation to bug #14339 [1] which has been opened for 12 years, and which directly affects the ability of Windows developers to produce applications that are not subject to DLL side loading vulnerabilities.
I initially reported this problem on the MinGW mailing list [2] before 
discovering that a relevant bug had already been opened for this 
specific issue.
Note that, whereas 2 workarounds are known (adding an explicit reference 
to the internal call or altering the '__declspec(dllimport)' qualifier), 
these are problematic to use in practice (per the notes from the code 
sample at [3]) as one can not simply use common 32/64-bit references 
since they have different decorations, and trying to alter/remove 
'__declspec(dllimport)' can be very tricky for headers that are 
themselves included in 'windows.h' (as is the case of 'virtdisk.h' for 
MinGW for instance).
As I commented on the bug report, the end result is that this 
longstanding bug does have a very detrimental impact on the ability to 
produce safe executables on Windows, as the expectation is that 
developers will prefer to leave MinGW applications vulnerable to side 
loading, rather than invest a lot of time and effort trying to work 
around an uncooperative ld...
So, could the priority of this 12 year-old bug be raised?

Thank you,

/Pete

[1] https://sourceware.org/bugzilla/show_bug.cgi?id=14339
[2] https://sourceforge.net/p/mingw-w64/mailman/mingw-w64-public/thread/ea87573f-65ea-44a2-b4bb-ca96c0a136ab%40akeo.ie/#msg58793876
[3] https://github.com/pbatard/delayload

Reply via email to