前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2020.7.2日报:禁用IE的证书管理弹窗

2020.7.2日报:禁用IE的证书管理弹窗

作者头像
龙泉寺扫地僧
发布2020-07-03 10:40:01
8790
发布2020-07-03 10:40:01
举报
文章被收录于专栏:盟主来了盟主来了

IE有很多比较恶心的弹窗。一般是用put silient禁用。但ie的证书弹窗,禁用了的话,页面就不继续加载了。

目前发现有三种方法。一种是直接hook 掉InternetErrorDlg。直接不弹窗。注意hook 函数里不是直接返回0,

要:

        DWORD old_flags = 0;         DWORD return_bytes = sizeof(DWORD);         InternetQueryOption(hRequest, 99, &old_flags, &return_bytes);

        ignore_flags |= old_flags;         InternetSetOption(hRequest, 99, &ignore_flags, sizeof(ignore_flags));

这样设置一下。

第二种方法,翻了下windows源码,见:

private\inet\urlmon\iapp\cnethttp.cxx

HRESULT CINetHttp::HttpSecurityProblem(HWND* phwnd, DWORD dwProblem)

里面有句_pHttSecurity->OnSecurityProblem(dwProblem);。

https://www.codesd.com/item/ignore-ssl-security-alerts-from-the-web-browser-in-the-console-application.html

这文章写了怎么重载。不过我没看懂C++怎么实现。

三是逆向wininet的代码发现,会走CoInternetIsFeatureEnabled(0x14, 2). 这里也许可以设置一下。不过好像没成功。

参考:

https://chromium.googlesource.com/chromium/chromium/+/master/chrome_frame/urlmon_url_request.cc

G:\mycode\wxWidgets-3.1.3\src\msw\webview_ie.cpp

     user32.dll!_DialogBox2@16()    未知    非用户代码。已加载符号。      user32.dll!_InternalDialogBox@24()    未知    非用户代码。已加载符号。      user32.dll!_DialogBoxIndirectParamAorW@24()    未知    非用户代码。已加载符号。      user32.dll!_DialogBoxParamW@20()    未知    非用户代码。已加载符号。      wininet.dll!_IsolationAwareDialogBoxParamW@20()    未知    非用户代码。已加载符号。      wininet.dll!LaunchDlg()    未知    非用户代码。已加载符号。      wininet.dll!LaunchInternetErrorDlg()    未知    非用户代码。已加载符号。      wininet.dll!InternetErrorDlg    未知    非用户代码。已加载符号。 >    fast_mb.exe!Hook_InternetErrorDlg 行 2391    C++    已加载符号。      urlmon.dll!CINetHttp::HttpSecurity 行 4001    C++    非用户代码。已加载符号。      urlmon.dll!CINetHttp::HandleHttpSecurityError 行 2214    C++    非用户代码。已加载符号。      urlmon.dll!CINetHttp::QueryStatusOnResponse 行 2092    C++    非用户代码。已加载符号。      urlmon.dll!CINet::QueryInfoOnResponse 行 6561    C++    非用户代码。已加载符号。      urlmon.dll!CINet::INetQueryInfo 行 4306    C++    非用户代码。已加载符号。      urlmon.dll!CINet::OnINetInternal 行 5793    C++    非用户代码。已加载符号。      urlmon.dll!CINet::Continue 行 1447    C++    非用户代码。已加载符号。      urlmon.dll!COInetProt::Continue 行 556    C++    非用户代码。已加载符号。

>    user32.dll!_NtUserGetMessage@16()    未知    非用户代码。已加载符号。      user32.dll!_GetMessageW@16()    未知    非用户代码。已加载符号。      mshtml.dll!InternalShowModalDialog()    未知    非用户代码。已加载符号。      mshtml.dll!_ShowModalDialog@20()    未知    非用户代码。已加载符号。      ieframe.dll!CDocHostUIHandler::ShowErrorDialog()    未知    非用户代码。已加载符号。      ieframe.dll!CDocHostUIHandler::Exec    未知    非用户代码。已加载符号。      mshtml.dll!CWindow::ShowErrorDialog    未知    非用户代码。已加载符号。      mshtml.dll!COmWindowProxy::Fire_onerror    未知    非用户代码。已加载符号。      mshtml.dll!CMarkup::ReportScriptError    未知    非用户代码。已加载符号。      mshtml.dll!CActiveScriptHolder::OnScriptError    未知    非用户代码。已加载符号。      jscript9.dll!08638edd()    未知    非用户代码。无法查找或打开 PDB 文件。      jscript9.dll![下面的框架可能不正确和/或缺失,没有为 jscript9.dll 加载符号]    未知    未加载任何符号。      jscript9.dll!086395f0()    未知    非用户代码。无法查找或打开 PDB 文件。      jscript9.dll!0863958c()    未知    非用户代码。无法查找或打开 PDB 文件。      jscript9.dll!0863953b()    未知    非用户代码。无法查找或打开 PDB 文件。      msvcrt.dll!__CallSettingFrame@12()    未知    非用户代码。已加载符号。      msvcrt.dll!_CallCatchBlock2()    未知    非用户代码。已加载符号。      msvcrt.dll!std::bad_exception::_Doraise()    未知    非用户代码。已加载符号。      msvcrt.dll!___CxxExceptionFilter()    未知    非用户代码。已加载符号。      msvcrt.dll!___CxxExceptionFilter()    未知    非用户代码。已加载符号。      msvcrt.dll!___InternalCxxFrameHandler()    未知    非用户代码。已加载符号。      msvcrt.dll!___CxxFrameHandler()    未知    非用户代码。已加载符号。      ntdll.dll!ExecuteHandler2@20()    未知    非用户代码。已加载符号。      ntdll.dll!ExecuteHandler@20()    未知    非用户代码。已加载符号。      03ca0fc1()    未知    非用户代码      03ca0fc1()    未知    非用户代码      jscript9.dll!084c705b()    未知    非用户代码。无法查找或打开 PDB 文件。      jscript9.dll!084c4a62()    未知    非用户代码。无法查找或打开 PDB 文件。      jscript9.dll!08532b36()    未知    非用户代码。无法查找或打开 PDB 文件。      jscript9.dll!08553171()    未知    非用户代码。无法查找或打开 PDB 文件。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-07-02 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档