`
cloudtech
  • 浏览: 4605944 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

网络程序之端口扫描技术

 
阅读更多
网络程序之端口扫描技术

端口扫描是是网络安全软件中所必须有的一个功能.这个功能模块其实就是探测目地方主机已开放的端口.这样能检测一些漏洞,防止一些损失.其实探测对方主机端口有时我们用dos中自带的工具就可以.

你比如:进入cmd下.输入telnet www.sina.com.cn 80这个指令后,就能看到新浪的这个80端口是不是开放了.

具体到用高级语言如何实现这一功能呢?首先我们要理解它的原理.一台机器中它的端口如果开放,我们可以认为它正在侦听到来的连接,也就是说我们可以连接到它.网络库中提供了这么一个函数.connect().用这个函数我们来个循环探测从1到65535.分析其返回值.这样就能知道对方开放了几个端口.如果我们在创建套接字时也指定是UDP,那么我们也能探测UDP端口对方开了几个.但要注意UDP这个方式有一定的漏洞.因为UDP不是面向连接的.另外在这个编程中我们最好用到多线程方式,以便于操作.

下面是代码:

#include<winsock2.h>
#include<stdio.h>
#include <iostream.h>

void main()
{
WSADATA wsaData;
SOCKET sClient;
struct sockaddr_in server;

if(WSAStartup(MAKEWORD(2,2),&wsaData)!=0)
{
printf("加载套接字失败/n");
return ;
}

sClient=socket(AF_INET,SOCK_STREAM,0);

if(sClient==INVALID_SOCKET)
{
printf("创建套接字失败:%d/n",WSAGetLastError());
//return ;
}

for(int iPort =1 ;iPort <82 ; iPort ++)
{
server.sin_family=AF_INET;
server.sin_port=htons(iPort);
server.sin_addr.s_addr=inet_addr("127.0.0.1");
if(connect(sClient,(struct sockaddr *)&server,sizeof(server))==INVALID_SOCKET)
{

printf("端口没有开放%d/n",iPort);

}
else
{
printf("端口开放%d/n",iPort);
}
}
}

当然不要忘了加载ws2_32.lib这个网络库

分享到:
评论

相关推荐

    5种不同的端口扫描器程序.zip

    1.端口扫描 portScan: 端口扫描程序,包括ping扫描,syn扫描,fin扫描等方式,可以参考...该源码为《计算机网络高级软件编程技术》第17章的源码,用TCP,UDP,ACK,FIN,ARP,ICMP等几种方法实现了IP扫描、端口扫描。

    端口扫描程序的设计与实现.doc

    端口扫描技术是发现安全 问题的重要手段之一。 本程序是在Windows系统中使用C语言用MFC完成的一个端口扫描程序。此程序主要完 成了TCP connect()扫描和UDP扫描功能。TCP扫描支持多线程,能对单个指定的主机进行扫描...

    计算机网络课程设计报告-端口扫描器.doc

    主要是为了加深对TCP/IP的理解,学习端口扫描技术和原理。 端口扫描器包括IP扫描和端口扫描,IP扫描使用同一网段的IP地址,端口扫描是对特定主机的一个范围段内的端口进行扫描,两者使用相同的原理,均使用TCP三次...

    防火墙技术与端口扫描技术应用于计算机网络安全的研究

    在VB6.0+WinMe环境下开发,并在WinMe和WinXP操作系统下调试通过,主要功能有本地监听,端口扫描,Ping主机的程序。 该程序在本地监视的界面下,用户首先添加需要监听的端口,并通过另一个界面显示出来,点击界面上的...

    网络端口扫描器 实验报告

    端口扫描器,实验报告,通过对扫描器的编写,深入掌握TCP、ICMP协议原理与实现技术,掌握设计、实现网络安全应用程序和工具的基本方法,同时对黑客攻击的主要手段也有一个深入地了解,为进一步研究网络安全和网络...

    一个简单的端口扫描编程序题

    常用的端口扫描技术有很多种,如 TCP connect() 扫描 、TCP SYN 扫描、TCP FIN 扫描 等,网络上也有很多文章专门介绍,比如 :http://www.antai-genecon.com/suml/zhishiyy/jingong/duankougj.htm 上就介绍了很多我...

    端口扫描设计与实现 java程序

    端口扫描是指利用某些漏洞可能是系统的, 也有可能来自TCP/IP协议簇本身, 获取远程网络设备所运行服务的一种技术。也就是说, 端口扫描并不是直接攻击网络漏洞,它仅仅能帮助发现目标机的某些内在的弱点端口。

    基于WinPcap的网络扫描以及端口扫描流量统计毕业设计

    此文件包含一体化的基于vc++6.0的MFC程序设计制作出来的windows扫描技术,采用WinPcap,实现了端口扫描,局域网监控,本地流量监控。 包含论文以及源码,经编译通过。 可能需要其他安装文件支持vc6的最后sdk,地址...

    端口扫描程序

    操作系统提供的 connect() 系统调用,用来与每一个感兴趣的目标计算机的端口进行连接。如果端口处于侦听状态,那么connect()就能成功。...本程序只是展示一种端口扫描技术,请不得将其用于非法目的,否则后果自负。

    C# 端口扫描 线程操作

    窗口程序,输入IP、端口范围进行扫描,可以导出日志文件

    端口扫描程序源码

    该源码为《计算机网络高级软件编程技术》第17章的源码,用TCP,UDP,ACK,FIN,ARP,ICMP等几种方法实现了IP扫描、端口扫描。

    网络安全设计的端口扫描器.zip

    参照superscan等端口扫描软件的运行情况,自行设计一个简单的端口扫描软件。能够根据TCP、IMCP等探测方法,设计程序对IP地址(单个IP,一段IP范围)、指定主机名的端口(指定端口,所有端口)进行扫描,以获得相关的...

    TCP/UDP端口扫描器的设计(含源码)

    第3章 TCP/UDP端口扫描器的设计 3.4 PortScan_TCP 3.5 PortScan_UDP 因为网上没有网络扫描技术揭秘的源代码,所以自己买了书dump下光盘按章节上传,可以根据需要下载

    C#实现多线程TCPUDP端口扫描

    端口扫描技术是发现安全问题的重要手段之一。一个端口就是一个潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息。扫描器通过选用远程TCP/IP不同的端口的服务,并记录目标给予的...

    网络端口扫描

    9 - 2.2.3 杀毒软件技术 - 14 - 第三章 网络端口扫描原理 - 16 - 3.1 端口扫描 - 16 - 3.2 常用的端口扫描技术 - 19 - 3.2.1 TCP/IP 相关问题 - 20 - 3.2.2 TCP Connect() 扫描 - 21 - 3.2.3 ...

    端口扫描程序nmap使用手册

    nmap支持很多扫描技术,例如:UDP、TCP connect()、TCP SYN(半开扫描)、ftp代理(bounce攻击)、反向标志、ICMP、FIN、 ACK扫描、圣诞树(Xmas Tree)、SYN扫描和null扫描。从扫描类型一节可以得到细节。nmap还提供了...

    网络攻防技术实验2端口扫描

    使用Python(Scapy库)编写端口扫描程序,对目标IP(包含IP地址段)进行扫描,完成以下功能: 1.使用ICMP协议探测主机是否开启; 2.对本机(关闭防火墙)的开放端口和非开放端口完成半连接、ACK、FIN、Null、Xmas、...

    计算机端口扫描器(计算机网络课程设计)

    利用多线程技术实现了对一目标IP进行设定数目的端口扫描,计算机端口扫描技术就是这种主动防御策略实现的重要技术手段。该端口扫描器采用c++语言开发,在VC6.0编译环境下通过测试 资源包含 1. 27页绝对详细的课程设计...

    C#编写的多线程多主机端口扫描程序

    采用多线程技术,实现了多主机,多端口的扫描,速度挺快!

Global site tag (gtag.js) - Google Analytics