浏览器安全与MSAA

简介:
      对于互联网应用而言,安全是一个不可忽视的问题。特别是电子商务类应用,更是重中之重。由于目前国内电子商务发展越来越迅猛,很多木马开始把注意力转到它上面来。这些木马往往有一个很重要的特点就是具有明显的经济利益性目的。
 
        根据分析和研究表明,这类木马通常并没有使用很高深的技术手段,主要原因就是浏览器自身的脆弱性。从OS角度来说,浏览器是一个很普通的应用程序,没有任何保护措施。木马可以很方便的通过某些方式来篡改浏览器数据。

        比较常见的一种就是利用MSAA技术来直接修改浏览器页面,这种修改只发生在内存中,这就是说即使我们查看当前页面源码,也不会发现任何异常。而实际上页面已经被修改了。值得关注的是,目前大部分安全防护软件都不会监视这块的应用。
MSAA是基于COM的技术,一般的调用模式首先是向浏览器窗口发送WM_HTML_GETOBJECT消息,然后通过MSAA的特有API即ObjectFromLresult()来取得对应页面的IHTMLDocument2接口。为了方便,一般顺便也一起获取IWebBrowser接口。剩下的工作就比较简单(但是很繁杂),查询MSDN文档来获取这两个接口所支持的操作即可。

下面演示一个DEMO,这个DEMO会将当前浏览器窗口中的百度首页的Logo换成Tomcat,如下图:

完整代码就不贴出了,关键性代码如下(C代码):
  CComBSTR domain(100); 
  CComPtr<IHTMLElement> htmBody; 
  CComPtr<IDispatch> bodyChildren; 
  CComPtr<IHTMLElementCollection> imgColl; 
  CComQIPtr<IHTMLWindow2> htmWin; 
  CComVariant v; 

  dom->get_domain(&domain); 
   if(domain == L "www.baidu.com") { 
    MessageBox(NULL, L "target detected~\n now have a look...", L "msg", 0); 
    dom->get_body(&htmBody); 
     //Execute js 
    CComBSTR jsToExecute =    
      L"document.getElementById('lg').innerHTML=\ 
        '<img src=\"http: //tomcat.apache.org/images/tomcat.gif\"\ 
        width=\"270\" height=\"129\" usemap=\"#mp\"/>';"; 
    dom->get_parentWindow(&htmWin); 
    hr = htmWin->execScript(jsToExecute, L "javascript", &v); 
  }
其中,dom是一个已经获取的  IHTMLDocument2接口。
 
请勿将以上代码用于非法用途。这段代码的execScript方法调用后可能返回非S_OK的奇怪结果,原因是ATL相关类库的问题。

通过这个DEMO可以看到,从某种程度上说互联网应用的安全是一个比较严峻的问题。我们无法改变浏览器脆弱的事实,能改变的是用户的安全防护意识。如何培养起这个意识,是每个互联网从业者都应该思考的问题。









本文转自 kevx 51CTO博客,原文链接:http://blog.51cto.com/spinlock/569038,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
存储 监控 安全
360 企业安全浏览器基于阿里云数据库 SelectDB 版内核 Apache Doris 的数据架构升级实践
为了提供更好的日志数据服务,360 企业安全浏览器设计了统一运维管理平台,并引入 Apache Doris 替代了 Elasticsearch,实现日志检索与报表分析架构的统一,同时依赖 Doris 优异性能,聚合分析效率呈数量级提升、存储成本下降 60%....为日志数据的可视化和价值发挥提供了坚实的基础。
360 企业安全浏览器基于阿里云数据库 SelectDB 版内核 Apache Doris 的数据架构升级实践
|
3月前
|
存储 缓存 安全
浏览器中的安全沙箱
【1月更文挑战第3天】
|
5月前
|
Web App开发 前端开发 JavaScript
让谷歌浏览器不再显示不安全内容的提示
让谷歌浏览器不再显示不安全内容的提示
|
7月前
|
安全 算法 网络协议
浏览器基础原理-安全: HTTPS
浏览器基础原理-安全: HTTPS
59 0
|
7月前
|
Web App开发 存储 监控
浏览器基础原理-安全: 渲染进程-安全沙盒
浏览器基础原理-安全: 渲染进程-安全沙盒
37 0
|
7月前
|
安全
浏览器基础原理-安全: CSRF攻击
浏览器基础原理-安全: CSRF攻击
54 0
|
7月前
|
JavaScript 安全 前端开发
浏览器基础原理-安全: 同源策略
浏览器基础原理-安全: 同源策略
36 0
|
7月前
|
存储 编解码 安全
浏览器基础原理-安全: 跨站脚本攻击(XSS)
浏览器基础原理-安全: 跨站脚本攻击(XSS)
33 0
|
9月前
|
存储 JSON 安全
浏览器安全之同源策略
浏览器-安全策略
81 0
|
安全
360极速浏览器以及360安全浏览器在兼容模式下验证码图片显示不来,但是极速模式可以显示?
360极速浏览器以及360安全浏览器在兼容模式下验证码图片显示不来,但是极速模式可以显示?
247 0
360极速浏览器以及360安全浏览器在兼容模式下验证码图片显示不来,但是极速模式可以显示?