Asp classic “错误”;ASP 0115发生可捕获错误;在Microsoft修补程序CVE-2019-1367之后 Jscript意外异常
在23年发布Windows Server修补程序漏洞(CVE-2019-1367)后。九月Asp classic “错误”;ASP 0115发生可捕获错误;在Microsoft修补程序CVE-2019-1367之后 Jscript意外异常,asp-classic,jscript,Asp Classic,Jscript,在23年发布Windows Server修补程序漏洞(CVE-2019-1367)后。九月 Windows服务器2019(KB4522015) Windows Server 2016(KB4522010) 基于x64系统的Windows Server 2008 R2 Service Pack 1(KB4522007) Windows Server 2012(KB4522007) Windows Server 2012 R2(KB4522007) 2019年10月7日更新的“每月汇总预览”和“
- Windows服务器2019(KB4522015)
- Windows Server 2016(KB4522010)
- 基于x64系统的Windows Server 2008 R2 Service Pack 1(KB4522007)
- Windows Server 2012(KB4522007)
- Windows Server 2012 R2(KB4522007)
- Windows Server 2019:KB4516077、KB4524148
- Windows Server 2016:KB4516061、KB4524152
- Windows Server 2012 R2:KB4516041、KB4524156
- 活动服务器页面错误“ASP 0115”
- 外部对象中发生可捕获错误(C0000005)。脚本无法继续运行
- 活动服务器页面错误“ASP 0240”
- 脚本引擎在“CActiveScriptEngine::FinalRelease()”的“IActiveScript::Close()”中引发异常“C0000005”李>
- 常规的try-catch方法无法处理这些错误
- 这些错误会导致工作流中断
- 异常似乎只在进入特定工作流时发生一次,并且对同一例程的重复web请求代码成功(直到应用程序池重新启动)李>
- 有时例外情况是第一次、第二次或第三次进入工作流
- 只有当IIS ASP调试属性-启用服务器端调试设置为False时,才会发生异常
- 从经典ASP服务器无法处理此问题,请使用try-catch
- 返回常规错误-脚本错误消息 或者,如果关闭(ASP-将错误发送到浏览器),ASP错误代码将显示在发生错误的页面上
- 事件查看器也会注册这些错误,但没有附加信息
- Global.asa不提供全局错误处理,ASP服务器对象服务器。GetLastError()不捕获异常
- 调试诊断
- 系统内部过程监视器
- IIS-请求跟踪失败
- 应用程序池:经典管道模式,启用32位应用程序:True
- 应用程序:ASP
- ClientL IE 11企业模式,启用ActiveX
- 在Web请求调用中模拟应用程序池标识
[0x6b7c2d77] jscript!VarStack::ScavengeRoots+27
[0x6b7c2b89] jscript!GcContext::CollectCore+79
[0x6b7c2af4] jscript!GcContext::Collect+1b
[0x6b7bca21] jscript!GcContext::ExhaustiveCollect+21
[0x6b7a604a] jscript!CSession::Close+18a
[0x6b7a32d9] jscript!COleScript::CloseInternal+13b
[0x6b7a2d36] jscript!COleScript::Close+16
[0x6b8a71ce] asp!CActiveScriptEngine::FinalRelease+1be
...
FailedRequestTrace最后一条记录未确定导致问题的确切行,正在从应用程序范围xml对象属性分配字符串变量。(CurrentStatement返回attrib.text)
类似情况-尝试从内存位置0x00000000读取时出现访问冲突异常(0xC0000005)
[0x6b907e09] jscript!AString::CopyToBuffer+69
[0x6b900524] jscript!AString::ConvertToBSTR+1bb74
[0x6b8e49a7] jscript!VAR::ConvertASTRtoBSTR+13
[0x6b8c49e8] jscript!VAR::GetValue+58
[0x6b8e0f34] jscript!ConvertToString+58
[0x6b922fbf] jscript!JsString+4f
[0x6b8d92e6] jscript!NatFncObj::Call+e6
...
尝试从内存位置0x004e0049读取时,后跟-访问冲突异常(0xC0000005)
[0x6b8e2d77] jscript!VarStack::ScavengeRoots+27
[0x6b8e2b89] jscript!GcContext::CollectCore+79
[0x6b8e2af4] jscript!GcContext::Collect+1b
[0x6b8dca21] jscript!GcContext::ExhaustiveCollect+21
[0x6b8c604a] jscript!CSession::Close+18a
[0x6b8c32d9] jscript!COleScript::CloseInternal+13b
[0x6b8c2d36] jscript!COleScript::Close+16
[0x6bfb71ce] asp!CActiveScriptEngine::FinalRelease+1be
...
2在w3wp\uuuuuuuuuuuuuuuuuuuuuuuuuuuuu第二次\u机会\u异常\u C0000005.dmp中,asp!CResponseBuffer::Write+3a
在\?\C:\Windows\System32\inetsrv\asp.dll中,Microsoft Corporation在尝试从线程32上的内存位置0x00000014读取时导致访问冲突异常(0xC0000005)
[0x6f042e88] asp!CResponseBuffer::Write+3a
[0x6f0452ea] asp!CResponse::WriteSz+4c
[0x6f02dd3b] asp!CErrInfo::LogErrortoBrowser+ff
[0x6f02d4c9] asp!CErrInfo::LogErrortoBrowserWrapper+d7
[0x6f02d047] asp!CErrInfo::LogError+e8
[0x6f02e241] asp!HandleError+116
[0x6f02f009] asp!HandleErrorMissingFilename+df
[0x6f04941b] asp!CActiveScriptEngine::Call+bb
[0x6f030eff] asp!CallScriptFunctionOfEngine+4d
[0x6f02f99f] asp!ExecuteRequest+173
[0x6f02f828] asp!Execute+23d
[0x6f035c6f] asp!CHitObj::ViperAsyncCallback+467
[0x6f05df53] asp!CViperAsyncRequest::OnCall+73
[0x6eefd325] comsvcs!CSTAActivityWork::STAActivityWorkHelper+45
[0x77098346] combase!EnterForCallback+16e [onecore\com\combase\dcomrem\crossctx.cxx @ 2072 + 2] onecore\com\combase\dcomrem\crossctx.cxx @ 2072 + 2
[0x7709816d] combase!SwitchForCallback+206 [onecore\com\combase\dcomrem\crossctx.cxx @ 1694] onecore\com\combase\dcomrem\crossctx.cxx @ 1694
[0x7709bae4] combase!PerformCallback+bc [onecore\com\combase\dcomrem\crossctx.cxx @ 1573 + 16] onecore\com\combase\dcomrem\crossctx.cxx @ 1573 + 16
[0x7709b7f9] combase!CObjectContext::InternalContextCallback+119 [onecore\com\combase\dcomrem\context.cxx @ 4421 + 1a] onecore\com\combase\dcomrem\context.cxx @ 4421 + 1a
[0x77198e66] combase!CObjectContext::DoCallback+26 [onecore\com\combase\dcomrem\context.cxx @ 4254] onecore\com\combase\dcomrem\context.cxx @ 4254
[0x6eefd015] comsvcs!CSTAActivityWork::DoWork+175
[0x6eeff0e0] comsvcs!CSTAThread::DoWork+26
[0x6eeff599] comsvcs!CSTAThread::ProcessQueueWork+48
[0x6eeff8dd] comsvcs!CSTAThread::WorkerLoop+13d
[0x76577e71] msvcrt!_callthreadstartex+25
[0x76577f31] msvcrt!_threadstartex+61
[0x765f0419] kernel32!BaseThreadInitThunk+19
[0x77d5662d] ntdll!__RtlUserThreadStart+2f
[0x77d565fd] ntdll!_RtlUserThreadStart+1b
...
- 最有可能来自写入日志文件 ioo_fso=Server.CreateObject(“Scripting.FileSystemObject”); ... loo_file=loo_fso.OpenTextFile(ls_文件名,8,true); ... 试一试{ loo_file.WriteLine(“[”+str+“]”)catch(ee){
- 进程监视器在访问日志文件时显示w3wp.exe的“共享冲突”日志记录
[0x6f042e88] asp!CResponseBuffer::Write+3a
[0x6f0452ea] asp!CResponse::WriteSz+4c
[0x6f02dd3b] asp!CErrInfo::LogErrortoBrowser+ff
[0x6f02d4c9] asp!CErrInfo::LogErrortoBrowserWrapper+d7
[0x6f02d047] asp!CErrInfo::LogError+e8
[0x6f02e241] asp!HandleError+116
[0x6f02f009] asp!HandleErrorMissingFilename+df
[0x6f04941b] asp!CActiveScriptEngine::Call+bb
[0x6f030eff] asp!CallScriptFunctionOfEngine+4d
[0x6f02f99f] asp!ExecuteRequest+173
[0x6f02f828] asp!Execute+23d
[0x6f035c6f] asp!CHitObj::ViperAsyncCallback+467
[0x6f05df53] asp!CViperAsyncRequest::OnCall+73
[0x6eefd325] comsvcs!CSTAActivityWork::STAActivityWorkHelper+45
[0x77098346] combase!EnterForCallback+16e [onecore\com\combase\dcomrem\crossctx.cxx @ 2072 + 2] onecore\com\combase\dcomrem\crossctx.cxx @ 2072 + 2
[0x7709816d] combase!SwitchForCallback+206 [onecore\com\combase\dcomrem\crossctx.cxx @ 1694] onecore\com\combase\dcomrem\crossctx.cxx @ 1694
[0x7709bae4] combase!PerformCallback+bc [onecore\com\combase\dcomrem\crossctx.cxx @ 1573 + 16] onecore\com\combase\dcomrem\crossctx.cxx @ 1573 + 16
[0x7709b7f9] combase!CObjectContext::InternalContextCallback+119 [onecore\com\combase\dcomrem\context.cxx @ 4421 + 1a] onecore\com\combase\dcomrem\context.cxx @ 4421 + 1a
[0x77198e66] combase!CObjectContext::DoCallback+26 [onecore\com\combase\dcomrem\context.cxx @ 4254] onecore\com\combase\dcomrem\context.cxx @ 4254
[0x6eefd015] comsvcs!CSTAActivityWork::DoWork+175
[0x6eeff0e0] comsvcs!CSTAThread::DoWork+26
[0x6eeff599] comsvcs!CSTAThread::ProcessQueueWork+48
[0x6eeff8dd] comsvcs!CSTAThread::WorkerLoop+13d
[0x76577e71] msvcrt!_callthreadstartex+25
[0x76577f31] msvcrt!_threadstartex+61
[0x765f0419] kernel32!BaseThreadInitThunk+19
[0x77d5662d] ntdll!__RtlUserThreadStart+2f
[0x77d565fd] ntdll!_RtlUserThreadStart+1b
...
var pbkdf2;
try {
pbkdf2 = Server.CreateObject("Pbkdf2");
pbkdf2.hashPassword(ls_newpassword, 100000);
} catch (e) {
addToLogg("Login:CreateObject failed for Pbkdf2, " + e.description);
}