JSunpack-n模拟WireShark拦截文件传输
前言:
在前面的实验里我们进行了JSunpack-n的安装及其简单使用。JSunpack-n还有另外一些功能须要进行測试试验,由于本人也是刚接触这些东西。本文就当中一个“功能点”进行实验。
这里并不保证JSunpack-n一定要具有实验的关键功能点,仅仅是使用实验证实此功能点是否存在。
版权说明
本文原文发表于CSDN博客平台。请转载者在文章对应位置。注明与本文版权相关的内容!!。
本文链接:http://blog.csdn.net/lemon_tree12138/article/details/50727135 – Coding-Naga
— 转载请注明出处
实验环境:
Windows相关
- Windows 7
- WireShark
Linux相关
- Ubuntu 14.04 LTS桌面版
- Python 2.7.6
- TCPDump
- JSunpack-n
实验參考:
《恶意软件分析诀窍与工具箱》 12.2.1 从捕获的数据包中隔离加密数据
实验步骤:
一、使用WireShark捕获文件传输步骤
1. 选择一款邮箱(这里採用163),用于邮件发送。
2. 编写一份用于发送的文件。这里的编写的发送文件为《Upload Test》,内容为:
Just a test for upload.
3. 打开安装完毕的WireShark,并设置过滤參数为http。
例如以下:
4. 当上传并发送上述文件内容后,可获得例如以下的流量捕获结果:
5. 选择。上面被框中的内容,能够看到HTTP协议中有例如以下内容:
6. 从上面的截图中能够获得了文件的名称:Upload Test.txt和文件的长度23个字节。
7. 再检查Media Type内容,从这里能够看到已经捕获到了文件内容:
二、使用TCPDump捕获文件传输步骤
1. 依照前面文档中所介绍的方法正确安装JSunpack-n
2. 新建一个測试文件。用于文件上传使用。文件名及内容例如以下:
3. 打开TCPDump,并进行网络流量监听。
命令例如以下:
$ sudo tcpdump -i eth0 -w 163.pcap
4. 从Ubuntu的桌面浏览器进入163邮箱。并加入以上測试文件到附件。然后发送邮件
5. 待邮件发送成功后,断开TCPDump的监听工作。使用JSunpack-n进行分析抓包内容。
命令例如以下:
$ python jsunpackn.py xxx/163.pcap -s -J -v
6. 下面为分析结果的部分截图:
7. 查看JSunpack-n分析的结果文件,进入./temp/files。使用下面命令分析:
$ file *
8. 上面的分析结果例如以下所看到的:
能够看到这些被截获的文件原本的格式类型。
9. 使用WinSCP将这些文件下载到本地。并以对应格式进行重命名,例如以下:
10. 从上面的这些文件里,并未找到有关于測试文件内容的字节。
仅仅是在文件stream_15a5b6dcb804326549627e8a0c3f528dc04a3587中发现了測试文件的文件名。stream_15a5b6dcb804326549627e8a0c3f528dc04a3587文件的内容例如以下:
{'code':'S_OK','type':0,'var':{'attachmentId':1,'fileName':'test_upload.txt','contentType':'text\/plain','size':30,'actualSize':30}}
11. 为了实验的可信度。这里将JSunpack-n解析的网络包文件163.pcap文件下载到本地,并使用WireShark进行解析。解析结果例如以下:
实验结论:
从上面的实验中。主要可获得下面两个结果:
1.使用JSunpack-n不能解析TCPDump抓取的数据包文件里。上传文件的内容信息;
2.使用WireShark能够解析出TCPDump抓取的同一份数据包文件里,上传文件的内容信息。
从这一点。能够初步得到,使用JSunpack-n无法截获通过网络上传文件的结论。
JSunpack-n模拟WireShark拦截文件传输的更多相关文章
- Linux 上的常用文件传输方式介绍与比较
ftp ftp 命令使用文件传输协议(File Transfer Protocol, FTP)在本地主机和远程主机之间或者在两个远程主机之间进行文件传输. FTP 协议允许数据在不同文件系统的主机之间 ...
- linux下常用文件传输命令 (转)
因为工作原因,需要经常在不同的服务器见进行文件传输,特别是大文件的传输,因此对linux下不同服务器间数据传输命令和工具进行了研究和总结.主要是rcp,scp,rsync,ftp,sftp,lftp, ...
- Linux上常用的文件传输方式以及比较
tp ftp 命令使用文件传输协议(File Transfer Protocol, FTP)在本地主机和远程主机之间或者在两个远程主机之间进行文件传输. FTP 协议允许数据在不同文件系统的主机之间传 ...
- vsftpd-基于ftp协议的文件传输服务器软件
第一部分:在Linux上部署vsftpd服务 1. vsftpd简介 1.1 vsftpd是什么? ftp(File Transfer Protocol)文件传输协议.(实现不同操作系统之间文件的传输 ...
- 搭建 Guacamole 并解决各种坑和创建不了虚拟驱动器导致无法实现文件传输的方法
系统类型版本:centos7 64位 结果:最终跑通了项目并且实现了虚拟驱动器的文件传输功能,添加了中文支持 反思总结: 先查看官方文档的Q&A,找找有没有类似的错误,然后如果有错误日志或者现 ...
- linux下常用文件传输命令(转)
因为工作原因,需要经常在不同的服务器见进行文件传输,特别是大文件的传输,因此对linux下不同服务器间数据传输命令和工具进行了研究和总结.主要是rcp,scp,rsync,ftp,sftp,lftp, ...
- wusir FTP与HTTP文件传输之TCP Packet解析
向服务器传输文件(上传或下载)时,FTP与HTTP是两种最常用的应用层协议,这两个协议都是基于TCP协议之上.如果深入到数据包内(Packet)进行查看时,FTP与HTTP进行文件传输时有什么特征代码 ...
- curl基于URL的文件传输工具
简介 cURL是一款开源的基于URL的文件传输工具,支持HTTP.HTTPS.FTP等协议,支持POST.cookie.认证.扩展头部.限速等特性. curl命令用途广泛,比如下载.发送http请求. ...
- 网络编程 - socket通信/粘包/文件传输/udp - 总结
socket通信 1.简单的套接字通信 import socket phone = socket.socket(socket.AF_INET,socket.SOCK_STREAM) phone.bin ...
随机推荐
- SpringCloud学习笔记(18)----Spring Cloud Netflix之服务网关Zuul原理
1. Zuul的工作机制 Zuul提供了一个框架,可以对过滤器进行动态的加载,编译,运行.过滤器之间没有直接的相互通信,他们是通过一个RequestContext的静态类来进行数据传递的.Requet ...
- 【AnjularJS系列2 】— 表单控件功能相关指令
第二篇,表单控件功能相关指令. ng-checked控制radio和checkbox的选中状态 ng-selected控制下拉框的选中状态 ng-disabled控制失效状态 ng-multiple控 ...
- js 将数组中的每一项安装奇偶重新组合成一个数组对象
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- json转换方法
import java.lang.reflect.Field; import java.util.ArrayList; import java.util.HashMap; import java.ut ...
- NOIp2018模拟赛三十六
好久没打模拟赛了...今天一样是两道国集,一道bzoj题 成绩:13+0+95=108 A题开始看错题了...导致样例都没看懂,结果xfz提醒我后我理解了一个我自认为正确的题意(事实证明我和xfz都错 ...
- 对同层数据进行处理,做成树状图形式的数据结构,并符合elementui中的tree结构
//通过子级的pid找到父级对应的id,制作树状图 var data = [ { id: 1, name: "办公管理", pid: 0 }, { id: 2, name: &qu ...
- mysql 基础函数语句
1:查看当前登陆用户 select user(): 2:切换数据库 use mysql; 查看该表用户 select user,host from user; 4:退出数据库 5:查看数据库版本 se ...
- PHP JWT初识
一直没有好好看过jwt,直到前两天要做web验证,朋友给我推荐了jwt.才发现jwt已经被大家广泛的应用了.看来我有点out了.哈哈,趁着这个世界来好好看看这个. JWT(JSON Web Token ...
- URAL 2027 2028 两个有趣的题
这两个题,讲的是有一种奇怪的语言,代码是一种二维的矩阵. 前一个题,是根据所给的要求,写一个简单的解释器. 后一个题,是用那种语言写一个简单的小程序. 挺有意思的,所以在这里纪念一下.顺便那个语言的原 ...
- python list set dict的简单应用示例
list.count(x):返回指定元素x在列表中出现的次数 set(list):将list类型变量转换为set类型,去除重复值 dick:保存键值对 x=[1,2,2,3,3] s1=set(x) ...