ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:330.89KB ,
资源ID:18370148      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-18370148.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(信息安全课设哈工大.docx)为本站会员(b****0)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

信息安全课设哈工大.docx

1、信息安全课设哈工大Harbin Institute of Technology at WeihaiWebMail 解析作 者: 院 系:计算机科学与技术班 级: 学 号: 指导老师:需要源程序的留下联系方式 哈尔滨工业大学(威海)二零一二年六月目录1.前言 32.涉及的协议简介: 32.1HTTP协议简介: 32.2 TCP/IP协议简介: 43.程序设计思想: 44.程序函数设计: 55. webmail监控源程序 56. 相应截图及说明 91.前言随着网络的发展和普及,浏览网页、QQ聊天、电子留言、电 子邮件己经深入人们的生活。在众多的现代通信方式中,电子邮 件(E- mail)己经成为了

2、其中的重要组成部分。当电子邮件给人 们带来极大便利的同时,也带来了一系列的不安全因素:有害信 息的广泛传播、国家和企业机密的泄露等。为了控制和减少这些 不安全因素的发生,需要建立一系列的安全机制。对传输内容的 监控是较为重要的一种,在监控的过程中,对传输内容的还原又 是最重要的一步。此次实验目的是捕获webmail的登录账号与密码等信息。2.涉及的协议简介:2.1HTTP协议简介: 超文本传送协议 (HTTP) 是一种通信协议,它允许将超文本标记语言(HTML) 文档从 Web 服务器传送到 Web 浏览器。HTML 是一种用于创建文档的标记语言,这些文档包含到相关信息的链接。您可以单击一个链

3、接来访问其它文档、图像或多媒体对象,并获得关于链接项的附加信息。 HTTP工作在TCP/IP协议体系中的TCP协议上。 客户机和服务器必须都支持 HTTP,才能在万维网上发送和接收 HTML 文档并进行交互。 HTTP是一个属于应用层的面向对象的 协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。前一段时间用的是 HTTP/1.0,现在WWW中使用的是HTTP/1.1。而且HTTP-NG(Next Generation of HTTP)的建议已经提出。HTTP主要特征:1.支持客户/服务器模式。2.简单快速:客户向服务器请

4、求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。

5、另一方面,在服务器不需要先前信息时它的应答就较快。2.2 TCP/IP协议简介:Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层的层级结构,一层都呼叫它的下一层所提供的网络来完成自己的需求。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到

6、目的地。而IP是给因特网的每一台电脑规定一个地址。3.程序设计思想:1.解析http,还原出tcp报文。2.解析tcp,还原出ip报文。3.解析ip报文。4.查找post报文,找到username和password,把其中的参数打印出来。5.分析目的地址,源地址以及端口。6.设置循环,进行捕包。4.程序函数设计:1.http协议数据包解析函数:void http_callback。2.tcp协议数据包解析函数:void tcp_protocol_packet_callback。3. ip协议数据包解析函数:void ip_protocol_packet_callback。4.以太网数据包解析:

7、 void ethernet_protocol_packet_callback。5. webmail监控源程序#include packet.h#include void http_callback(u_char *arg,const struct pcap_pkthdr* pcaket_header,const u_char* packet_content,u_int len) const u_char* p = packet_content + 14 + 20 + len ; char buf1025; char buf11025; int i = 0; u_char* ps = strs

8、tr(p,POST); if(ps != NULL ) while(*ps+ & i tcp_source_port); destination_port = ntohs(tcp_protocol-tcp_destination_port); head_length = tcp_protocol-tcp_offset*4; printf(source port:%dn,source_port); printf(destination port:%dn,destination_port); switch(destination_port) case 80: http_callback(argum

9、ent,packet_header,packet_content,head_length); break; default: break; void ip_protocol_packet_callback(u_char * argument,const struct pcap_pkthdr * packet_header, const u_char * packet_content) struct ip_header * ip_protocol; ip_protocol = (struct ip_header*)(packet_content+14); printf(source addres

10、s :%sn,inet_ntoa(ip_protocol-ip_source_address); printf(destination address :%sn,inet_ntoa(ip_protocol-ip_destination_address); /如果是TCP协议 switch(ip_protocol-ip_protocol) case 6: tcp_protocol_packet_callback(argument,packet_header,packet_content); break; default: break; void ethernet_protocol_packet_

11、callback(u_char *argument,const struct pcap_pkthdr * packet_header, const u_char * packet_content) u_short ethernet_type; struct ether_header *ethernet_protocol; ethernet_protocol = (struct ether_header *)packet_content; ethernet_type = ntohs(ethernet_protocol-ether_type); /如果是IP数据包,则作进一步处理 switch(e

12、thernet_type) case 0x0800: printf(-n); ip_protocol_packet_callback(argument,packet_header,packet_content); break; default: break; int main() pcap_t *pcap_handle; char error_contentPCAP_ERRBUF_SIZE; char *net_interface; struct bpf_program bpf_filter; / 设置过滤字符串 char bpf_filter_string = tcp port 80; bp

13、f_u_int32 net_mask; bpf_u_int32 net_ip; /获取可用的网络设备 net_interface = pcap_lookupdev(error_content); pcap_lookupnet(net_interface,&net_ip,&net_mask,error_content); /打开设备 pcap_handle = pcap_open_live(net_interface,20480,1,0,error_content); /编译过滤规则 pcap_compile(pcap_handle,&bpf_filter,bpf_filter_string,0

14、,net_ip); pcap_setfilter(pcap_handle,&bpf_filter); /是否为以太网 if(pcap_datalink(pcap_handle) != DLT_EN10MB) return; /循环捕包 pcap_loop(pcap_handle,-1,ethernet_protocol_packet_callback,NULL); pcap_close(pcap_handle);6. 相应截图及说明1. 编译产生可执行文件watchwebmail。2运行watchwenbmail抓捕数据并把结果放入1.log日志文件中。2. 从1log中找到有用信息,例如目的地址,源地址,账号密码信息。Ps:如图可知source address(源地址):172.31.159.56 Destination address(目的地址):61.125.250.99 Source port(源端口):43732 Destination port(目的端口):80 Username:huangchongyuan89 Password:hcy090420226

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2