基于Windows平台的渗透应用平台设计与实现
计算机实验室综合信息管理系统设计与实现

计算机实验室综合信息管理系统设计与实现摘要:本系统采用C/S结构,ASP为开发语言,SQL Server 2000为数据库,基于Windows平台来进行设计与开发。
本文主要阐述了计算机实验室管理系统的作用,存在的问题,管理系统的设计方法和实现的功能。
关键词:计算机实验室管理信息设计功能本系统采用C/S结构,ASP为开发语言,SQL Server 2000为数据库,基于Windows平台来进行设计与开发。
为更好地完成实验教学任务、充分利用计算机软硬件资源,开发先进的计算机实验室管理系统,建立规范化、信息化管理模式已成为实验室的趋势。
1 计算机实验室管理系统的作用计算机实验室管理系统的作用主要分三个方面。
1.1 课程管理主要包括计算机实验室课程排序,教师、班级与相应科目的安排顺序,学生作业的布置与回收等信息。
1.2 设备管理主要对计算机设备进行有效管理,系统通过对设备登记、条码打印、设备维修、设备调拨、设备借出与归还、保修预警和报废提醒、设备报废等实现计算机设备的全寿命管理。
1.3 学生课后时间使用管理主要包括上机卡的发放、计时的基本方式、读卡器的设置、上机情况的登记与统计等。
2 计算机实验室管理的存在的问题2.1 环境存在的问题由于计算机实验室是提供给全体学生上课使用,所以,课程安排多,使用频率密集,上机人员大多不愿意换鞋就进入实验室,空气质量差,灰尘在计算机内部不断积累,容易引起电路板老化和损坏。
因为计算机实验室使用空调,环境比较干燥,极易引起静电的产生,容易导致计算机硬件故障的发生。
2.2 计算机硬件故障多由于灰尘、温度、使用时间、机械磨损等因素,计算机实验室的硬件故障经常出现,给日常的实验教学工作带来了影响。
2.3 计算机系统及软件故障率高计算机实验室承担的教学任务重,为满足教学要求,每台计算机需安装多种操作系统,而每种操作系统又要安装各种应用软件。
这使得重新安装一台计算机系统要花费很长时间。
渗透系统知识点总结

渗透系统知识点总结一、渗透系统概述渗透测试是一种通过模拟黑客攻击的方式,评估和测试计算机系统、网络、应用程序等信息系统安全性的方法。
渗透测试的目的是发现系统漏洞和安全弱点,然后通过修复这些问题来提高系统的安全性。
渗透测试通常包括主机渗透测试、网络渗透测试、应用程序渗透测试等内容。
渗透测试系统是指用于进行渗透测试的一套工具、框架和平台,它们可以帮助渗透测试人员更有效地发现系统漏洞和安全弱点。
渗透测试系统通常包括渗透测试工具、渗透测试框架、操作系统和其他相关工具。
本文将对渗透系统的知识点进行总结,包括渗透测试的步骤、常用的渗透测试工具和框架、渗透测试操作系统等内容。
二、渗透测试的步骤渗透测试通常包括以下步骤:1. 信息收集:通过搜索引擎、社交媒体、WHOIS查询等方式,获取与目标系统相关的信息,包括IP地址、域名、子域名、主机配置等。
2. 脚本扫描:使用渗透测试工具进行脚本扫描,探测目标系统的开放端口、服务信息和漏洞。
3. 漏洞扫描:使用漏洞扫描工具对目标系统进行漏洞扫描,发现系统存在的安全漏洞。
4. 社会工程学:通过社会工程学技术(如钓鱼攻击、电话诈骗等)获取目标系统的用户凭据和机密信息。
5. 渗透测试:利用渗透测试工具模拟黑客攻击,获取目标系统的权限和控制权。
6. 数据收集:获取目标系统的重要数据,如数据库信息、文件系统、系统配置信息等。
7. 清理足迹:清理攻击痕迹,防止被发现并留下痕迹。
渗透测试的步骤可以根据具体情况进行调整,但通常包括以上内容。
在渗透测试系统中,渗透测试工具和框架是进行渗透测试的重要组成部分。
三、常用的渗透测试工具渗透测试工具是进行渗透测试的重要工具,下面介绍一些常用的渗透测试工具:1. Nmap:网络扫描工具,可以用于主机扫描、端口扫描和服务探测。
2. Metasploit:渗透测试框架,包含大量的渗透测试模块和Exploit,可以用于攻击、入侵和控制目标系统。
3. Burp Suite:用于Web应用程序渗透测试的集成平台,包含代理服务器、拦截器、扫描器等功能。
Windows下基于BPF模型的网络数据包截获模块的设计与实现

采用WinPcap库的sniffer的通用设计(编程)模型1. WinPcap概述WinPcap是Politecnico di Torino的NetGroup开发的基于Win32平台的包捕获和网络分析的基础构架,由UNIX下的libpcap库移植而来,用于用户层次的数据包截获工作。
它为底层网络监控编程提供了一个易于移植的应用框架。
WinPcap库和Libpcap一样,采用内核过滤机制,并且只支持BPF(Berkeley 分帧过滤器)接口的内核过滤。
如果主机上没有BPF机制.则所有的效据包都必须读取到用户空间后,再在WinPcap库中进行过滤处理,这样就会增加额外的处理负担,导致性能的下降。
2. BPF包过滤机制BPF 于1992 年被设计出来,其设计目的主要是解决当时已存在的过滤机制效率低下的问题。
BPF的工作步骤如下:当一个数据包到达网络接口时,数据链路层的驱动首先调用BPF进行过滤操作,然后把数据包存放在过滤器相关的缓冲区中,最后设备驱动再次获得控制,避免了类似sun 的NIT 过滤机制先缓冲每个数据包直到用户读数据时再过滤所造成的效率问题。
相对老式的过滤方式CSPF(CMU/Stanford Packet Filter)有两大特点:一是基于寄存器的过滤机制和而不是早期内存堆栈过滤机制;二是直接使用独立的、非共享的内存缓冲区,这大大提高数据包捕获的性能。
BPF在过滤算法上也有很大进步,它使用无环控制流图(CFG control flow graph),而不是老式的布尔表达式树(boolean expression tree),其优点在于把对数据包的分析信息直接建立在图中,从而不需要重复计算。
BPF由两个组件组成:BPF网络阀和数据包过滤器Filter。
通常在数据报到达网络适配器时,设备驱动程序会将数据报传递给协议栈的其它部分。
网络阀是个回调函数,从网络设备驱动程序处收集数据,并将它们传递给正在监听的应用程序。
基于PVE的中职网络攻防技术课程云实训平台的设计与实现

基于PVE 的中职网络攻防技术课程云实训平台的设计与实现文/珠海市第一中等职业学校高安邦一、引言随着信息技术的发展, 互联网已经 渗透到我们社会生活的方方面面。
互联 网在给我们的工作、生活带来便利的同时, 网络空间安全的形势也越来越严 峻。
尤其是最近几年,网络安全事件层 岀不穷,例如2013年的斯诺登事件、2017年的Wannacry 勒索病毒,等等。
这些网络安全事件给我们的隐私安全、 社会安全带来了极大的威胁,同时也给我们的网络空间安全教育敲响了警钟。
习近平总书记在2018年4月21日全国 网络安全和信息化工作会议上指岀,没有网络安全就没有国家安全, 就没有经 济社会稳定运行,广大人民群众利益也 难以得到保障。
2018年4月,教育部公布最新《学位授予和人才培养学科 目录》增设“网络空间安全” 一级学科。
在此基础上, 很多大学增设了网络 空间安全学院, 网络空间安全人才培养 体系逐步完善,网络安全人才培养方兴 未艾。
中职网络安全教育起步晚,基础薄 弱,面临着教学内容繁复、实验条件缺乏等现实问题。
中职网络攻防技术课程 的主要内容涵盖:操作系统渗透测试及加固(Windows 操作系统渗透测试及加 固、Linux 操作系统渗透测试及加固等)、Web 应用渗透测试及加固(SQL 注入、命令注入、文件上传等漏洞渗透测试及 加固)、BT5和KaliLinux 系统常见工具的使用等。
在课程实训过程中, 学生需要 使用到 WindowsXP 、Windows2003、Win-dows7、 Windows2008R2 等 Windows 系 列 的操作系统,以及BackTrack5、KaliLinux 、ubuntu 、CentOS 等 Linux 系列的操作系统。
相比于网络攻防技术课程对实训 环境的较高要求,我们当前的单机实训方式已经显露岀了很多缺陷和不足。
然而,要购买公司全套安全产品建立网络自动化作业, 机器人工作区域又不能超 岀其奇点范围。
(课程六)渗透测试及演示0422

渗透测试及演示
等级保护培训课程六
渗透测试
主要内容
第一部分:什么是渗透测试 第二部分:传统的渗透测试 第三部分:基于应用的渗透测试 第四部分:渗透测试的工具
第一部分 什么是渗透测试
第一部分:什么是渗透测试
渗透测试(Penetration Test)是完全模拟黑客可能使 用的攻击技术和漏洞发现技术,对目标系统的安全作 深入的探测,发现系统最脆弱的环节。 Penetration Test是一种沙盘推演的概念,通过实战和 推演让用户清晰地了解目前网络的脆弱性、可能造成 的影响,以便采取必要的防范措施
第二部分 传统的渗透测试 漏洞扫描工具
Nessus X-Scan 流光 ISS(Internet Security System)
第二部分 传统的渗透测试 主要手段
远程溢出:网络程序中的某个或某些输入函数对所 接收数据的边界验证不严密而造成超出边界的部分 覆盖后面的存放程序指针的数据,当执行完上面的 代码,程序会自动调用指针所指向地址的命令。入 侵者可以精心构造shellcode来进行恶意入侵。 本地溢出:溢出的原理与上面相同,只是接受的数 据是本地输入的。一般在获得低权限后通过该方法 提升权限来执行系统级的操作。
后攻击
目的: 消除痕迹,长期维 持一定的权限 内容: 删除日志 修补明显的漏洞 植入后门木马 进一步渗透扩展 进入潜伏状态
渗透测试-第一部分 什么是渗透测试 渗透测试流程
第二部分 传统的渗透测试
第二部分:传统的渗透测试
数据库系统渗透 应用系统渗透
◦ 对渗透目标提供的各种应用,如ASP、CGI、JSP、PHP等组成 的WWW应用进行渗透测试。 ◦ 对MS-SQL、ORACLE、MYSQL、INFORMIX、SYBASE、 DB2等数据库系统进行渗透测试
基于HBuilder快速开发移动端APP的设计与实现

基于HBuilder快速开发移动端APP的设计与实现1. 引言1.1 背景介绍随着移动应用市场的不断扩大和升级,基于HBuilder快速开发移动端APP的设计与实现备受关注。
本文旨在探讨HBuilder开发工具的特点和优势,介绍移动端APP设计流程,详细阐述HBuilder快速开发移动端APP的步骤,并通过实例分析和优缺点比较,总结出基于HBuilder开发移动端APP的一些经验和规律,以期为开发者提供参考和借鉴。
通过本文的研究,希望能够为移动应用开发领域的进一步发展提供一些启示和建议。
1.2 研究目的本研究旨在探讨基于HBuilder快速开发移动端APP的设计与实现方法,通过深入研究HBuilder开发工具和移动端APP设计流程,以及探讨HBuilder快速开发移动端APP的步骤,从而为开发人员提供有效的参考和指导。
具体目的包括:1. 探究HBuilder开发工具的特点和优势,从而更好地了解如何利用该工具进行移动应用开发;2. 分析移动端APP设计流程,深入了解移动应用开发的整体流程和关键要素;3. 探讨HBuilder快速开发移动端APP的具体步骤和方法,为开发人员提供实用的开发经验和技巧;4. 通过实例分析,展示HBuilder快速开发移动端APP的实际应用效果和优势;5. 比较HBuilder快速开发移动端APP的优缺点,为开发人员提供更全面的了解和选择参考。
通过以上研究目的,本研究旨在为开发人员提供实用的指导和建议,促进移动应用开发的效率和质量提升。
1.3 研究意义移动应用已经成为人们日常生活中不可或缺的一部分,而基于HBuilder快速开发移动端APP的设计与实现具有重要的研究意义。
随着移动互联网的快速发展,移动应用市场愈发竞争激烈,开发者需要快速、高效地发布新应用来抢占市场份额。
基于HBuilder的快速开发工具可以大大缩短开发周期,提高开发效率,有助于开发者更快速地响应市场需求。
WE6:实时高效Windows平台IPv6网络模拟器设计与实现
中图分类 号 :T 3 19 P 9 .
文献标志码 :A
文章 编号 :10 — 6 5 2 0 ) 82 0 — 3 0 13 9 ( 0 8 0 —5 2 0
De i n a d i lme tto fr a —i n fe tv sg n mp e n ai n o e ltme a d ef ci e
n toke ltr f n o sfrIv WE ) e r muao d w 6( 6 w o Wi o P
L u - e J h—a g D I ufn I e i, I Z i n , A — g X j N g J e
( colfEetnc nier g 0 nvrt,Taf 00 2 hn ) Sho o l r i E gnen , nU i sy inn30 7 ,C ia co s i ei i
Ab t a t Wi h e el p n fI tr e ,n w po o o sa d n t o k e u p n sa e r q i d t d v lp ti n c say sr c : t te d v me to ne n t e r tc l n ew r q ime t r e ur o e eo .I s e e s r h o e t e tte n w p oo o sa d n t o k e up n s e t n ie y b  ̄r e ly n . l sp p rp o o e h e in a d i l — o ts h e rt c l n ew r q ime t xe sv l e e d p o me t h a e r p s d t e d sg n mp e I i me tt n o NE ,a u e be a d a c rt ew r mu ao h c u p s d b t P 4 a d I v r tc l.B s e ,i a . n ai fRE W o s a l n c u ae n t o k e ltrw ih s p o e oh I v n P 6 p oo os e i s t 1 d S r e n W id ws lf r O wo k d o n o a o m.I P 6 tsb d. s d RE W mu aev r u ewo kc aa tr t sa d c n i o si . p n I v t e i u et n e t o o sc i n
基于Windows Mobile的IMS终端通话业务的设计与实现
4 在模拟器 的开始处 一 设置 一 连接 一》 ) 》 》 网卡 一》 配 置 网络适 配器 一》 用 特 定 的 I 址 一》 写相 使 P地 填
应 I 息 和 D S服务 器地 址 。 P信 N
Wid w bl n o sMoi e开发 环境 配置 如 图 1所示 。
N 2 0兼 窖 E h r et 动程 序 E OO ten 驱
收 稿 日期 :0 91 —1 2 0 —11
! 匾亟亟 二二二二二 塑 二 I
图 1 W id w o l 开 发 环 境 配 置 n o s bi M e
一
81 —
12 I . MS终端 设计 思路
便 于当前 的终端 地址 可 以被 发现 。 与非 I MS不同 , 在 SP注册过程 中结合 了 I MS I
之 处 , 要 支持更 多 的 功 能 , 构 也更 加 复 杂 , 于 需 结 对
P / m r h n 模 拟 器 结 合 A t e y c同 步 工 具 来 C S at o e p ci Sn v 搭建 。本 文采 用模 拟器 开发 , 体配置 步骤 如下 : 具 1 安 装虚 拟 网卡 , P ) 与 C机 共享 I 址 ; P地 2 在 V sa Su i 2 0 ) i l tdo 0 5启 动 连接 工 具 , u 同步 模
基于LAMP平台的问卷调查系统的设计与实现
基于LAMP平台的问卷调查系统的设计与实现[摘要] 随着internet技术的飞速发展,在线问卷调查作为一种信息反馈和信息互动方式,越来越受到各行各行关注和使用。
本文开发了基于lamp平台的问卷调查系统,并对lamp平台、系统设计与实现作了详细的介绍。
并对该系统的总体方案、功能设计与实现和特点作了详细的介绍。
[关键词] 问卷调查系统在线调查 lamp引言问卷调查作为一种信息反馈和信息互动方式,越来越受到各行各业的关注和使用。
然而传统手工方式问卷调查无论在实施成本、时效、调查范围等方面都受到极大的制约。
随着通信技术的发展,网络的普及,构建基于网络的在线问卷调查系统具有非常重要实用价值和广泛的应用前景。
lamp是基于linux,apache,mysql和php的开放资源网络开发平台,每个程序在所有权里都符合开放源代码标准。
随着开源潮流的蓬勃发展,开放源代码的lamp已经与j2ee和.net商业软件形成三足鼎立之势。
本文采用lamp开发平台,设计并实现了网上在线问卷调查系统。
该系统以在线信息反馈、互动沟通平台的实质用问卷的形式与调查、回访、跟踪对象进行信息互动。
实现互动方便、快捷、低成本的大规模的信息发送和回收,并对回收数据的进行综合分析。
mp平台介绍通过分析研究、本系统采用b/s模式的n层网络体系结构。
从稳定性、安全性以及经济性的角度考滤,采用了当前流行的lamp (linux+apache+mysql+php)平台。
lamp平台由四个组件组成,呈分层结构。
每一层都提供了整个软件栈的一个关键部分:linux:linux处在最低层,提供操作系统。
其他每个组件实际上在linux上运行。
但是,并不一定局限于linux,如有必要,其他组件也可以在microsoft® windows®、mac os x或unix®上运行。
apache:次低层是apache,它是一个web服务器。
基于Web的图书管理系统的设计与实现(三稿)
摘要随着时代的发展,在现代中小型图书管理系统中,如何方便快捷地为用户提供服务、提高图书的利用率等问题变得越来越突出。
借助网络,在图书管理和用户之间建立一个交互的电子平台,将大大提高中小型图书管理的管理水平和现代化程度。
图书管理系统正是趋于这个目标而设计,主要实现了5个方面的功能:1.图书查询,对图书进行查询,可查询书本的当前状态和相关信息;2.借阅管理,包括书籍借阅和书籍归还的管理;3.图书管理,主要实现书库的管理和书籍的管理,包括书库的建立和删除,新书的入库和废书的删除等;4.会员管理,是对会员信息和借阅进行管理;5.系统管理,是对系统的权限管理。
系统设计突出充分利用JSP技术的MVC设计模式、J2EE开发中流行的组合框架SSH(Strust+Spring+Hibernate)技术和MYSQL数据库技术设计和实现了一个基于Web的图书管理系统。
系统要解决的图书管理所要解决的问题,可以满足图书管理基本要求,包括添加、修改删除管理等功能。
系统能根据用户的需求,快捷方便的为读者提供借阅服务。
关键词:图书管理,MVC,框架,SSH,MYSQL数据库The library management system based on Web of design and implementationABSTRACT:With the development in modern small library management system, how to quickly and easily provide users with services, enhancing the utilization of other issues become more prominent. With the network, the library management and user interaction between a e-platform will greatly enhance the management of small and medium level of library management and modernization. Library management system is designed to tend to this end, the main achievement of the five functional areas: one. Book inquiries, check books, check books can be the current status and related information; two. Lending management, including the lending library, and Books returned to the management; three. library management, the main stacks of the management and implementation of management books, including the stack room of the building and removed, new books, book storage and waste removal, etc.; four. member of management, is a member of loan for information and Management; five. system management is a system of rights management. System design using JSP database development tools and MYSQL5.0 to develop the library management system. Library management system to be solved to solve the problem of library management to meet the basic requirements, including add, modify, remove management. System according to user needs, provide readers with fast and convenient loan services.Keywords:Literature management system; Information management; JSP第一章系统需求分析1.1引言随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现图书信息的管理势在必行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2019年8月10日第3卷第15期
现代信息科技
Modern Information Technology Aug.2019
Vol.3 No.15
1112019.8
基于Windows平台的渗透应用平台设计与实现郭永帅,王胜和,付顺顺(安徽公安职业学院,安徽 合肥 230031)摘 要:为针对不同场景的网络违法犯罪案件,简化工作人员渗透效率、学习效率,对不同种类的渗透工具进行整合,设计基于Windows系统采用三层结构模式的渗透应用平台。以C/S架构中的Java Swing轻量级框架,使用MVC(模型-视图-控制器)体系结构实现应用平台,完成对应用平台的功能性测试,满足不同场景的渗透应用,提高网络违法犯罪案件的渗透应用率,增加办案人员对渗透方法的学习效率。关键词:Windows平台;渗透应用平台;Java Swing;C/S架构中图分类号:TP316 文献标识码:A 文章编号:2096-4706(2019)15-0111-03
Design and Implementation of Application Platform forPenetration Based on Windows PlatformGUO Yongshuai,WANG Shenghe,FU Shunshun(Anhui Public Security College,Hefei 230031,China)
Abstract:In order to break different scenarios of cyber crimes,simplify the penetration efficiency and learning efficiency of staff,
integrate different kinds of penetration tools,a three layer structure model penetration application platform based on Windows platform is designed. Using Java Swing lightweight framework in C/S architecture,the application platform for penetration is implemented by MVC (Model-View-Controller) architecture,and the functional test of the application platform is completed. This platform meets the application of penetration in different scenarios,improves the penetration rate of cyber crime cases,and increases the learning efficiency of staff.Keywords:Windows platform;penetration application platform;Java Swing;C/S architecture
收稿日期:2019-06-03基金项目:安徽省2018年度重点研究与开发计划项目:基于网安大数据的智能导侦、主动防控及实战实训平台研究(项目编号:1804d08020315);安徽公安职业学院校内重点项目:BadUSB攻防技术研究(项目编号:XN2020ZDB51)。
0 引 言网络违法犯罪案件的渗透方式可谓多种多样,并且应用场景也是各有不同。但是常用的网络违法犯罪案件的渗透工具的种类繁多,针对不同场景渗透方式的应用,研发一种适应于不同渗透方式应用场景的渗透平台[1],对网络违法犯罪案件
渗透效率的提高十分有必要。与此同时,网络违法犯罪案件的渗透工具大多集成在Linux系统环境之下,如Kali Linux、Backbox Linux操作系统,对于渗透测试的学习还需要学习Linux系统的运作,这对渗透方式的推广与应用十分麻烦,所以基于Windows系统的渗透应用平台的研发更加重要。
1 设计渗透应用平台的基本思想渗透应用平台的目的是为了提高渗透方式的应用率,并提供一个供渗透应用的场景。同时,渗透应用平台[1]还有助于学习人员高效的学习网络渗透测试技术,省略渗透学习人员对Linux系统学习的时间,渗透应用平台将会集成主流的信息收集工具、渗透工具,同时包含任务视图、录像功能,方便渗透以及保存训练记录,为渗透学习人员提供一个更合适的环境。[2]2 渗透应用平台的结构与功能渗透应用平台共分为三层,分别为数据层、业务层、显示层。数据层对应开发人员调试模块以及资源库;业务层包括任务模块、信息收集模块、漏洞扫描及利用模块;显示层则是用户操作界面,并实现登录界面,屏幕录制功能,如图1所示。渗透手段应用平台模型
漏洞扫描及利用模块用户操作界面任务模块信息收集模块开发调试模块显示层业务层数据层资源库图1 渗透应用平台框架2.1 数据层数据层中包含的两个模块分别为开发调试模块和资源库。开发调试模块是保证开发的持续性,以及方便后期添加接口、渗透工具等。资源库是指渗透测试中所调用的代码库、第15期现代信息科技1122019.8
漏洞库、代理服务器等。2.2 业务层业务层主要根据用户输入的指令完成相应的操作,并将得到的数据返回给显示层,完成与数据层的交互。例如:根据Burpsuite调用浏览器的响应,Nmap查询网站服务器显示结果等。业务层一共包括三大模块,分别为:任务模块、信息收集模块[3]、漏洞扫描及利用模块。各部分模块功能如下:(1)任务模块:对训练任务建立导航式管理,用户可建立任务、记录操作、保存记录等。包含的功能有:任务建立、添加、删除、管理等。(2)信息收集模块:对应渗透测试中的信息收集步骤,集成浏览器、信息收集软件Nmap,实现渗透学习人员对非法网站的信息收集。(3)漏洞扫描及利用模块:对应网络扫描、漏洞挖掘及漏洞利用步骤,模块集成Windows环境下的网络扫描工具、漏洞挖掘利用工具,使渗透人员可在Windows环境下应用各种工具的渗透技术。2.3 显示层显示层提供用户操作界面,用户操作界面以平台图形化形式出现,并将上述数据层以及业务层接口分类提供。3 相关开发技术渗透应用平台主要是集成一些渗透常用的工具,并添加任务管理模块,用于渗透技术学习使用。基于渗透速度、安全性、操作性的考虑,选取C/S架构中的Java Swing轻量级框架来实现。3.1 C/S架构C/S架构是指Client/Server模式,分为客户机和服务器两端,C/S的架构的优点在于:(1)软件运行速度快,能充分发挥客户端PC机的处理能力,响应速度快。(2)C/S安全性要充分高于B/S模式,这是渗透人员必须要考虑的。(3)稳定性,在渗透中,渗透一半程序宕机这是十分不能容忍的,客户端软件相对浏览器组件稳定性要高很多。3.2 Java Swing框架Java Swing是一个用于开发Java应用程序用户界面的轻量级开发工具包,是由纯Java代码实现的。Java Swing以AWT(Abstract Window Toolkit,抽象窗口工具包)为基础设计而成,有独特的外观风格设计,不依赖操作系统,可以跨平台使用,可移植性高,具有开发平台的优势。[4]Java Swing只需要用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。Java Swing的容器分为三个:顶层容器、通用容器和专用容器。顶层容器可以独立存在,包括JFrame(窗口)、JDialog(对话框)、JApplet(Java小程序)、JWindow(程序启动组件)。中间容器不能独立存在,必须放在顶层容器内,且能够容纳其他控件,包括JPanel(普通面板)、JScrollPane(滚动面板)、JToolBar(工具栏面板)、JSplitPane(分割式面板)、JTabbedPane(选项卡面板)。同时还包括一些基本组件。Java Swing具有以下优点:(1)重量轻。Swing组件是独立的原生操作系统的API与Swing API控件呈现大多采用纯Java代码,而不是底层的操作系统调用。(2)丰富的控件。Swing提供了一套丰富的先进的控制系统,如JTabbedPane,滑块,颜色选择器,表格控件。(3)高度定制性。Swing控件可以定制视觉外观,根据用户
的需求来调整界面。(4)可插拔的外观和感觉基于Swing GUI应用程序外观和风格基于可用值,可以在运行时改变。3.3 MVC框架Swing组件设计使用了著名的MVC(模型-视图-控制器)体系结构。MVC是指Model(模型)、View(视图)、Controller(控制器)三部分的缩写,MVC是指将逻辑化的图形用户界面和代码相结合,在对应的控制器组件上编写代码,使用组件组成完整的用户界面视图,从而形成用户与机器、平台与平台之间的数据相互传递。[5]MVC框架可以强制性地让应用程序的输入端、输出端、数据处理端分开,而使用MVC组件自身的模型、视图、控制器来完成相应的任务。视图就是用户接触到的界面,可以操作输入输出的界面等等,MVC的优点在于可以并行处理不同组件的界面,让它们同时相互配合达到最优化输出。模型的主要目的一方面是为了让程序员对组件的编码简约化,另一方面则是在程序框架中方便搭建、组成。模型之间的数据处理会让整个程序变地十分优化,并且简化开发过程。控制器就是用户对模型视图的控制,用户发送指令输出给模型,模型对应视图做出相应的请求以及变化,完成整个操作。
4 渗透应用平台的实现4.1 显示层子系统的实现显示层模块主要是用户看到可以操作的界面,界面上有不同的分区以及模块,用户可以根据个人的需求进行选择,显示层的平面图如图2所示。
菜单栏
任务窗口任务列表
标签栏工具栏
图2 显示层平面图显示层菜单栏对应为文件、信息收集、漏洞利用等。工具栏对应渗透测试相应的工具,如Nmap、Burpsuites、Explorer、W3af、Openwas、Nessus等等。任务列表则是任务导航栏,显示训练任务内容列表以及时间等选项。标签栏则是实现可以同时打开不同工具,同时进行渗透。任务窗口是界面主窗口。平台通过主函数继承LoginFrame(登录框架)进入登录界面,登录之后,通过LoginFrame继承MainFrame(平台主框架),进入主界面,主界面调用CreateCaseFrame实现创建训练任务创建,同时调用TabAction、CaseAction、ListAction在工具栏,任务列表出实现点击使用功能。显示层中标签栏的实现首先建立基本的标签栏BaseTab-View,继承TablePanelManager标签管理类,实现标签的添加删除等操作。然后通过WelcomeTab(标签起始页)、NmapTab(Nmap标签栏)、BrowerTab(浏览器标签了)