Re: svchost 好像出问题了,如何诊断呢
Windows内核调试
svchost 好像出问题了,如何诊断呢
悬崖遛马
2012-11-16, 17:15 下午
我发现都写在帖子里,提交总是出现数据库错误,把原帖放在附件里了,要不得拆成好多楼发,太麻烦, 谢谢关注
==================================================================
简单描述:
==============================================
问题描述:
我们的一个程序调用memcpy时,size计算错误,将栈冲毁,最终会向非法页面写数据,出发异常,最终程序崩溃
这些都没问题,本来应该100%重现的问题,终于有一天出了“异常”
在一台VM上,本该崩溃的程序表现出无限的生命力,但是行为异常。。。
分析后发现内核在等待svchost的alpc应答,苦苦等了30个小时没等到。。。。
详情见附件 谢谢 ;)
==============================================
可能内容太多了,分楼提交也出问题
有不知道何种附件合法 只能将帖子移走了
求指点
http://bbs.pediy.com/showthread.php?t=158762
Re: svchost 好像出问题了,如何诊断呢
悬崖遛马
2012-11-16, 17:19 下午
然后用LiveKD抓了个内核dump
得到结果:
0: kd> !thread fffffa800694fb60
THREAD fffffa800694fb60 Cid 0a0c.14dc Teb: 000000007ee81000 Win32Thread: 0000000000000000 WAIT: (Suspended) KernelMode Non-Alertable
SuspendCount 1
FreezeCount 1
fffffa800694fe38 Semaphore Limit 0x2
Waiting for reply to ALPC Message
fffff8a00d7492c0
: queued at port fffffa8007e79090 : owned by process fffffa8007b82b30
Not impersonating
DeviceMap fffff8a000006110
Owning Process fffffa8005e05b30 Image: RSLinxNG.exe
Attached Process N/A Image: N/A
Wait Start TickCount 16200644 Ticks: 80631 (0:00:20:59.859)
Context Switch Count 273333
UserTime 00:00:56.593
KernelTime 00:00:04.593
Win32 Start Address 0x0000000074ca345e
Stack Init fffff8800540ddb0 Current fffff8800540c200
Base fffff8800540e000 Limit fffff88005408000 Call 0
Priority 10 BasePriority 8 UnusualBoost 0 ForegroundBoost 0 IoPriority 2 PagePriority 5
Child-SP RetAddr : Args to Child : Call Site
Re: svchost 好像出问题了,如何诊断呢
格蠹老雷
2012-11-27, 12:48 下午
听起来已经找到问题的根源了(溢出),还有什么疑问呢?
Re: svchost 好像出问题了,如何诊断呢
悬崖遛马
2012-11-28, 16:24 下午
我的程序是溢出了,正常应该crash;
问题是有一次“没有”crash,抓了个kernel dump看到内核正在等待svchost的alpc响应
我比较好奇的是svchost怎么了,为什么不响应alpc请求
Re: svchost 好像出问题了,如何诊断呢
悬崖遛马
2012-11-28, 16:25 下午
而且好像svchost栈也出现溢出了, 也没出现crash迹象
Re: svchost 好像出问题了,如何诊断呢
格蠹老雷
2012-12-04, 21:29 下午
这样的问题会有很大的随机性,就看被破坏的数据是什么了。继续做这样的分析ROI太小了。建议把发现的问题修正后再测试...