Android 联网监控抓包工具的制作(tcpdump的使用)
最近做一个Android联网抓包的工具
自己在网上搜索了好久
发现还是没有头绪
于是考虑在linux层上下功夫
于是采用linux的tcpdump来实现了抓包的功能
用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。
作为互联网上经典的的系统管理员必备工具,tcpdump以其强大的功能,灵活的截取策略,成为每个高级的系统管理员分析网络,排查问题等所必备的东东之一。
对于tcpdump详细的可以参考http://baike.baidu.com/view/76504.htm?fr=ala0_1_1百度百科的介绍
我这里主要介绍一下如何在Android上使用tcpdump
我所采用的测试机是破解版G2和模拟器
具体的就是在APK程序里执行linux命令
- tcpdump -p -vv -s 0 -w /sdcard/capture.pcap
这样就能够将抓到的包在sdcard上写一个capture.pcap文件
而这个文件可以用wireshark在PC上打开进行查看 非常方便
具体的源代码如下
MainHook.java
- package zy.hook;
- import java.io.IOException;
- import android.app.Activity;
- import android.os.Bundle;
- import android.util.Log;
- public class MainHook extends Activity {
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- try {
- //Runtime.getRuntime().exec("su");
- //Runtime.getRuntime().exec("dd if=/sdcard/tcpdump of=/data/local/tcpdump");
- //Runtime.getRuntime().exec("chmod 6755 /data/local/tcpdump");
- Runtime.getRuntime().exec("tcpdump -p -vv -s 0 -w /sdcard/capture.pcap");
- Log.i("run","success!!!!!!!!!");
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- Log.i("run",e.toString());
- }
- }
- }
AndroidManifest.xml
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="zy.hook"
- android:versionCode="1"
- android:versionName="1.0">
- <application android:icon="@drawable/icon" android:label="@string/app_name">
- <activity android:name=".MainHook"
- android:label="@string/app_name">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- </application>
- <uses-sdk android:minSdkVersion="7" />
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
- </manifest>
尤其不要忘记了权限<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
的声明
运行程序我们就可以抓包了

会在sdcard上生成capture.pcap文件
抓一段时间之后,将文件从sdcard上导出
然后我们用wireshark打开

可以非常方便的查看我们抓到的包
希望能够对大家有用
本文版权归csdn博主曾阳所有
http://blog.csdn.net/Zengyangtech/archive/2010/08/31/5853366.aspx
转载请注明此句
Android 联网监控抓包工具的制作(tcpdump的使用)的更多相关文章
- 网络抓包工具wireshark and tcpdump 及其实现基于的libpcap
最近无意中看到博客园中一篇介绍wireshark的文章,写得不错,它简单清楚介绍了wireshark的使用 简介 wireshark以前叫做Ethereal, 在大学时候的网络课程中就常看到它,它是世 ...
- tcpdump抓包工具
tcpdump抓包工具 一:TCPDump介绍 TcpDump可以将网络中传送的数据包的"头"完全截获下来提供分析.它支持针对网络层.协议.主机.网络或端口的过滤,并提供and ...
- Android利用Fiddler进行网络数据抓包,手机抓包工具汇总
Fiddler抓包工具 Fiddler抓包工具很好用的,它可以干嘛用呢,举个简单例子,当你浏览网页时,网页中有段视频非常好,但网站又不提供下载,用迅雷下载你又找不到下载地址,这个时候,Fiddler抓 ...
- Fiddler 抓包工具怎么使用?怎么在Android手机端的APP抓包
https://blog.csdn.net/loner_fang/article/details/83309266 参考这个人的微博上有fiddler主要功能使用的步骤. 序章 Fiddler是一个蛮 ...
- Android利用Fiddler进行网络数据抓包,手机抓包工具汇总,使用mono运行filddler
Fiddler抓包工具 Fiddler抓包工具很好用的,它可以干嘛用呢,举个简单例子,当你浏览网页时,网页中有段视频非常好,但网站又不提供下载,用迅雷下载你又找不到下载地址,这个时候,Fiddler抓 ...
- Android 常用抓包工具介绍之Charles
➠更多技术干货请戳:听云博客 Charles是一款抓包修改工具,相比起TcpDump,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!前面介绍了如 ...
- Android常用抓包工具之TcpDump
➠更多技术干货请戳:听云博客 做为一个测试人员,工作中经常会用到数据抓包工具来进行数据分析和验证,下面就简单介绍一下工作中常用的抓包工具. TcpDump抓包 Tcpdump是一个用于截取网络分组,并 ...
- fiddler+android抓包工具配置使用
今天临时增加一个工作,手机需要抓包,查看了不同的抓包工具,最后确定使用fiddler抓包工具进行操作,这里以android为例记录一下工具的配置和使用操作. fiddler的安装 网上有很多fiddl ...
- android抓包工具——使用fiddler4在安卓手机抓包
Fiddler是一款非常流行并且实用的http抓包工具,它的原理是在本机开启了一个http的代理服务器,然后它会转发所有的http请求和响应,因此,它比一般的firebug或者是chrome自带的抓包 ...
随机推荐
- 按钮特效-Enter键自动提交表单
—————————————————————— <script type="text/javascript"> //当用户按 ...
- 眼睛跟踪 java
https://github.com/hosek/eyeTrackSample Simple sample, for eye tracking with OpenCV
- bower 教程
1.运行 - cmd 2.npm install -g bower 3.文件夹右击git bash here
- phpStorm 2016.1.2 最新版激活方法【亲测可用】
测试日期:2016-07-29 下载地址:https://yunpan.cn/c6mWAGbExcyjf 访问密码 00fb 1.windows版本 菜单help >>>> ...
- Photoshop基础,前景背景,图层,选取
1*前景色背景色 Alt+Delete 键 前景色填充 Ctrl+Delete 键 背景色填充 X 颜色转换 D 颜色互换 两个填充的原因: 2*图层(只要做东西就要建图层)透明的纸进行叠加,尽量多建 ...
- java模式:深入单例模式
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://devbean.blog.51cto.com/448512/203501 在GoF ...
- layer属性
键: 值 描述 下表的属性都是默认值,您可在调用时按需重新配置,他们可帮助你实现各式各样的风格.如是调用: $.layer({键: 值, 键: 值, -}); type: 0 层的类型.0:信息框(默 ...
- OpenGL---------BMP文件格式
计算机保存图象的方法通常有两种:一是“矢量图”,一是“像素图”.矢量图保存了图象中每一几何物体的位置.形状.大小等信息,在显示图象时,根据这些信息计算得到完整的图象.“像素图”是将完整的图象纵横分为若 ...
- char与varchar、nvarchar区别
char char是定长的,也就是当你输入的字符小于你指定的数目时,char(8),你输入的字符小于8时,它会再后面补空值.当你输入的字符大于指定的数时,它会截取超出的字符. nvarc ...
- instanceof实例和prototype
var arr=[1,3,2];alert(arr instanceof Array); 返回true: 对于继承譬如一个Drag()拖拽的继承,我想加一个限制范围的拖拽 我需要写一个新的函数 fun ...