循环渐进NsDoor(二)

本文介绍了一个简单的客户端-服务端通信实例,使用Telnet服务进行数据交换。客户端采用C++与Winsock库实现,并详细展示了源代码及测试过程。
先水下….
今天竟然在YC某商场看到黑色6300,够炫….
可惜没看到6122c,期待….
昨天男篮比赛我都快郁闷死的说….功败垂成….
最近太兴奋,晚上要整到快一点,然后到床上也还睡不着/..
水完了….
­
这一节比较无聊,本来准备把它放后面随便亮下像的,可惜今天测试单管道,双管道,反弹型后门全失败(主要是有些bug,估计是编译器问题)….
目前网上流传的主流代码我试了下全部在VS08下编译通过,运行信息显示却又出入,所以只好先把这个东西拿出来顶一天…
第一个通信实例,我们的客户端使用的telnet服务…
现在实现一个客户端,代码也是相当简单,就当复习了下socket了….
 1 //NsClient1 
 2 #include<iostream> 
 3 #include<winsock.h> 
 4 #pragma comment(lib,"Ws2_32") 
 5 ­
 6 int main(int argc,char* argv[]) 
 7 
 8          const int PORT = 1517
 9          const int MAXDATASIZE = 1024
10          int sockfd,numbytes; 
11          char buf[MAXDATASIZE]; 
12          struct sockaddr_in their_addr; 
13          if(argc != 2)//2 or 1? 
14          { 
15                    cout<<"please give me the hostname"<<endl; 
16                    exit(1); 
17          } 
18 ­
19          WSADATA ws; 
20          WSAStartup(MAKEWORD(2,2),&ws); 
21 ­
22          if( (sockfd = socket(AF_INET,SOCK_STREAM,0)) == -1
23          { 
24                    cout<<"socket error"<<endl; 
25                    exit(1); 
26          } 
27 ­
28          their_addr.sin_family = AF_INET; 
29          their_addr.sin_port = htons(PORT); 
30          their_addr.sin_addr.s_addr = inet_addr(argv[1]); 
31 ­
32          if(connect(sockfd,(struct sockaddr*)&their_addr,sizeof(struct sockaddr)) == -1
33          { 
34                    cout<<"connect error"<<endl; 
35                    closesocket(sockfd); 
36                    exit(1); 
37          } 
38          if( (numbytes=recv(sockfd,buf,MAXDATASIZE,0)) == -1
39          { 
40                    cout<<"recv error"<<endl; 
41                    closesocket(sockfd): 
42                    exit(1); 
43          } 
44          buf[numbytes] = '"0'
45          cout<<"Received:"<<buf<<endl; 
46          closesocket(sockfd); 
47 ­
48          return 0
49 
50 
这个代码就是客户端啦…
编译后:
rurl2=41647c3e3583ce4f7e0aac59d1902e7a2c05c657e775f18d51637e7e61112130c0b93433a2f592e7b52f12e77fd953badc7b17b1d56b802bba27337d849e201bef7c1d4a912012a09215008de5012dfe601da14b
­
­
一个是昨天的服务端,一个就是客户端了
在我的本本上直接测试这两个啦,我的IP是192.168.0.20
先运行服务端:
rurl2=eb9bf6d29f9ce932f9edf1807bf65f2aa7f22573194eb05f93c97beeae579b3ac74f57e2fd4ac31aab173097edcbbda3dd5ab833b7d21f4bbb54d31d35aea60774725c4839ae21542a81a947bbbfb89275cde86b
和昨天一样的(而且也遭到防火墙拦截)
再运行客户端:
这个需要有命令行参数的,所以只好用CMD调用..
把客户端放C盘根目录里
rurl2=0841acf2fd89c45fc178d795b0e8f6f833ef21eb6f351d9e3a67b533a90fcf2cd434814a29e1513b308473af3c7aec1e8f808387526ca12f20abaa83216afbdc12fffb7ceac433e30e1ce57ccb1d26a23e5f7c5f
­
­
参数如上所示,点回车后看到:
rurl2=ae7e328bf3c8bba448d4d536a6dfc603c84f57c0771135ae64ec1eaa0fb0f16347e9c8b67aa969da1052382df35809f39432c4b93248eb151f5cf77d8e84560b531e759fd72784493c59b4d8269301fd7b22c492
­
­
如愿得到了welcome 那句话…
再看服务端此时反应:
rurl2=73aca27b16124e9f160fc3cbdc64d4815c3e8dff61338347fed751922df098beedd69c7896c1bd263da58c09b55a77e563fcda28acfa4a8ba6f3e3d66d501cf1b28c6bdd0a7dfed9a15e4b9c395fdd54d02e8fbd
­
­
OK,测试成功….
­
­
第一节提出的遗留问题以后再解决….
­
­
                                   -------------NewSketcher
                                       Time: 080813      20:47
­
­

转载于:https://www.cnblogs.com/ns517/archive/2008/10/04/1303744.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值