zoukankan      html  css  js  c++  java
  • 真的无语, 今天遇到一个奇葩的事情: http 会话劫持

    今天一个用户反应说软件一运行就提示错误,然后关闭。

    然后用户截屏发给我看了一下,我一看,无语了。

    在软件中显示的正常一段文字说明尾部出现 <script src="http://ad.ip.....:9090/target/adpro_ext.js"></script><script>addLoadEvent(init_union_adv);</script>

    奇怪,软件界面上不可能显示这样的一段内容,我想用户的电脑可能出了问题。

    经过半个小时的测试,用户在笔记本上由原来的wifi上网换成3G上网后,软件就可以正常动行,也不会出现上面一段js代码了。

    我检查了一下软件源代码,发现问题出现在:

    char desc[1024] = {0};

    由于接收到的数据是960个字节,我在软件接收的时候,初始化的数组大小是 1024字节。

    当接收到的数据中被嵌入了上面的一段js代码后,软件接收到的实际数据 > 1024个字节,导致数组下标越界,软件就无法正常启动了。

    我赶紧把1024改为4096,再遇到嵌入js代码,只要不变态,基本上够用了。 

    关于会话劫持的介绍,来源:http://safe.it168.com/ss/2007-12-19/200712190752154_3.shtml

    在多种强制广告中,有一种是采用会话劫持(Session Hijack)技术。它的出现没有时间规律,经常在用户上网的无意之间出现这类广告。经笔者多方面查询,这种强制广告会根据用户上网的活跃度自动增减弹出数,“流氓”行为可见一斑。我们知道,TCP连接的时候必须通过3握手。会话劫持技术就是在两台主机之间建立TCP链路的时候,获得主机信息,并在源主机获得目的主机发送的数据报之前,将自己包含广告代码的数据报发送给源主机,而根据TCP/IP的机制,真正的数据报文则被丢弃。ISP运营商利用自身优势,将会话劫持设备安装在核心路由器旁,以此种方法来达到推送强制广告的目的。

    2014-08-13

  • 相关阅读:
    C#2.0泛型学习--入门篇
    [转自MSDN]如何映射 HRESULT 和异常
    js创建hashtable
    滑雪在日本 之 新泻篇 3
    就算神游 之四:富士山和富士游乐园 2
    就算神游 之四:富士山和富士游乐园 9
    滑雪在日本 之 新泻篇 9
    滑雪在日本 之 新泻篇 14
    就算神游 之四:富士山和富士游乐园 4
    挤地铁的感悟
  • 原文地址:https://www.cnblogs.com/personnel/p/4585053.html
Copyright © 2011-2022 走看看