pc软件 文章资讯 手机软件

您当前的位置→图文中心安全防范PcShare2005的HTTP隧道的弊端
阅读排行

PcShare2005的HTTP隧道的弊端


2009/2/20  编辑:佚名 来源:本站整理

它的HTTP隧道是通过wininet API实现的

看看这段代码:重点用红色标记

if(!m_PipeRecv.ConnectHttpServer(

   m_ServerAddr, m_ServerPort, nRecv,

   INTERNET_FLAG_PRAGMA_NOCACHE|

   INTERNET_FLAG_NO_CACHE_WRITE|

   INTERNET_FLAG_RELOAD))

{

   StopWork();

   return FALSE;

}

if(!HttpSendRequest(m_PipeRecv.hHttpFp , NULL , 0 , NULL, 0))

{

   StopWork();

   return FALSE;

}

if(!m_PipeSend.ConnectHttpServer(

   m_ServerAddr, m_ServerPort, nSend,

   INTERNET_FLAG_PRAGMA_NOCACHE|

   INTERNET_FLAG_NO_CACHE_WRITE|

   INTERNET_FLAG_RELOAD))

{

   StopWork();

   return FALSE;

}

INTERNET_BUFFERS BufferIn = {0};

    BufferIn.dwStructSize = sizeof( INTERNET_BUFFERS );

BufferIn.dwBufferTotal = 1024 * 1024 * 1024 + 973741824;

if(!HttpSendRequestEx(m_PipeSend.hHttpFp,

   &BufferIn,NULL,HSR_INITIATE,0))

{

   StopWork();

   return FALSE;

}

return TRUE;

/////////////////////////////////////////////////////////////////////////////////////////////////////////

HttpSendRequest(m_PipeRecv.hHttpFp , NULL , 0 , NULL, 0))

有个这些都是POST方式建立的连接, 所以这里POST一个0字节, 因为这个m_PipeRecv是用来接收数据的, 不需要发送数据, 但是他能接收多少数据则由Pcshare里的HTTP响应头Content-Length的数值决定, 一但大于这个数值, 通信就会断开

HttpSendRequestEx里的HSR_INITIATE表示POST的数据, 用InternetWriteFile来发送, 这是POST大数据的方法, 前面有看到这句“BufferIn.dwBufferTotal = 1024 * 1024 * 1024 + 973741824;”, 这定义这个POST的数据大小, 这时候弊端就出来了, 如果我们远程监控的服务端发送的数据量大于了这个数值BufferIn.dwBufferTotal, 这个连接就会断开……

这时候我们发现, Content-Length和BufferIn.dwBufferTotal 都是32位的, 也就是只能传输4GB数据……, 超过了, 连接就会断开……, 而PcShare2005里对这两个数值的设置似乎还都不是最大的,当然了一般情况下, 我们不会用掉这么多的数据量

新版的PcShare应该是用socket模拟的HTTP协议, 抛弃了wininet API的方法吧.。 新版的也没有强调是双管道通信, 双管道其实是迫不得已的设计, wininet建立的通信管道不能交叉接收和发送数据, 所以用两个, 一个负责接收, 一个负责发送

相关文章

DNF欲望之塔从哪里进 欲望之塔npc是什么东东:DNF欲望之塔在哪里进?欲望之塔的玩法一共是有四阶段的,分为四段的挂机活动。

魔之符咒6.81名人堂密码魔之符咒6.81隐藏npc在哪里攻略:魔之符咒6.81隐藏npc攻略:魔之符咒隐藏NPC触发条件需要杀死神龙2次黑暗剑圣2次魔界幻兽2次单人杀死神龙2次的方法:先打2把召唤神龙钥匙然后召唤神龙打死神龙先不要转生继续召唤神龙隐藏NPC可以升级天位神器合成魔之封印魔之符咒6.81名...。

dnf时空石在哪里兑换 NPC红尾乔纳森可以兑换什么:时空石在哪里兑换很多玩家还找不到兑换的NPC吧,下面小编就来给大家介绍一下时空石兑换NPC在哪里。

发表评论
网站帮助 - 广告合作 - 下载声明 - 网站地图