这个是http文件传输的一种格式,当时不知道这种格式,废弃。

HTTP的上传文件实例分析

由于论坛不支持Word写文章发帖。

首先就是附件发送怎么搞,这个必须解决。论坛是php的。我用Chrome类浏览器跟踪请求,但是上传的文件流怎么发过去没找到,估计流可能多或者什么的不好显示,只知道发送了文件名字。需要实际了解下post文件,不能只会后台或界面不了解前台数据处理和协议怎么传送数据。

图中:有些相关文章 HTTP请求中的form data和request payload的区别 AJAX POST请求中参数以form data和request payload形式在servlet中的获取方式

Multipart/form-data POST文件上传详解 《RFC 1867 -Form-based File Upload in HTML

结构和我曾经通过Smtp提交带有软件BUG附件的形式相似。。。有边界。。。

所以使用抓包工具,如WireShark。机器64位。Ip = 118.192.48.35.

WireShark过滤下好看。前两个是删除文件,后两个才是上传,可以看到有个GIF89a字样。

然后选择后两个其中一个右键菜单-选择Follow TCP Stream,做的事情就是TCP数据包重组。弹出对话框如下:

流的内容出现的顺序同他们在网络中出现的顺序一致。从A到B的通信标记为红色,从B到A的通信标记为蓝色。即请求request为红色,response为蓝色。

从中看出有两次完整来回交互,其中第二个才是文件流。

GIF89a.......^K..w............h......!..NETSCAPE2.0.....!...d...,..........&h..*0.%....1,...u..a...U.X.....f. *Mo$.!.......,...........XS....I. ....!.......,..............A.H...!.......,...........XS....9..%..!.......,...........X.;.PEFk..!.......,...........XS....9..%..!.......,...........X.;.PEFk..!.......,...........XS....9..%..!.......,...........X.;.PEFk..!.......,...........XS....9..%..!.......,...........X.;.PEFk..!.......,...........XS....9..%..!.......,...........X.;.PEFk..!.......,...........X.V.....!.......,............U

..;

文件内容格式Content-Type为image/gif,然后是流数据(标头+回车换行(0x0d+0x0a)+文件二进制),这里ASCII展示了,不可打印字符为点号表示。

这里把选中内容直接复制出来到WinHex粘贴不行,复制到点号时就不行了。

需要点选Save As保存Raw形式文件,然后到winhex打开找到它。

步骤是Ctrl+F输入gif。

继续找到目标,然后选择目标内容,ODOA(出车换行)开始和结束,如图。

选中后就会一直选中,在任意位置右键保存到文件就可以dump出来了。文件为

对于后面的html以gzip编码一样,步骤dump出来,保存为windows保存为zip后缀吧,这样直接rar打开。

至http解压出文件结束。

增强域名注册账户和DNS管理账户安全-防止域名被盗和域名恶意解析

站长故事:网站域名被盗的经历 http://www.williamlong.info/blog/archives/99.html

HTTP的上传文件实例分析的更多相关文章

  1. PHP+ajaxForm异步带进度条上传文件实例

    在使用ajaxForm方法之前,首先需要安装form.js的插件,网上有: 一.首先说用法,ajaxForm可以接收0或1个参数,该参数可以是一个变量.一个对象或回调函数,这个对象主要有以下参数: v ...

  2. jQuery ajax上传文件实例

    jQuery ajax上传文件实例 <form id="form" enctype="multipart/form-data"><input ...

  3. php 上传文件实例 上传并下载word文件

    上传界面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  4. JSP通过SmartUpload上传文件实例

    httpRequest.setCharacterEncoding("gbk"); String preName = genName.doMake();//设置文件前缀名 Strin ...

  5. HttpClient 测试web API上传文件实例

    1.使用HttpClient 测试上传文件并且设置header信息: using Lemon.Common; using Newtonsoft.Json; using System; using Sy ...

  6. jquery插件--ajaxfileupload.js上传文件原理分析

    英文注解应该是原作者写的吧~说实话,有些if判断里的东西我也没太弄明白,但是大致思路还是OK的. jQuery.extend({ createUploadIframe: function (id, u ...

  7. php 上传文件实例 注册账号

    注册界面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  8. vue axios上传文件实例

    <head> <title></title> <meta charset="UTF-8"> <meta name=" ...

  9. MVC 上传文件实例

    http://www.cnblogs.com/leiOOlei/archive/2011/08/17/2143221.html

随机推荐

  1. Django之单表的增删改查

      books/urls.py   """books URL Configuration The `urlpatterns` list routes URLs to vi ...

  2. 关于requirejs和grunt压缩合并是否矛盾

    requirejs主要是为了模块化开发,这样带来的好处不言而喻.但是分成多个js文件增加了请求数,那么就要用到合并压缩.合并压缩了原来的许多独立的js模块,那requirejs又是怎么冲压缩的文件中找 ...

  3. 关于EGE图形库在CodeBlocks下的配置

    非常感谢[地球]呵呵@的细心帮助,我差点都放弃了! 我这里使用的是Code::Blocks svn 10595 与 TDM-GCC 5.10 首先下载为 GCC 5.0 以上编译好的 EGE 文件,稍 ...

  4. Leetcode 397.整数替换

    整数替换 给定一个正整数 n,你可以做如下操作: 1. 如果 n 是偶数,则用 n / 2替换 n.2. 如果 n 是奇数,则可以用 n + 1或n - 1替换 n.n 变为 1 所需的最小替换次数是 ...

  5. 九度oj 题目1179:阶乘

    题目描述: 输入n, 求y1=1!+3!+...m!(m是小于等于n的最大奇数)y2=2!+4!+...p!(p是小于等于n的最大偶数). 输入: 每组输入包括1个整数:n 输出: 可能有多组测试数据 ...

  6. 洛谷P3097 - [USACO13DEC]最优挤奶Optimal Milking

    Portal Description 给出一个\(n(n\leq4\times10^4)\)个数的数列\(\{a_n\}(a_i\geq1)\).一个数列的最大贡献定义为其中若干个不相邻的数的和的最大 ...

  7. PHP文件上传设置和处理(多文件)

    <!--upload.php文件内容--><?phpheader("Content-Type:text/html;charset=utf-8");/* //原来$ ...

  8. 品酒大会 BZOJ 4199

    品酒大会 [问题描述] [输入格式] [输出格式] [样例输入] 10ponoiiipoi 2 1 4 7 4 8 3 6 4 7 [样例输出] 45 56 10 56 3 32 0 0 0 0 0 ...

  9. CentOS配置TFTP服务器

    服务器端 软件包 tftp-server 启动脚本 /usr/sbin/in.tftpd 启动服务 /usr/lib/systemd/system/tftp.service 配置文件 /etc/xin ...

  10. Golang中的panic和recover(捕获异常)

    func panic(interface{})和func recover() interface{}是Golang中用于错误处理的两个函数. panic的作用就是抛出一条错误信息,从它的参数类型可以看 ...