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命令

[c-sharp] view plaincopy

  1. tcpdump -p -vv -s 0 -w /sdcard/capture.pcap

这样就能够将抓到的包在sdcard上写一个capture.pcap文件

而这个文件可以用wireshark在PC上打开进行查看 非常方便

具体的源代码如下

MainHook.java

[c-sharp] view plaincopy

  1. package zy.hook;
  2. import java.io.IOException;
  3. import android.app.Activity;
  4. import android.os.Bundle;
  5. import android.util.Log;
  6. public class MainHook extends Activity {
  7. /** Called when the activity is first created. */
  8. @Override
  9. public void onCreate(Bundle savedInstanceState) {
  10. super.onCreate(savedInstanceState);
  11. setContentView(R.layout.main);
  12. try {
  13. //Runtime.getRuntime().exec("su");
  14. //Runtime.getRuntime().exec("dd if=/sdcard/tcpdump of=/data/local/tcpdump");
  15. //Runtime.getRuntime().exec("chmod 6755 /data/local/tcpdump");
  16. Runtime.getRuntime().exec("tcpdump -p -vv -s 0 -w /sdcard/capture.pcap");
  17. Log.i("run","success!!!!!!!!!");
  18. } catch (IOException e) {
  19. // TODO Auto-generated catch block
  20. e.printStackTrace();
  21. Log.i("run",e.toString());
  22. }
  23. }
  24. }

AndroidManifest.xml

[xhtml] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  3. package="zy.hook"
  4. android:versionCode="1"
  5. android:versionName="1.0">
  6. <application android:icon="@drawable/icon" android:label="@string/app_name">
  7. <activity android:name=".MainHook"
  8. android:label="@string/app_name">
  9. <intent-filter>
  10. <action android:name="android.intent.action.MAIN" />
  11. <category android:name="android.intent.category.LAUNCHER" />
  12. </intent-filter>
  13. </activity>
  14. </application>
  15. <uses-sdk android:minSdkVersion="7" />
  16. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  17. </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

转载请注明此句

时间: 2024-08-30 10:42:08

Android 联网监控抓包工具的制作(tcpdump的使用)的相关文章

抓包工具Fidder详解(主要来抓取Android中app的请求)

抓包工具Fidder详解(主要来抓取Android中app的请求) 今天闲着没吊事,来写一篇关于怎么抓取Android中的app数据包?工欲行其事,必先利其器,上网google了一下,发现了一款神器:Fiddler,这个貌似是所有软件开发者必备神器呀!这款工具不仅可以抓取PC上开发web时候的数据包,而且可以抓取移动端(Android,Iphone,WindowPhone等都可以),太强大了,以前搞web的时候,知道有一款叫做HttpWatch工具,可以抓取web的请求数据包的,但是和这款神器来

Android 常用抓包工具介绍之Charles

?更多技术干货请戳:听云博客 Charles是一款抓包修改工具,相比起TcpDump,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!前面介绍了如何使用TcpDump抓包,下面给大家介绍一下Charles的使用. Charles抓包 Charles是一个HTTP代理服务器/HTTP监视器/反转代理服务器.它允许一个开发者查看所有连接互联网的HTTP通信.这些包括request.response现HTTP headers(包含cookies与c

Android手机Fildder抓包_监控应用请求

Fiddler是一个http调试代理,它能 够记录所有的你电脑和互联网之间的http通讯,Fiddler 可以也可以让你检查所有的http通讯,设置断点,以及Fiddle 所有的“进出”的数据(指cookie,html,js,css等文件,这些都可以让你胡乱修改的意思). Fiddler 要比其他的网络调试器要更加简单,因为它仅仅暴露http通讯还有提供一个用户友好的格式. 对于Android开发的同事最头疼的事情莫过于真机抓包,然后Fiddler就可以帮助你解决这个难题,下面是我在使用过程中使

监控io性能、free、ps命令及netstat命令、抓包工具tcpdump,tshark

一.监控io性能iostat -x 关注%utiliotop 查看哪一个进程在进行读写 二.free命令(查看内存使用)-m -h-gbuff 缓冲(cpu处理完的数据 > 内存 (buff)> 磁盘)cache 缓存(磁盘 >内存(cache) >cpu处理数据)公式:total= used + free +buff/cacheavaliable包含free 和buffer/cache剩余部分我的swap怎么全是0 三.ps命令(查看系统进程)ps aux 把系统所有的进程以快照

HttpCanary——最强Android抓包工具!

迎使用HttpCanary——最强Android抓包工具! HttpCanary是一款功能强大的HTTP/HTTPS/HTTP2网络包抓取和分析工具,你可以把他看成是移动端的Fiddler或者Charles,但是HttpCanary使用起来更加地简单容易,因为它是专门为移动端设计的!

Fiddler 抓包工具总结

阅读目录 1. Fiddler 抓包简介 1). 字段说明 2). Statistics 请求的性能数据分析 3). Inspectors 查看数据内容 4). AutoResponder 允许拦截制定规则的请求 5). Filters 请求过滤规则 6). Timeline 请求响应时间 2. Fiddler 设置解密HTTPS的网络数据 3. Fiddler 抓取Iphone / Android数据包 4. Fiddler 内置命令与断点 序章 Fiddler是一个蛮好用的抓包工具,可以将网

几个主流浏览器的内置http的抓包工具(转)

对于学习网站的人或者相关编程人员,经常需要用到http抓包工具来跟踪网页,但主流抓包软件如httpwatch.httpanalyzerstdv都是收费的,破解版往往也不稳定.实际上现在很多浏览器都内置了免费的抓包工具,小编今天就向大家简单介绍几款. 工具/原料 几款常见浏览器 方法/步骤 1 谷歌浏览器chrome自带的http抓包工具界面简洁大方,功能也很强大,唯一的不足就是界面是英文的.打开方式:点击右上角的菜单-->工具-->开发者工具. 2 下图是打开之后的界面.可以随便访问一个页面来

抓包工具Fiddler

介绍一款抓包工具,相信很多人都有用过 Fiddler,它是通过代理来实现数据抓取的 下面用它来对Android的网络连接进行抓取 下载链接:https://www.fiddler2.com 下载完安装,然后打开 Tools >> Fiddler Options... 打开Connections,勾选Allow remote computers to connect,点击OK,然后重启Fiddler 打开命令行(Win+R,输入CMD回车),输入ipconfig,打开当前无线的IP,打开手机,让

抓包工具之 Fiddler

一.Fiddler的基本介绍 Fiddler是最强大最好用.且免费的Web调试工具之一,我们通常使用他来监控客户端和服务器的http/https请求.也就是我们常说的抓包. 二.Fiddler的使用简要介绍 [基于版本4.4.9.9] 1.下载安装Fiddler,下载地址: http://www.telerik.com/fiddler 2.运行安装好的Fiddler.界面效果如下: 3.Fiddler默认不会捕获HTTPS会话.如果需要捕获https会话 则可通过如下步骤设置即可: 打开工具栏上