一个简单的端口扫描程序.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一个简单的端口扫描程序

   操 作 系 统 论 文 ——一个简单的端口扫描程序 学 院 :计 控 学 院 姓 名 : 班 级 :计本045 学 号 :2004021200 指导教师 : 摘要 一个端口就是一个潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息。进行扫描的方法很多,可以是手工进行扫描,也可以用端口扫描软件进行。   在手工进行扫描时,需要熟悉各种命令。对命令执行后的输出进行分析。用扫描软件进行扫描时,许多扫描器软件都有分析数据的功能。    关 键 字: 扫描 端口扫描途径 网络 运行环境: 普通计算机一台,操作系统WINDOWS 一。引言 通过网络服务器接连访问,寻找保安上的弱点(安全漏洞)的行为。在互联网上被公开的服务器计算机遵从称为「TCP/IP」的通讯规章(协议)运行,通常准备了复数的称为「端口」的连接窗口,等着来自利用者的连接。端口扫描是按顺序调查访问这个端口,在服务器中运行的应用软件和OS的种类,调查是否有可能成为侵入口的脆弱的端口的行为。端口扫描的结果常常是安全漏洞被发现时,使用侵入用的程序进行不正当的侵入。也有时是网络管理者为调查自己管理的系统中是否有漏洞,而进行端口扫描。接受了端口扫描的服务器中会留有通讯履历(访问记录)与端口扫描的可疑记录,但会发生空开间隔进行扫描等隐藏端口扫描工作的情况。 二。分析过程 1.Ping命令的基本格式: ????????ping hostname 其中hostname是目标计算机的地址。Ping还有许多高级使用,下面就是一个例子。 C: ping -f hostname   这条命令给目标机器发送大量的数据,从而使目标计算机忙于回应。在Windows 95的计算机上,使用下面的方法: c:\windows\ping -l 65510 saddam_hussein   这样做了之后,目标计算机有可能会挂起来,或从新启动。由于 -l 65510 产生一个巨大的数据包。由于要求返回一个同样的数据包,会使目标计算机反应不过来。   在Linux计算机上,可以编写一个程序来实现上述方法。 #include stdio.h #include sys/types.h #include sys/socket.h #include netdb.h #include netinet/in.h #include netinet/in_systm.h #include netinet/ip.h #include netinet/ip_icmp.h ?? /* * If your kernel doesnt muck with raw packets, #define REALLY_RAW. * This is probably only Linux. */ #ifdef REALLY_RAW #define FIX(x)牋htons(x) #else #define FIX(x)牋(x) #endif 牋 int main(int argc, char **argv) { 牋牋牋牋int s; 牋牋牋牋char buf[1500]; 牋牋牋牋struct ip *ip = (struct ip *)buf; 牋牋牋牋struct icmp *icmp = (struct icmp *)(ip + 1); 牋牋牋牋struct hostent *hp; 牋牋牋牋struct sockaddr_in dst; 牋牋牋牋int offset; 牋牋牋牋int on = 1; 牋 牋牋牋牋bzero(buf, sizeof buf); if ((s = socket(AF_INET, SOCK_RAW, IPPROTO_IP)) 0) { 牋?牋牋牋牋牋牋爌error(socket); 牋牋牋牋牋牋牋牋exit(1); 牋牋牋牋} 牋牋牋牋if (setsockopt(s, IPPROTO_IP, IP_HDRINCL, on, sizeof(on)) 0) { 牋牋牋牋牋牋牋牋perror(IP_HDRINCL); 牋牋牋牋牋牋牋牋exit(1); 牋牋牋牋} 牋牋牋牋if (argc != 2) { 牋牋牋牋牋牋牋牋fprintf(stderr, us

文档评论(0)

zhuwenmeijiale + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7065136142000003

1亿VIP精品文档

相关文档