0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于C++的网络扫描器设计

jf_Vqngj70R 来源:美男子玩编程 2023-06-08 09:39 次阅读

很多计算机专业大学生经常和我交流:毕业设计没思路、不会做、论文不会写、太难了......

针对这些问题,决定分享一些软、硬件项目的设计思路和实施方法,希望可以帮助大家,也祝愿各位学子,顺利毕业!

目前主流的网络扫描器,大多数采用的是命令行界面,用户使用的门槛相对较高,可视化的图形界面旨在提供给用户一个友好的使用环境,这种用户—界面的体系结构深受广大喜爱。它不需要用户去熟记过多的参数,只需要填入相应的关键信息,通过鼠标点击选择即可完成,大大降低了操作使用的难度。

1系统目标

本设计的最终目标是打造一个具有多种扫描功能的网络扫描器。该扫描器具有以下功能:

可视化的图形界面,旨在为用户提供友好的使用环境。

实现一些基本的扫描任务,如读取到目的主机的软硬件信息,开放的端口等等。

帮助用户去自动生成符合用户心理的扫描结果报告,并将扫描结果以文件的形式展现出了。

其对应的整体层次设计图如下图所示:

b143ed46-0569-11ee-8a94-dac502259ad0.png

2系统原理

管理员站在攻击者的角度去看网络扫描器的工作原理,一切都变得清晰易懂。作为一个攻击者,管理员会考虑首先去搜索网络上存活的主机,选择其中某一些主机作为管理员攻击的目标,管理员再通过向目标主机发送数据包,通过分析反馈的数据包,寻找可能存在的安全隐患,通过利用这些安全隐患去模拟尝试攻击,找到修复该安全隐患的解决方案,从而达到修复漏洞的目的。网络扫描器的工作原理如下图所示:

b163523a-0569-11ee-8a94-dac502259ad0.png

3系统设计

3.1、主机扫描模块

主机扫描就是扫描网络中可能存在的主机,主要是通过向特定的主机或者目的 IP 发送构造的 ICMP 协议包来确定目标网络上的主机是否可达。其流程图如下图所示:

b17e0e86-0569-11ee-8a94-dac502259ad0.png

3.2、端口扫描模块

对某一 IP 段目标主机 IP 的一段端口逐个连接,通过发送数据包对目标主机进行通信,根据反馈回来的数据包信息判断该主机的开放状态,根据其开放端口所对应的主机服务去有针对性的发起相关的服务缺陷攻击。其流程图如下图所示:

b18ef926-0569-11ee-8a94-dac502259ad0.png

3.3、NetBIOS 扫描模块

对网上基本输入输出系统 NetBIOS 协议而言,它作为应用层上的一种特殊的协议,它常常被用来管理局域网上的主机,通过该协议的相关约定,管理员可以很方便的读取到局域网上相关目标主机可拥有的相关属性的详细信息。其流程图如下图所示:

b1994f84-0569-11ee-8a94-dac502259ad0.png

3.4、SNMP扫描模块

简单网络管理协议 SNMP 是对智能终端设备做简单管理,管理员可以利用该协议的相关约定去获取支持该协议的各种设备的详细的信息。其流程图如下图所示:

b1a9bc3e-0569-11ee-8a94-dac502259ad0.png

3.5、弱密码扫描模块

弱密码扫描是逐个对目标主机的用户名和密码进行扫描,依次穷举遍历所有的用户名和密码的组合,用遍历生成的密码去逐次尝试验证。通过密码验证系统给出的正确或错误的反馈来判断是否成功获取到了用户的信息。其流程图如下图所示:

b1c48ab4-0569-11ee-8a94-dac502259ad0.png

3.6、嗅探器扫描模块

嗅探器扫描是对所接收到的所有数据包进行实时监听,然后依次与监测关键字进行匹配,筛选出那些关键信息。其流程图如下图所示:

b1d6eb82-0569-11ee-8a94-dac502259ad0.png

3.7、DOS攻击模块

DOS 攻击是对目标 IP 的特定端口采用指定的线程数去发送大量的数据和连接请求,不断的消耗目标主机的资源,从而造成目标主机连接资源耗尽,导致其它主机无法使用这些连接资源。其流程图如下图所示:

b1e8dcc0-0569-11ee-8a94-dac502259ad0.png

3.8、注入检测模块

由于程序员及软件设计师在编写程序或设计相关软件模型的过程中出现了设计缺陷,导致非法用户可以通过构造一系列特殊的字符串去拼接到软件的缺陷部分,从而导致非授权用户可以绕过系统验证而读取到数据库中的隐私数据,从而造成信息的泄露,造成巨大的损失。其流程图如下图所示:

b206bc9a-0569-11ee-8a94-dac502259ad0.png

3.9、报告生成模块

报告生成是网络扫描器所提供的任意多种扫描功能对目标 IP 的扫描结果进行汇总,最终以报告的形式打印出来,提供了 html、txt 和 xml 三种打印格式。其流程图如下图所示:

b22f593e-0569-11ee-8a94-dac502259ad0.png

4系统实现

4.1、工作流图

网络扫描器主要工作流程图如下图所示:

b252b3b6-0569-11ee-8a94-dac502259ad0.png

4.2、界面设计

4.2.1、主界面

网络扫描器主界面如下图所示:

b26f2172-0569-11ee-8a94-dac502259ad0.png

4.2.2、子界面

网络扫描器共实现了九个功能模块,下面管理员分别看看这九个功能模块的子界面。

下图的是主机扫描功能模块的界面:

b283511a-0569-11ee-8a94-dac502259ad0.png

下图展示的是端口扫描功能模块的界面:

b2945212-0569-11ee-8a94-dac502259ad0.png

下图展示的是 NetBIOS 扫描功能模块的界面:

b2a8f38e-0569-11ee-8a94-dac502259ad0.png

下图展示的是 SNMP 扫描功能模块的界面:

b2bb8468-0569-11ee-8a94-dac502259ad0.png

下图展示的是弱密码扫描功能模块的界面:

b2d2f026-0569-11ee-8a94-dac502259ad0.png

下图展示的是嗅探器扫描功能模块的界面:

b2e94060-0569-11ee-8a94-dac502259ad0.png

下图展示的是 DOS 攻击功能模块的界面:

b302d386-0569-11ee-8a94-dac502259ad0.png

下图展示的是注入检测功能模块的界面:

b3193220-0569-11ee-8a94-dac502259ad0.png

下图展示的是报告生成功能模块的界面:

b3330574-0569-11ee-8a94-dac502259ad0.png

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 计算机
    +关注

    关注

    19

    文章

    7393

    浏览量

    87683
  • 网络
    +关注

    关注

    14

    文章

    7505

    浏览量

    88594
  • C++
    C++
    +关注

    关注

    22

    文章

    2104

    浏览量

    73470
  • 扫描器
    +关注

    关注

    0

    文章

    153

    浏览量

    11888

原文标题:毕业设计So Easy:基于C++实现网络扫描器

文章出处:【微信号:美男子玩编程,微信公众号:美男子玩编程】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于ESP8266微控制的Wi-Fi网络扫描器

    一些比较实用的无线电设备,例如Wi-Fi网络热点扫描器。 图1.Wi-Fi网络扫描器的概念图。 在本篇文章中,我们将主要介绍ESP8266微控制
    发表于 11-10 11:55 2707次阅读

    基于ESP8266微控制的简单的Wi-Fi网络扫描器制作

    在本篇文章中,我们将主要介绍ESP8266微控制的内部工作原理,以及如何仅使用几个现成的电子组件来制作一个简单的Wi-Fi网络扫描器
    的头像 发表于 01-09 12:03 4697次阅读
    基于ESP8266微控制<b class='flag-5'>器</b>的简单的Wi-Fi<b class='flag-5'>网络</b><b class='flag-5'>扫描器</b>制作

    netTAP网关在SICK条码扫描器通讯上的应用

    本文介绍了如何利用赫优讯协议转换网关实现PROFIBUS现场总线和SICK条码扫描器串行通信网络间的通讯。
    发表于 04-10 10:38 27次下载

    用作扫描器的光电隔离电路

    用作扫描器的光电隔离电路
    发表于 12-23 17:38 700次阅读
    用作<b class='flag-5'>扫描器</b>的光电隔离电路

    飞点扫描器扫描报警电路图

    飞点扫描器扫描报警电路图
    发表于 06-29 13:10 537次阅读
    飞点<b class='flag-5'>扫描器</b>的<b class='flag-5'>扫描</b>报警电路图

    HR3220的无线扫描器用户手册

    本手册主要向用户介绍NLS-HR3220系列无线式二维条码扫描器(以下简称HR32无线扫描器扫描器)的使用方法。
    发表于 09-20 18:49 12次下载

    关于二维影像扫描器益处分析和应用

    根据美国知名市场调研公司VDC在2013年的一份报告中预测:未来三年,影像扫描器的销量将以13.4%的速度增长,激光扫描器则将下降7.3%。究其原因,主要是配置影像技术的二维扫描器具有高性价比、耐用、可替代激光
    的头像 发表于 10-18 09:18 2982次阅读

    无线蓝牙扫描器应该怎么选购?有哪些注意事项?

    扫描器用于扫描条码,有的可以扫一维码,有的既可以扫一维码又可以扫二维码,通讯模式方面,扫描器可以通过无线蓝牙传输,比有线的方便一些。那么,无线蓝牙扫描器应该怎么选购?有哪些注意事项?
    发表于 08-07 17:40 706次阅读

    新大陆NVF230扫描器的特性介绍

    在大数据时代,很多企业都开始使用数据采集来进行数据收集,比如比较常见的汽车配件行业,近来就有一家汽配生产企业,需要能够扫描汽车油泵电机,不知道要选择之一哪款扫描器好。随着扫描器行业的
    发表于 07-16 10:49 1282次阅读

    I2C扫描器开源硬件

    电子发烧友网站提供《I2C扫描器开源硬件.zip》资料免费下载
    发表于 12-29 11:29 1次下载
    I2<b class='flag-5'>C</b><b class='flag-5'>扫描器</b>开源硬件

    XSS漏洞扫描器工具

    XSpear是一款基于RubyGems的的XSS漏洞扫描器。拥有常见的XSS漏洞扫描攻击测试功能。还可进行参数分析。
    的头像 发表于 01-17 09:28 1813次阅读

    NanoBeacon™ BLE扫描器教程

    到目前为止,我们已经发布了三个关于使用我们新的NanoBeacon™ BLE扫描器移动应用程序的教程。
    的头像 发表于 06-02 14:35 618次阅读
    NanoBeacon™ BLE<b class='flag-5'>扫描器</b>教程

    Android Things I2C地址扫描器

    电子发烧友网站提供《Android Things I2C地址扫描器.zip》资料免费下载
    发表于 06-13 17:02 0次下载
    Android Things I2<b class='flag-5'>C</b>地址<b class='flag-5'>扫描器</b>

    红光条码扫描器、固定式扫描器广泛应用于工业制造领域

    随着科技的不断进步,电子制造业、汽配行业、生产流水线等工业制造领域离不开红光条码扫描器。作为专用于扫描条码、二维码的扫描器,它在工业领域中扮演着重要的角色,因为它们可以帮助企业提高生产效率、减少
    的头像 发表于 05-12 16:11 761次阅读
    红光条码<b class='flag-5'>扫描器</b>、固定式<b class='flag-5'>扫描器</b>广泛应用于工业制造领域

    什么是固定式条码扫描器?固定式扫描器怎么选?

    1.产品特性固定式条码扫描器以其高度的可靠性而闻名。这种设备的设计旨在提供无与伦比的性能,无论是在高速扫描还是长时间持续工作的环境下。其多种扫描模式使其能够适应各种不同的应用环境,无论是需要快速
    的头像 发表于 05-23 14:47 484次阅读
    什么是固定式条码<b class='flag-5'>扫描器</b>?固定式<b class='flag-5'>扫描器</b>怎么选?