这个是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. 【04】在webstorm里Export declarations are not supported by current JavaScript version

    [04]在webstorm里Export declarations are not supported by current JavaScript version     Export declara ...

  2. luogu2569 [SCOI2010]股票交易

    题解看这里 #include <iostream> #include <cstring> #include <cstdio> using namespace std ...

  3. strcat strcpy 源代码,用指针去实现

    15. 指针实现 strcmp函数     •    int newStrcpy(char *p, char *q)     •    {     •        while(*p ==*q) { ...

  4. AbstractFactory(抽象工厂模式)

    AbstractFactory(抽象工厂模式) 有些情况下我们需要根据不同的选择逻辑提供不同的构造工厂,而对于多个工厂而言需要一个统一的抽象 <?php class Config { publi ...

  5. Python 打印嵌套list中每个数据(遍历列表)

    new_list = ["H1","H2",1999] for each_list in new_list: print (each_list); 若列表中包含 ...

  6. Mahout0.9安装与配置(完全分布式模式下运行)

    安装Mahout之前,一定要把hadoop装好,hadoop的安装方法可以参考我的前一篇随笔,我安装的是hadoop2.7.0,具体方法在此不做介绍. 1.首先下载相应版本的Mahout: axel ...

  7. BZOJ 2440 [中山市选2011]完全平方数 ——莫比乌斯函数

    $\sum_{i=1}^n[i==d^2*p]$ 其中p无平方因子$=\sum_{d^2\mid n,d>=2}\sum_{i=1}^{\lfloor {n/d^2} \rfloor} \lef ...

  8. BZOJ4446 [Scoi2015]小凸玩密室 【树形Dp】

    题目 小凸和小方相约玩密室逃脱,这个密室是一棵有n个节点的完全二叉树,每个节点有一个灯泡.点亮所有灯 泡即可逃出密室.每个灯泡有个权值Ai,每条边也有个权值bi.点亮第1个灯泡不需要花费,之后每点亮4 ...

  9. WEB学习-CSS基础选择器

    基础选择器 标签选择器 就是标签的名字. • <h1>前端与移动开发<span>1期班</span>基础班</h1> css: • <style ...

  10. MySQL与MSSQL的一些语法差异(持续更新中)

    分号不能少:分号不能少:分号不能少:重要的事情说3遍 Insert或者Update的数据包含反斜杠\的时候需要进行转义\\,例:insert into tablename(id,name) value ...