SimpleRemoter icon indicating copy to clipboard operation
SimpleRemoter copied to clipboard

CBuffer::WriteBuffer 0xc00005异常

Open joker-alt opened this issue 2 years ago • 0 comments

dmp文件 分析如下: STACK_TEXT:
0095f314 003765e3 02e30000 00d5df94 00000005 Yama!memcpy+0x509 [d:\agent_work\4\s\src\vctools\crt\vcruntime\src\string\i386\memcpy.asm @ 658] 0095f334 0037d527 00d5df94 00000005 6a9029c3 Yama!CBuffer::WriteBuffer+0x38 [E:\LeiDunWorkPath\SimpleRemoter\server\2015Remote\Buffer.cpp @ 124] 0095f3f4 0037f716 02a39a40 0095f40c 0000001d Yama!IOCPServer::OnClientPreSending+0x18c [E:\LeiDunWorkPath\SimpleRemoter\server\2015Remote\IOCPServer.cpp @ 586] 0095f430 0037f613 0095f448 002a0772 0037f58c Yama!CScreenSpyDlg::SendCommand+0x4d [E:\LeiDunWorkPath\SimpleRemoter\server\2015Remote\ScreenSpyDlg.cpp @ 452] 0095f464 00399542 00d0d2f0 0095f584 0015069e Yama!CScreenSpyDlg::PreTranslateMessage+0x87 [E:\LeiDunWorkPath\SimpleRemoter\server\2015Remote\ScreenSpyDlg.cpp @ 437] 0095f47c 0038e1c4 0015069e 00d0d2f0 00563980 Yama!CWnd::WalkPreTranslateTree+0x30 [d:\agent_work\4\s\src\vctools\VC7Libs\Ship\ATLMFC\Src\MFC\wincore.cpp @ 3379] 0095f498 0038e5dd 00d0d2f0 0095f4b8 0038e2c1 Yama!AfxInternalPreTranslateMessage+0x3a [d:\agent_work\4\s\src\vctools\VC7Libs\Ship\ATLMFC\Src\MFC\thrdcore.cpp @ 233] 0095f4a4 0038e2c1 00d0d2f0 00d0d2f0 00d0d2c0 Yama!CWinThread::PreTranslateMessage+0xb [d:\agent_work\4\s\src\vctools\VC7Libs\Ship\ATLMFC\Src\MFC\thrdcore.cpp @ 777] 0095f4b8 0038e253 00d0d2f0 00563980 0038e718 Yama!AfxPreTranslateMessage+0x25 [d:\agent_work\4\s\src\vctools\VC7Libs\Ship\ATLMFC\Src\MFC\thrdcore.cpp @ 252] 0095f4c8 0038e320 00000000 0095f584 00398e9f Yama!AfxInternalPumpMessage+0x2b [d:\agent_work\4\s\src\vctools\VC7Libs\Ship\ATLMFC\Src\MFC\thrdcore.cpp @ 178] 0095f4d4 00398e9f 00000001 0095f584 00000000 Yama!AfxPumpMessage+0x1f [d:\agent_work\4\s\src\vctools\VC7Libs\Ship\ATLMFC\Src\MFC\thrdcore.cpp @ 190] 0095f4f8 0038d019 00000004 0095f584 00000000 Yama!CWnd::RunModalLoop+0xc5 [d:\agent_work\4\s\src\vctools\VC7Libs\Ship\ATLMFC\Src\MFC\wincore.cpp @ 4661] 0095f50c 0038d157 005762e0 00000000 00370000 Yama!CWnd::CreateRunDlgIndirect+0x3d [d:\agent_work\4\s\src\vctools\VC7Libs\Ship\ATLMFC\Src\MFC\dlgcore.cpp @ 474] 0095f560 00371eb1 6a90215b 00563980 00371ddc Yama!CDialog::DoModal+0x11e [d:\agent_work\4\s\src\vctools\VC7Libs\Ship\ATLMFC\Src\MFC\dlgcore.cpp @ 633] 0095fb6c 004ed27b 00000000 00000001 0063b000 Yama!CMy2015RemoteApp::InitInstance+0xd5 [E:\LeiDunWorkPath\SimpleRemoter\server\2015Remote\2015Remote.cpp @ 131] 0095fb84 004c324b 00370000 00000000 00ca30d0 Yama!AfxWinMain+0x5f [d:\agent_work\4\s\src\vctools\VC7Libs\Ship\ATLMFC\Src\MFC\winmain.cpp @ 37] 0095fbd0 749762c4 0063b000 749762a0 13db8ad4 Yama!__scrt_common_main_seh+0xf8 [d:\agent_work\4\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 288] 0095fbe4 77901e39 0063b000 13ec6ba0 00000000 kernel32!BaseThreadInitThunk+0x24 0095fc2c 77901e04 ffffffff 779236c0 00000000 ntdll!__RtlUserThreadStart+0x2f 0095fc3c 00000000 004c32cf 0063b000 00000000 ntdll!_RtlUserThreadStart+0x1b

源代码中为这一样报错: CopyMemory(m_Ptr,Buffer,ulLength);//Hello 5

其中‘m_Ptr’ 的值为: 0:000> db 2e30000 02e30000 4d 5a 90 00 03 00 00 00-04 00 00 00 ff ff 00 00 MZ.............. 02e30010 b8 00 00 00 00 00 00 00-40 00 00 00 00 00 00 00 ........@....... 02e30020 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 02e30030 00 00 00 00 00 00 00 00-00 00 00 00 b8 00 00 00 ................ 02e30040 0e 1f ba 0e 00 b4 09 cd-21 b8 01 4c cd 21 54 68 ........!..L.!Th 02e30050 69 73 20 70 72 6f 67 72-61 6d 20 63 61 6e 6e 6f is program canno 02e30060 74 20 62 65 20 72 75 6e-20 69 6e 20 44 4f 53 20 t be run in DOS 02e30070 6d 6f 64 65 2e 0d 0d 0a-24 00 00 00 00 00 00 00 mode....$.

好像是某个模块的入口点,没想通为什么上面重新申请buffer成功返回。而下面的追加写入数据的m_Ptr会出错

触发条件: 在服务器放上主控端。远程桌面管理。控制远程鼠标 频繁控制就会触发。本地控制虚拟机不会触发此问题

joker-alt avatar Feb 02 '22 12:02 joker-alt