首页> 中国专利> 一种在移动终端上截获数据包的方法和装置

一种在移动终端上截获数据包的方法和装置

摘要

本发明公开了一种在移动终端上截获数据包的方法和装置,以简化截获数据包的操作过程,减小对移动终端的损耗。所述方法包括:判断当前环境是否已经校验;若当前环境没有校验,则通过成功获取系统权限,判断当前环境是否已安装完全数据截获软件包;若所述当前环境没有安装完全数据截获软件包,则自动安装数据截获软件包;若已安装完全数据截获软件包或自动安装数据截获软件包完毕,则执行数据截获命令进行数据包截获。与现有的在移动终端上截获数据包前需要手动安装名目繁多的软件包相比,本发明提供的方法中,所有的动作都是自动执行,对用户的要求降低,并且无需用户做过多的输入操作,因此,在执行抓包时为用户提供的便利,提高了操作效率。

著录项

  • 公开/公告号CN105302530A

    专利类型发明专利

  • 公开/公告日2016-02-03

    原文格式PDF

  • 申请/专利权人 腾讯科技(深圳)有限公司;

    申请/专利号CN201410269959.5

  • 发明设计人 廖海珍;廖志;

    申请日2014-06-17

  • 分类号G06F9/44;

  • 代理机构深圳中一专利商标事务所;

  • 代理人张全文

  • 地址 518044 广东省深圳市福田区振兴路赛格科技园2栋东403室

  • 入库时间 2023-12-18 13:52:34

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-05-31

    授权

    授权

  • 2017-03-01

    实质审查的生效 IPC(主分类):G06F9/44 申请日:20140617

    实质审查的生效

  • 2016-02-03

    公开

    公开

说明书

技术领域

本发明涉及移动通信领域,具体涉及一种在移动终端上截获数据包的方法 和装置。

背景技术

所谓数据包的截获即抓包,简言之,就是采用专业软件即抓包工具,将 数据包截住或者记录下来以对其进行技术上的分析。抓包较多应用于对终端 上应用程序(APPlication,APP)性能的测试、网络游戏外挂的制作方面或者 密码截取等等。

现有的一种在移动终端上截获数据包的方法是,通过cydia(iPhone、iPod touch、iPad等上的一种破解软件,类似苹果在线软件商店iTunesStore的软 件平台的客户端,在越狱的过程中被装入到系统中的,其中多数为iPhone、 iPodTouch、ipad的第三方软件和补丁,主要都是弥补系统不足用)搜索,手 动安装openssl软件包;通过cydia搜索,手动安装pcap软件包;通过cydia 搜索,手动安装tcpdump软件包;通过cydia搜索,手动安装移动终端 (MobileTerminal);在MobileTerminal的用户界面(UserInterface,UI)上 输入抓包命令,例如,tcpdump-ipdp_ip0-s00-vv-w/qq.pcap。

从上述现有技术提供的在移动终端上截获数据包的方法可知,现有的截 获数据包方法需要通过搜索,手动安装名目繁多的软件包,例如,openssh、 pcap和tcpdump等软件包,然后,通过打开安全外壳(SecureSHell,SSH) 隧道,联机执行tcpdump命令抓包,或是在移动终端上安装SSH相关软件输 入tcpdump命令抓包,过程相当繁琐。进一步地,频繁的输入操作需要移动 终端频繁地做出响应,这对移动终端的硬件也是一种损耗。

发明内容

本发明提供一种在移动终端上截获数据包的方法和装置,以简化截获数据 包的操作过程,减小对移动终端的损耗。

本发明实施例提供一种在移动终端上截获数据包的方法,所述方法包括:

判断当前环境是否已经校验;

若所述当前环境没有校验,则通过成功获取系统权限,判断所述当前环境 是否已安装完全数据截获软件包;

若所述当前环境没有安装完全数据截获软件包,则自动安装数据截获软件 包;

若已安装完全数据截获软件包或自动安装数据截获软件包完毕,则执行数 据截获命令进行数据包截获。

本发明另一实施例提供一种在移动终端上截获数据包的装置,所述装置包 括:

第一判断模块,用于判断当前环境是否已经校验;

第二判断模块,用于若所述第一判断模块判断当前环境没有校验,则通过 成功获取系统权限,判断所述当前环境是否已安装完全数据截获软件包;

自动安装模块,用于若所述第二判断模块判断当前环境没有安装完全数据 截获软件包,则自动安装数据截获软件包;

抓包执行模块,用于已安装完全数据截获软件包或自动安装数据截获软件 包完毕,则执行数据截获命令进行数据包截获。

从上述本发明实施例可知,当前环境没有安装完全数据截获软件包时自动 安装数据截获软件包,在已安装完全数据截获软件包或自动安装数据截获软件 包完毕,则执行数据截获命令进行数据包截获。由于这些工作都只需要用户点 击一个按键即可是自动完成,因此,与现有的在移动终端上截获数据包前需要 手动安装名目繁多的软件包相比,本发明提供的方法中,所有的动作都是自动 执行,无需用户做过多的输入操作,因此,简化了数据包截获的操作过程,而 频度较小的输入操作也减小了对移动终端硬件的损耗,可以延长移动终端的使 用寿命。

附图说明

图1是本发明实施例提供的在移动终端上截获数据包的方法的基本流程示 意图;

图2是本发明另一实施例提供的在移动终端上截获数据包的方法的基本流 程示意图;

图3是本发明实施例提供的在移动终端上截获数据包的装置逻辑结构示意 图;

图4是本发明另一实施例提供的在移动终端上截获数据包的装置逻辑结构 示意图;

图5是本发明另一实施例提供的在移动终端上截获数据包的装置逻辑结构 示意图;

图6是本发明另一实施例提供的在移动终端上截获数据包的装置逻辑结构 示意图。

具体实施方式

本发明提供一种在移动终端上截获数据包的方法,所述方法包括:判断当 前环境是否已经校验;若所述当前环境没有校验,则通过成功获取系统权限, 判断所述当前环境是否已安装完全数据截获软件包;若所述当前环境没有安装 完全数据截获软件包,则自动安装数据截获软件包;若已安装完全数据截获软 件包或自动安装数据截获软件包完毕,则执行数据截获命令进行数据包截获。 本发明还提供相应的在移动终端上截获数据包的装置。以下分别进行详细说 明。

请参阅附图1,是本发明实施例提供的在移动终端上截获数据包的方法的 基本流程,该方法可用于操作系统为iOS的移动终端,即该方法中的移动终端 为iOS的移动终端。附图1示例的方法主要包括步骤S101至步骤S104,详细说 明如下:

S101,判断当前环境是否已经校验。

所谓当前环境,是指移动终端的软、硬件环境,而校验是指对该移动终端 是否安装了数据软件包进行校验。需要说明的是,校验只需要在首次点击用户 界面上设置的“截获数据包”按钮进行,后续用户再次点击“截获数据包”按 钮时则跳过校验这一过程。

S102,若当前环境没有校验,则通过成功获取系统权限,判断当前环境是 否已安装完全数据截获软件包。

在本发明实施例中,系统权限可以是root权限。数据截获软件包可以是安 全套接字层密码库(SecureSocketsLayer,SSL)文件、抓包库文件和包分析 软件中的一种或其任意组合。例如,SSL文件可以是开源的SSL软件包即 openssl软件包,抓包库文件可以是抓包库(packetcapturelibrary,pcap)软件 包,包分析软件可以是TcpDump软件包,其中,openssl软件包大概可以分成三 个主要的功能部分:密码算法库、SSL协议库以及应用程序,其囊括主要的密 码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供丰富的应用程 序供测试或其它目的使用;pcap软件包给抓包系统提供了一个高层次的接口, 所有网络上的数据包、甚至那些发送给其他主机的,通过这种机制,都可以被 捕获到,pcap软件包也支持将捕获的数据包保存为本地文件和从本地文件读取 信息;TcpDump软件包可以将网络中传送的数据包的包头完全截获下来提供分 析,支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not 等逻辑语句来帮助去掉无用的信息。

S103,若当前环境没有安装完全数据截获软件包,则自动安装数据截获软 件包。

本步骤中,数据截获软件包指的就是步骤S102中SSL文件、抓包库文件和 包分析软件中的一种或其任意组合。在本发明实施例中,所谓“自动”,是指 系统在判断已经满足了安装数据截获软件包的条件后,只需要接收到用户输入 的一个命令,例如,用户点击或触碰了用户界面(UserInterface,UI)上设置 的安装按钮,系统即可自行逐个安装数据截获软件包,而不需要用户再次输入 操作指令或做其他的干预。

S104,若已安装完全数据截获软件包或自动安装数据截获软件包完毕,则 执行数据截获命令进行数据包截获。

若当前环境已经校验,则表明当前环境已经安装完全数据截获软件包,即 已经安装了安全套接字层密码库文件、抓包库文件和包分析软件等软件包。所 谓执行数据截获命令进行数据包截获可以是运行包分析软件,例如,运行 TcpDump软件包。

从上述本发明实施例提供的在移动终端上截获数据包的方法可知,当前环 境没有安装完全数据截获软件包时自动安装数据截获软件包,在已安装完全数 据截获软件包或自动安装数据截获软件包完毕,则执行数据截获命令进行数据 包截获。由于这些工作都只需要用户点击一个按键即可是自动完成,因此,与 现有的在移动终端上执行数据包截获前需要手动安装名目繁多的软件包相比, 本发明提供的方法中,所有的动作都是自动执行,无需用户做过多的输入操作, 因此,简化了数据包截获的操作过程,而频度较小的输入操作也减小了对移动 终端硬件的损耗,可以延长移动终端的使用寿命。

请参阅附图2,是本发明另一实施例提供的在移动终端上截获数据包的方 法的基本流程。附图2示例的在移动终端上截获数据包的方法,其前提是当前 环境没有校验,主要包括步骤S201至步骤S206,详细说明如下:

S201,判断当前环境是否已经校验。

在本实施例中,所谓当前环境,是指移动终端的软、硬件环境,而校验是 指对该移动终端是否安装了数据截获软件包进行校验。需要说明的是,校验只 需要在首次点击用户界面上设置的“截获数据包”按钮进行,后续用户再次点 击“截获数据包”按钮时则跳过校验这一过程。

S202,获取系统权限。

如前述实施例类似,在本实施例中,系统权限也可以是root权限。对于Linux 等嵌入式操作系统,获取系统权限的方法具体可以是:首先新建一个进程,然 后输入命令“su ”,系统会要求输入密码,再将默认密码“alpine ”输入即可 获取root权限。

S203,判断系统权限是否获取成功。

仍然以Linux等嵌入式操作系统为例,对于root权限这一类系统权限,判断 系统权限是否获取成功的方法具体可以是:在输入默认密码“alpine ”后,若 系统返回的字符携带的是“#”标识,则表示获取系统权限成功,否则,例如, 若系统返回的字符携带的是“$”标识,则表示获取系统权限失败。若系统权 限获取失败,则系统提示用户重新获取系统权限,例如,弹出输入框,提示用 户输入自定义的获取root权限的密码。

S204,若系统权限获取成功,则判断当前环境是否已安装完全数据截获软 件包。

具体地,可输入与数据截获软件包对应的命令,然后,根据接收所述数据 截获软件包对应的命令后返回的字符串,判断当前环境是否已安装有对应的数 据截获软件包。例如,对于判断当前环境是否已安装有SSL文件例如openssl软 件包这一数据截获软件包,可以输入“dpkg-l|grepssl”命令,若命令返回的 结果携带openssl这一字符串,则判断当前环境已安装有openssl软件包;又如, 对于判断当前环境是否已安装有抓包库文件例如pcap软件包这一数据截获软 件包,可以输入“dpkg-l|greppcap”命令,若命令返回的结果携带pcap这一字 符串,则判断当前环境已安装有pcap软件包;再如,对于判断当前环境是否已 安装有包分析软件例如TcpDump软件包这一数据截获软件包,可以输入 “dpkg-l|grepdump”命令,若返回的结果携带dump这一字符串,则判断当前 环境已安装有TcpDump软件包。

S205,若当前环境没有安装完全数据截获软件包,则自动安装数据截获软 件包。

本步骤中,数据截获软件包指的就是步骤S202中SSL文件、抓包库文件和 包分析软件中的一种或其任意组合。在本实施例中,所谓“自动”,是指系统 在判断已经满足了安装数据截获软件包的条件后,只需要接收到用户输入的一 个命令,例如,用户点击或触碰了用户界面(UserInterface,UI)上设置的安 装按钮,系统即可自行逐个安装数据截获软件包,而不需要用户再次输入操作 指令或做其他的干预。

S206,若已安装完全数据截获软件包或自动安装数据截获软件包完毕,则 执行数据截获命令进行数据包截获。

若当前环境已经校验,则表明当前环境已经安装完全数据截获软件包,即 已经安装了安全套接字层密码库文件、抓包库文件和包分析软件等软件包。所 谓执行数据截获命令进行数据包截获可以是运行包分析软件,例如,运行 TcpDump软件包。

以下对用于执行上述在移动终端上截获数据包的方法的本发明实施例的 在移动终端上截获数据包的装置进行说明,其基本逻辑结构参考图3。为了便 于说明,仅仅示出了与本发明实施例相关的部分。附图3示例的在移动终端上 截获数据包的装置主要包括第一判断模块301、第二判断模块302、自动安装模 块303和抓包执行模块304,各模块详细说明如下:

第一判断模块301,用于判断当前环境是否已经校验。

所谓当前环境,是指移动终端的软、硬件环境,而校验是指对该移动终端 是否安装了数据软件包进行校验。需要说明的是,校验只需要在首次点击用户 界面上设置的“截获数据包”按钮进行,后续用户再次点击“截获数据包”按 钮时则跳过校验这一过程。

第二判断模块302,用于若第一判断模块301判断当前环境没有校验,则通 过成功获取系统权限,判断当前环境是否已安装完全数据截获软件包。

在本实施例中,系统权限可以是root权限。数据截获软件包可以是安全套 接字层密码库(SecureSocketsLayer,SSL)文件、抓包库文件和包分析软件 中的一种或其任意组合。例如,SSL文件可以是开源的SSL软件包即openssl 软件包,抓包库文件可以是抓包库(packetcapturelibrary,pcap)软件包,包 分析软件可以是TcpDump软件包,其中,openssl软件包大概可以分成三个主要 的功能部分:密码算法库、SSL协议库以及应用程序,其囊括主要的密码算法、 常用的密钥和证书封装管理功能以及SSL协议,并提供丰富的应用程序供测试 或其它目的使用;pcap软件包给抓包系统提供了一个高层次的接口,所有网络 上的数据包、甚至那些发送给其他主机的,通过这种机制,都可以被捕获到, pcap软件包也支持将捕获的数据包保存为本地文件和从本地文件读取信息; TcpDump软件包可以将网络中传送的数据包的包头完全截获下来提供分析,支 持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑 语句来帮助去掉无用的信息。

自动安装模块303,用于若第二判断模块302判断当前环境没有安装完全数 据截获软件包,则自动安装数据截获软件包。

自动安装模块303自动安装的是SSL文件、抓包库文件和包分析软件中的 一种或其任意组合。

抓包执行模块304,用于若已安装完全数据截获软件包或自动安装数据截 获软件包完毕,则执行数据截获命令进行数据包截获。

若第一判断模块301判断当前环境已经校验,则表明当前环境已经安装完 全数据截获软件包,即已经安装了安全套接字层密码库文件、抓包库文件和包 分析软件等软件包。所谓执行数据截获命令进行数据包截获可以是运行包分析 软件,例如,运行TcpDump软件包。

需要说明的是,以上附图3示例的在移动终端上截获数据包的装置的实施 方式中,各功能模块的划分仅是举例说明,实际应用中可以根据需要,例如相 应硬件的配置要求或者软件的实现的便利考虑,而将上述功能分配由不同的功 能模块完成,即将所述在移动终端上截获数据包的装置的内部结构划分成不同 的功能模块,以完成以上描述的全部或者部分功能。而且,实际应用中,本实 施例中的相应的功能模块可以是由相应的硬件实现,也可以由相应的硬件执行 相应的软件完成,例如,前述的自动安装模块,可以是具有执行前述若第二判 断模块(或第二判断器)判断当前环境没有安装完全数据截获软件包,则自动 安装数据截获软件包的硬件,例如自动安装器,也可以是能够执行相应计算机 程序从而完成前述功能的一般处理器或者其他硬件设备;再如前述的抓包执行 模块,可以是若当前环境已经校验、已安装完全数据截获软件包或自动安装数 据截获软件包完毕,则执行数据截获命令进行数据包截获功能的硬件,例如抓 包执行器,也可以是能够执行相应计算机程序从而完成前述功能的一般处理器 或者其他硬件设备(本说明书提供的各个实施例都可应用上述描述原则)。

附图3示例的第二判断模块302可以包括权限获取单元401、第三判断单元 402和第四判断单元403,如附图4所示本发明另一实施例提供的在移动终端上 截获数据包的装置,其中:

权限获取单元401,用于若第一判断模块401判断当前环境没有校验,则获 取系统权限。

在本实施例中,系统权限也可以是root权限。对于Linux等嵌入式操作系统, 权限获取单元401获取系统权限的方法具体可以是:首先新建一个进程,然后 输入命令“su ”,系统会要求输入密码,再将默认密码“alpine ”输入即可获 取root权限。

第三判断单元402,用于判断系统权限是否获取成功。

仍然以Linux等嵌入式操作系统为例,对于root权限这一类系统权限,第三 判断单元402判断系统权限是否获取成功的方法具体可以是:在输入默认密码 “alpine ”后,若系统返回的字符携带的是“#”标识,则第三判断单元402 判断获取系统权限成功,否则,例如,若系统返回的字符携带的是“$”标识, 则第三判断单元402判断获取系统权限失败。

第四判断单元403,用于若第三判断单元402判断系统权限获取成功,则判 断当前环境是否已安装完全数据截获软件包。

附图4示例的在移动终端上截获数据包的装置还可以包括提示模块501,如 附图5所示本发明另一实施例提供的在移动终端上截获数据包的装置。提示模 块501用于若第三判断单元402判断系统权限获取失败,则提示用户重新获取系 统权限。具体提示方法,例如可以是弹出输入框,提示用户输入自定义的获取 root权限的密码。

附图4示例的第四判断单元403可以包括输入单元601和第五判断单元602, 如附图6所示本发明另一实施例提供的在移动终端上截获数据包的装置,其中:

输入单元601,用于若第一判断模块301判断当前环境没有校验,则输入与 数据截获软件包对应的命令。

第五判断单元602,用于根据接收数据截获软件包对应的命令后返回的字 符串,判断当前环境是否已安装有对应的数据截获软件包。

例如,对于第五判断单元602判断当前环境是否已安装有SSL文件例如 openssl软件包这一数据截获软件包,可以输入“dpkg-l|grepssl”命令,若命 令返回的结果携带openssl这一字符串,则第五判断单元602判断当前环境已安 装有openssl软件包;又如,对于判断当前环境是否已安装有抓包库文件例如 pcap软件包这一数据截获软件包,可以输入“dpkg-l|greppcap”命令,若命令 返回的结果携带pcap这一字符串,则第五判断单元602判断当前环境已安装有 pcap软件包;再如,对于判断当前环境是否已安装有包分析软件例如TcpDump 软件包这一数据截获软件包,可以输入“dpkg-l|grepdump”命令,若返回的 结果携带dump这一字符串,则第五判断单元602判断当前环境已安装有 TcpDump软件包。

在上述附图3至附图6任一示例的在移动终端上截获数据包的装置中,数据 截获软件包可以是安全套接字层密码库文件、抓包库文件和包分析软件中的一 种或任意组合。

需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容, 由于与本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施 例相同,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步 骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读 存储介质中,存储介质可以包括:只读存储器(ROM,ReadOnlyMemory)、 随机存取存储器(RAM,RandomAccessMemory)、磁盘或光盘等。

以上对本发明实施例所提供的在移动终端上截获数据包的方法和装置进 行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐 述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时, 对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围 上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号