1、计算机网络系统实践报告 无代码版计算机网络系统实践报告2015 年 1 月一、设计要求1. 拟订口令破解方案;2. 实现一个功能比较简单的、具有图形界面的口令攻击系统,主线程响应用户界面操作,工作线程完成口令穷举攻击;3. 支持暴力破解和字典猜测法进行破解;4. 构造请求,对防御端目标机的进行口令猜解;5. 将破解后的口令和密码显示在窗口中。二、开发环境与工具Vc6.0三、设计原理1、 口令攻击原理网络上的用户常常喜欢用英文单词、自己的姓氏、生日或电话号码等自己熟悉的符号或数字作为口令,口令攻击正是利用了人的这种行为习惯,通过编程形成符合上述条件的所谓字典存储于计算机,然后自动地从字典中取出单
2、词或数字,作为用户的口令输入给远端主机,申请进入系统。若口令错误,则按序取下一个,循环往复,直到找到正确的口令为止。2、分布式攻击原理 利用socket套接字实现TCP Client/Server 交流,由server向个client主机发送命令,协同破解同一个目标。 3、登录网页原理利用HTTP协议,通过对已知登录方式的抓包分析,获取正确的HTTP请求数据实体部分格式,构建HTTP请求包,模拟浏览器远程登录。四、系统功能描述及软件模块划分 图1 系统模块图Server端:登录模块:处理server管理员账号密码匹配。初始化工程模块:设置客户端将要领取的具体任务,如要攻击的网点、将攻击的账号、
3、密码长度、密码区间。初始化客户端登录模块:设置允许的客户端账号、密码。监听模块:监听来自客户端上上线的请求,并处理是否允许。布置任务模块:向客户端发送任务。接受成果模块:监听收到客户端成功破解的账号密码等信息,记录在本地的project表中。处理断开:处理来自客户端下线请求。客户端:登录模块:想主机提交账号密码,等待登录。接受任务:向主机发送讯息获取工作任务。工作模块:客户端进入暴力破解线程。任务提交模块:破解成功后与server通信提交成果。中断处理模块:破解成功后已与主机断开连接成果将保存在本地的project表中。五、设计步骤 图2 server端状态转移图 图三 客户端状态转移图七、设
4、计结果图四 server端登录输入账号图五 server端成功登录图六 server端设置project HFUT网点登录类型student图七 设置暴力破解的密码长度为8图八 设置与客户端登录参数 端口:5000图九 客户端登录 输入server IP图十 客户端成功登录图十一 客户端收到server布置的任务图十二 客户端破解成功 密码部分已打码八、软件使用说明首先使用server端的账号密码登录输入sudo set project 根据提示设置破解的网点、账号、密码等输入sudo set program 根据提示设置端口等打开user端根据提示输入server IP 端口 账号 密码等待server回应等待暴力破解任务的完成断开连接九、参考资料1 Douglas R. Stinson 密码学原理与实践 冯登国 等译 电子工业大学出版社,2008.十、验收时间及验收情况老师提问了关于c/s 的实现方式、socket套接字的使用、线程的使用和对HTTP协议的掌握情况。能够比较流畅的回答问题。十一、设计体会通过此次课程设计,使我对Internet5层模型有了更深刻的认识我理解了IP协议在TCP的支持下如何选择路由,应用层如何在TCP协议的支持下 透明的传输数据,并且能够将网络同本专业特色结合编程,融会贯通了许多知识。但还存在很多不足,希望在以后的学习中继续进步。