端口扫描程序[JAVA]

Java实现端口扫描器 通过Java实现一个端口扫描器 原理介绍 端口扫描顾名思义,就是扫描目的资源的端口,来发现目的资源是否对外开放某个端口,提供了某种网络服务。 在安全攻防领域经常通过端口扫描技术来发现关键资产对外提供服务的情况。红军为发现暴露的风险点,进行安全加固;蓝军为识别目标服务,以便识别资产的脆弱点,实施针对性网络攻击。 实现 功能介绍 对指定ip进行指定端口进行扫描,获取目的ip的端口开放情况 扫描模式:TCP全连接扫描、TCP半连接扫描(待实现) 通过发送空信息,获取开放端口对应服务的应答,获取指纹信息,从而判 阅读详情
 之前BLOG搬过来的东西
  1. import java.net.*;
  2. import java.io.*;
  3. public class Scanner implements Runnable
  4. {
  5.  private InetAddress IPAddress;
  6.  private int Port;
  7.  private Thread allportThread;
  8.  public Scanner(String IPAddress, int port)
  9.  {
  10.   try
  11.   {
  12.    this.IPAddress = this.IPAddress.getByName(IPAddress);
  13.    this.Port = port;
  14.   }
  15.   catch(Exception e)
  16.   {
  17.    System.out.println("The host does not exist.");
  18.   }
  19.  }
  20.  public void run()
  21.  {
  22.   try
  23.   {
  24.    Socket TestPort = new Socket(this.IPAddress, this.Port); //if this port cannot been connected, throw a exception.
  25.    System.out.println(this.Port + ": exist"); //if connected, print out.
  26.   }
  27.   catch(Exception e){}
  28.  }
  29.  public static void main(String[] args)
  30.  {
  31.   String str;
  32.   str =  "TPoI Scanner 1.0 - Network Host Scanner/n";
  33.   str += "Author: T.T (TPoI:http://www.tpoi.net)/n/n";
  34.   str += "Usage: Scanner <options> <Hostname>/n/n";
  35.   str += "<options> List:/n";
  36.   str += "   -allport : scan the status of all the ports of the specified host/n";
  37.   str += "   -port %0 : scan the status of the specified ports(%0) of the specified host/n/n";
  38.   str += "Examples:/n";
  39.   str += "   Scanner -allport www.microsoft.com/n";
  40.   str += "   Scanner -port 80 21.64.34.191";
  41.   if(args.length==0)
  42.   {
  43.    System.out.println(str);
  44.   }
  45.   else
  46.   {   
  47.    args[0] = args[0].toUpperCase().trim();
  48.    char switchArgs = args[0].charAt(1);
  49.    switch(switchArgs)
  50.    {
  51.     case 'A':
  52.     {
  53.      for(int i=1;i<=65535;i++)
  54.      {
  55.       Scanner mainScanner = new Scanner(args[1],i);
  56.       if(mainScanner.allportThread.activeCount()>100)
  57.        mainScanner.run();
  58.       else
  59.       {
  60.        mainScanner.allportThread = new Thread(mainScanner);
  61.        mainScanner.allportThread.start();
  62.       }
  63.      }
  64.      break;
  65.     }
  66.     case 'P':
  67.     { 
  68.      Scanner mainScanner = new Scanner(args[2],java.lang.Integer.parseInt(args[1],10));
  69.      try
  70.      {
  71.       mainScanner.run();
  72.      }
  73.      catch(Exception e)
  74.      {
  75.       System.out.println("parameter error");
  76.      }
  77.      break;
  78.     }
  79.     default:
  80.      System.out.println(str);
  81.    }
  82.   }
  83.  }
  84. }
使用Java编写的服务端口扫描程序 通过扫描目标主机上的端口,可以确定哪些服务正在运行,从而帮助识别潜在的漏洞和安全风险。在本篇文章中,我们将使用Java编写一个简单的服务端口扫描程序,帮助你了解如何实现这个功能。在本例中,我们使用"localhost"作为目标主机,扫描范围从端口1到端口65535。请注意,端口扫描涉及与目标主机的通信,因此在进行端口扫描时需要谨慎,并确保遵守适用法律和网络安全规范。如果连接成功,则表示该端口是开放的,我们输出相应的消息。在运行时,程序将逐个扫描指定范围内的端口,并输出相应的结果。接下来,我们定义一个名为。 阅读详情

相关推荐

端口扫描程序(课程设计)

程序的主要功能有: 1.使用端口扫描对一台主机进行扫描,一台主机上有哪些端口是打开的。 2.允许输入起始ip和终止ip地址,起始端口和终止端口。 3.多线程功能:当客户端要求与服务器端建立连接时,服务器端就将用到多线程功能。 4.异常抛出功能:对于明显的错误,能提示出错误的类型并结束程序的运行。 5.显示扫描时间。

java实现端口扫描

实现原理 通过能否正常建立socket连接,来判断端口是否开启。 输入需要扫描的端口范围,通过开启多线程来实现快速扫描。 代码实现 package com.it1997; import java.net.InetSocketAddress; import java.net.Socket; import java.util.ArrayList; import java.util.Comparator; import java.util.List; import java.util.conc...

小陈没烦恼 2168

java实现的端口扫描程序

java实现的一个简单的端口扫描程序,与大家一块分享,希望对大家编程有帮助

java也可以来做黑客:端口扫描

    大部分人眼中,在单机编程中,java不如C,C++那样灵活,尤其是底层操作,以及一些和操作系统联系比较强的任务。但java经过不断的发展,在单机编程的也加强不少,有些和C++比起来一点都不逊色。下面本人就先介绍一个简单的程序:端口扫面。    通过本机端口的检测,发现已经占用的端口。这对于查看本机是否中木马来说,非常重要。当然端口扫面也是网上寻找肉鸡的一个基本方法。java设计的基本代

smartcat86的专栏 1万+

java实现端口扫描程序

本程序实现端口扫描,但有一点问题,请高人指教以下

Windows 10错误代码解析与系统故障排除指南

操作系统错误代码是系统运行状态的直接反馈,Windows系统通过特定编码机制将故障信息转化为可识别的错误代码。从技术原理看,这些代码通常对应特定的异常处理流程,包括内存管理、驱动兼容性、文件系统等核心模块。理解错误代码对于系统维护具有重要价值,能快速定位问题根源,提高故障排除效率。在实际应用场景中,蓝屏错误(如0x0000007B)、系统升级失败(如0x80070002)和启动故障是最常见的三类问题。通过分析dump文件、使用WinDbg工具和系统内置诊断功能,可以有效解决大部分系统异常。特别是对于蓝屏错误

weixin_30516429的博客 298

Java笔记-Java端口扫描功能(含TCP包分析以及原理)

端口扫描主要是扫描其TCP端口。因为他有三次握手,握上了,如果有加密才进行传输层的加密。 写个程序,去连接那个端口,能握手,就说明端口是开着的。 关于UDP的端口扫描,有但意义不是很大,因为udp不会面向连接的。主要看服务端会不会回包,以及使用了什么协议如DTLS,如果服务端写成,客户端发送过来的数据异常,就回个异常的,这样就能扫描到,如果没写成这样,那就没办法了。 Java代码如下: public class PortScanJava { public boolean is..

IT1995的博客 2142

PostgreSQL中idle in transaction状态的5个隐藏危害及实战解决方案

本文深入剖析了PostgreSQL中`idle in transaction`连接状态的五大隐藏危害,包括内存与锁泄漏、VACUUM受阻导致表膨胀、事务ID加速消耗、连接池资源耗尽以及增加故障排查复杂度。文章提供了基于`pg_stat_activity`视图的监控方法、识别高危事务的SQL脚本,并给出了从数据库参数调优(如设置`idle_in_transaction_session_timeout`)到应用层编码规范与连接池配置的完整实战解决方案。

zzz56的博客 234

端口扫描程序java实现

怎么样扫描计算机系统本地和远程的端口,监测其是打开还是关闭的在很多应用程序中都要用到,下面是用java实现的简单的端口扫描程序。Source Code:/* * Created on 2005-3-22 * * TODO To change the template for this generated file go to * Window - Preferences - Java - Code

whandeycn的专栏 1444

全志V3S开发板实战:从零构建嵌入式Linux系统

本文提供了一份针对全志V3S开发板(如LicheePi Zero)的零基础教程,详细指导如何从零开始构建嵌入式Linux系统。内容涵盖编译环境搭建、交叉工具链配置、U-Boot引导程序编译与烧录、Linux内核定制与编译,以及使用Buildroot构建根文件系统,最终实现系统成功启动,帮助开发者深入理解嵌入式系统构建全流程。

tensor9flow的博客 574

MDB协议中设备级别和选项(Levels and Options)

MDB协议的LEVEL级别介绍

hbstart的博客 936

java端口代码_端口扫描程序java实现

怎么样扫描计算机系统本地和远程的端口,监测其是打开还是关闭的在很多应用程序中都要用到,下面是用java实现的简单的端口扫描程序。Source Code:http://www.gaodaima.com/40985.html端口扫描程序java实现------------------------------------------------------------------------------...

weixin_42172972的博客 465

ESP-SR实战:从零搭建智能语音唤醒与命令识别系统

本文详细介绍了如何利用乐鑫ESP-SR框架,从零开始搭建一个完整的离线智能语音交互系统。内容涵盖硬件选型(推荐ESP32-S3与数字麦克风)、开发环境配置(ESP-IDF与ESP-ADF),并深入解析了AFE声学前端、WakeNet唤醒词检测和MultiNet命令词识别三大核心模块的工作原理与实战配置。通过具体的代码示例和调试技巧,指导开发者快速实现高识别率的语音唤醒与命令控制功能。

weixin_29161785的博客 299

操作系统课程设计端口扫描程序:Java与WebSocket的巧妙结合

操作系统课程设计端口扫描程序:Java与WebSocket的巧妙结合 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在当今网络技术日益发展的背景下,端口扫描程序已成为网络安全领域的重要工具。操作系统课程设计端口扫描程序,便是一款基于Java语言、采用Spring Boot框架和WebSocket技术的优秀开源项目。它不仅能够帮助在校大学生掌握操作系统和网络编程的相关知...

gitblog_06729的博客 968

【CATIA的二次开发38】对象Selection交互选择部分方法介绍01

在CATIA V5的VBA开发中,Selection对象是用户交互的核心组件,用于管理用户在图形区域或特征树中的选择操作。Selection 对象是 CATIA VBA 中的中央交互枢纽,充当用户界面与程序逻辑之间的桥梁。它代表当前在图形区域或特征树中被选中的元素集合,是自动化操作的基础。

学习共勉:不积跬步,无以至千里; 不积小流,无以成江海。 1337

从原理到实践:MIPI D-PHY v1.2的HS-Deskew功能全解析(附时序图详解)

本文深入解析MIPI D-PHY v1.2的HS-Deskew功能,从技术背景到实现机制,详细介绍了其在2.5Gbps高速传输中的关键作用。通过时序图详解和实测数据,帮助工程师理解并应用这一技术,解决信号完整性问题,提升系统可靠性。

weixin_30300225的博客 307

Java多线程TCP端口扫描程序

import java.io.IOException; import java.net.InetAddress; import java.net.Socket; public class PortScanner { public static void main(String[] args) throws Exception { String host = "localhost"; InetAddress inetAddress = InetAddress.getByName(host); .

allway2的博客 614

Linux 服务器上部署 OpenClaw完整教程

2. 全局安装 OpenClaw 3. 初始化配置 配置模型提供商 方式一:使用配置命令(推荐) 方式二:直接编辑配置文件 在 部分添加: 配置多个模型提供商 如果你使用 Antigravity 本地代理,可以同时配置多个模型: 配置飞书集成 1. 创建飞书应用 访问 飞书开放平台 创建企业自建应用 记录 App ID 和 App Secret 2. 配置应用权限 在飞书开放平台,为应用添加以下权限:重要: 必须使用 长连接(WebSocket) 模式,不要使用 HTTP 回调!在飞书开放

Maynor的博客 5246

java 实现简单的端口扫描程序

实现思路:使用Socket类的connect(SocketAddress endpoint, int timeout) 方法,测试连接是否超时。使用多线程加快扫描速度。 package com.zhong.exam7; import java.net.InetSocketAddress; import java.net.Socket; import java.net.SocketAddress; import java.util.concurrent.ExecutorService; import jav

huayunliufeng的博客 437

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

TCP端口扫描程序设计 java gui

TCP端口扫描程序设计(可以扫描方式任意)要求: (1)可实现一种或多种扫描方式; (2)使用多线程扫描; (3)对扫描结果能够保存到文件中,也可以将保存文件中的结果在用户界面显示; ...

qq_35577329的博客 488

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

端口扫描程序(java)

<!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"

zgqtxwd的专栏 485

Java开发技术:Socket编程端口扫描小程序(完整源码)

Java开发技术:Socket编程端口扫描小程序(完整源码),我们都知道,网络中的每台机器都有IP地址,与IP地址密切相关的就是主机的端口,比如常见的80,443两个端口号对应的就是HTTP,HTTPS服务等等。下面我们就来实现一个简易的端口扫描小程序。本篇适用计算机网络、Java开发、Socket编程以及多线程入门的伙伴!可以结合上一篇《Java开发主机IP扫描神器》,进一步探测网络攻防有用信息!

陆海潘江的博客 8329
下一篇: FruityLoops开发团队漫画
Time-Traveller
博客等级 码龄18年 2粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值