[Bug 46903] New: SIMATIC WinCC V15.1 Runtime installer: AdHocSigner.exe tool crashes on unimplemented functions mssign32.dll.SignerSignEx and SignerFreeSignerContext

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Mar 25 05:11:04 CDT 2019


https://bugs.winehq.org/show_bug.cgi?id=46903

            Bug ID: 46903
           Summary: SIMATIC WinCC V15.1 Runtime installer: AdHocSigner.exe
                    tool crashes on unimplemented functions
                    mssign32.dll.SignerSignEx and SignerFreeSignerContext
           Product: Wine
           Version: 4.4
          Hardware: x86-64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: mssign32
          Assignee: wine-bugs at winehq.org
          Reporter: focht at gmx.net
      Distribution: ---

Hello folks,

as it says. Continuation of bug 46899

The tool is temporarily unpacked and run during installation.

--- snip ---
Unhandled exception: unimplemented function mssign32.dll.SignerSignEx called in
32-bit code (0x7b44c142).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:7b44c142 ESP:0032f9d4 EBP:0032fa38 EFLAGS:00000216(   - --  I   -A-P- )
 EAX:7b43a4ad EBX:00401dcf ECX:00000000 EDX:00000000
 ESI:00000000 EDI:00405028
...
Backtrace:
=>0 0x7b44c142 RaiseException+0x7f()
[/home/focht/projects/wine/mainline-src/dlls/kernel32/except.c:85] in kernel32
(0x0032fa38)
  1 0x7cabaffa __wine_spec_unimplemented_stub+0x23()
[/home/focht/projects/wine/mainline-src/dlls/winecrt0/stub.c:34] in mssign32
(0x0032fa74)
  2 0x7cababcd __wine_stub_SignerSignEx+0x28() in mssign32 (0x0032fb10)
  3 0x00401e6a EntryPoint+0x564() in adhocsigner (0x0032fb10)
  4 0x004017d7 EntryPoint+0xffffffff() in adhocsigner (0x0032fbc4)
  5 0x00401aba EntryPoint+0x1b4() in adhocsigner (0x0032fe38)
0x7b44c142 RaiseException+0x7f
[/home/focht/projects/wine/mainline-src/dlls/kernel32/except.c:85] in kernel32:
addl    $12,%esp
85        RtlRaiseException( &record );
Modules:
Module    Address            Debug info    Name (77 modules)
PE      400000-  408000    Export          adhocsigner
PE    772b0000-7731c000    Deferred        riched20
ELF    7b400000-7b806000    Dwarf           kernel32<elf>
  \-PE    7b420000-7b806000    \               kernel32
ELF    7bc00000-7bd1e000    Deferred        ntdll<elf>
  \-PE    7bc30000-7bd1e000    \               ntdll
ELF    7c000000-7c004000    Deferred        <wine-loader>
ELF    7caa9000-7cabe000    Dwarf           mssign32<elf>
  \-PE    7cab0000-7cabe000    \               mssign32
ELF    7cabe000-7cafe000    Deferred        rsaenh<elf>
  \-PE    7cad0000-7cafe000    \               rsaenh
...
ELF    f7da6000-f7f5e000    Dwarf           libwine.so.1
ELF    f7f60000-f7f89000    Deferred        ld-linux.so.2
ELF    f7f8c000-f7f8d000    Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 Start.exe
    00000009    0
...
0000001f s7oiehsx64.exe
    0000004a    0
...
    00000020    0
00000028 S7EpaSRV64x.exe
    00000034    0
    00000029    0
00000030 TraceConceptX.exe
    0000003b    0
...
    00000031    0
...
0000006f SIA2.exe
    000000c8    0
...
    00000070    0
00000146 Setup.exe
    00000147    0
...
0000017e (D)
C:\users\focht\Temp\{CCC03FDD-3A54-11D6-92A8-00A0245B3AC6}\AdHocSigner.exe
    0000017f    0 <==
--- snip ---

Application log:

--- snip ---
10:39:07|           |StartAppl                       | 
========================
10:39:07|           |StartAppl                       |  BEGIN 
StartApplAfter...
10:39:07|           |StartAppl                       | 
========================
10:39:07|           |StartAppl                       |    ADS_TEMPDIR:
C:\users\focht\Temp\{CCC03FDD-3A54-11D6-92A8-00A0245B3AC6}\
10:39:07|           |StartAppl                       |    Property  TIMEOUT= 
out of range (1 - 60)
10:39:07|           |StartAppl                       |    Appl1=
[ADS_TEMPDIR]AdHocSigner.exe
10:39:07|           |StartAppl                       |    Condition1
'(VersionNT > 600)' is true
10:39:07|           |StartAppl                       |    NoWait1 = 
10:39:07|           |StartAppl                       |      Application path:
C:\users\focht\Temp\{CCC03FDD-3A54-11D6-92A8-00A0245B3AC6}\AdHocSigner.exe
10:39:07|           |StartAppl                       |    WDir1=
[COMMONDIR]PTTouchinput
10:39:07|           |StartAppl                       |      Change WorkingDir
to: C:\Program Files (x86)\Common Files\Siemens\PTTouchinput
10:39:07|           |StartAppl                       |      Application found:
C:\users\focht\Temp\{CCC03FDD-3A54-11D6-92A8-00A0245B3AC6}\AdHocSigner.exe
10:39:07|           |StartAppl                       |    Param1= "C:\Program
Files (x86)\Common Files\Siemens\PTTouchinput\TouchInputPC.exe"
10:39:07|           |StartAppl                       |    Start Application
silent:
C:\users\focht\Temp\{CCC03FDD-3A54-11D6-92A8-00A0245B3AC6}\AdHocSigner.exe 
with parameter: "C:\Program Files (x86)\Common
Files\Siemens\PTTouchinput\TouchInputPC.exe"
10:39:07|           |::LaunchAppGetExitCode          |  LaunchAppGetExitCode
Start
10:39:07|           |::LaunchAppGetExitCode          |    Command:        
C:\users\focht\Temp\{CCC03FDD-3A54-11D6-92A8-00A0245B3AC6}\AdHocSigner.exe
10:39:07|           |::LaunchAppGetExitCode          |    Parameters:     
"C:\Program Files (x86)\Common Files\Siemens\PTTouchinput\TouchInputPC.exe"
10:39:07|           |::LaunchAppGetExitCode          |    StartDir:       
C:\Program Files (x86)\Common Files\Siemens\PTTouchinput
10:39:07|           |::LaunchAppGetExitCode          |    Silent:          1
10:39:07|           |::LaunchAppGetExitCodeC         |  call CreateProcess 
10:39:07|           |::LaunchAppGetExitCodeC         |   
TimeOutWaitingForAppl= 10 minutes
10:39:21|           |::LaunchAppGetExitCodeC         |    WaitForSingleObject  
ReturnValue= 0
10:39:21|           |::LaunchAppGetExitCode          |  END
LaunchAppGetExitCode   ReturnValue= -2147483392
10:39:21|           |StartAppl                       |      Elapsed time= 14,1
seconds
10:39:21|           |StartAppl                       |    Successfully started:
C:\users\focht\Temp\{CCC03FDD-3A54-11D6-92A8-00A0245B3AC6}\AdHocSigner.exe
"C:\Program Files (x86)\Common Files\Siemens\PTTouchinput\TouchInputPC.exe" 
ReturnValue=-2147483392
10:39:21|           |                                | 
10:39:21|           |StartAppl                       |    Appl2= 
10:39:21|           |StartAppl                       |  END  StartApplAfter  
ReturnValue=0
--- snip ---

'Mssign32.dll' seems to be dynamically loaded at runtime.

Two functions are referenced:

* SignerSignEx ->
https://docs.microsoft.com/en-us/windows/desktop/seccrypto/signersignex
* SignerFreeSignerContext ->
https://docs.microsoft.com/en-us/windows/desktop/seccrypto/signerfreesignercontext

Wine source:

https://source.winehq.org/git/wine.git/blob/HEAD:/dlls/mssign32/mssign32.spec

--- snip ---
  25 @ stub SignerFreeSignerContext
  26 @ stub SignerSign
  27 @ stub SignerSignEx
--- snip ---

$ sha1sum SIMATIC_WinCC_Runtime_Advanced_V15_1.exe
db1f97bb648b62fa1c5d974d7f2bcb6b4a9fd786 
SIMATIC_WinCC_Runtime_Advanced_V15_1.exe

$ du -sh SIMATIC_WinCC_Runtime_Advanced_V15_1.exe
1.3G    SIMATIC_WinCC_Runtime_Advanced_V15_1.exe

$ wine --version
wine-4.4-188-gc988910cae

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list