渗透测试 | APP信息收集

news2024/9/20 22:25:27

0x00 免责声明

        本文仅限于学习讨论与技术知识的分享,不得违反当地国家的法律法规。对于传播、利用文章中提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,本文作者不为此承担任何责任,一旦造成后果请自行承担!

        

        

0x01 前言

        信息收集可以说是在渗透测试中最重要的一部分,上文对域名信息收集做了一个简要的叙述,认识了旁站 C 段扫描和子域名挖掘。在渗透测试的 APP 信息收集中,对其进行信息收集可以扩大攻击面,对目标站点进行有针对性的漏洞测试。一些主流的 APP 程序也需要进行信息收集进行风险评估或者安全防范。

        

        

0x02 APP应用程序获取方式

        一般获取 APP 应用程序主要在 Android 的应用商城,IOS 则是在自己的 AppStore 中即可获取 APP 应用程序。除了使用系统自身提供的获取方式,还可以使用第三方平台、一些小程序、应用程序网站等等。

        

        

0x03 Android信息收集

        Android 信息收集,可以使用系统自带的应用商店、安智开发者市场、腾讯应用宝或其他应用程序网站使用 AppInfoScanner 对目标移动端 APP 进行信息收集。文中选择安智开发者市场使用经典的消灭星星小游戏作为演示。

        

03x01 环境说明

kali虚拟机(172.19.189.80)
windows 11笔记本(172.19.188.24)
消灭星星全新版(5.2.1)
AppInfoScanner

        

03x02 环境配置

        在第一次进行 Android 信息收集时,使用 AppInfoScanner 工具需要先对其进行环境配置。操作简单,下载安装工具,并安装其依赖库即可正常使用。

        

下载目标APP,选择相对以前的版本

http://www.anzhi.com/pkg/6cdb_com.brianbaek.popstar.html#

        

安装AppInfoScanner工具

https://github.com/kelvinBen/AppInfoScanner

        

将安装好的AppInfoScanner工具和目标APP拽入到Kali虚拟机中

        

以root权限打开AppInfoScanner工具

cd /home/kali/桌面/AppInfoScanner-master

        

使用pip安装AppInfoScanner工具所需要的库

pip install -r requirements.txt

        

03x03 信息收集

        搭建好 AppInfoScanner 工具所需要的环境依赖后,接下来即可运行工具对目标 APP 进行信息收集。

        

运行AppInfoScanner工具,对目标APP进行信息收集

python3 app.py android -i /home/kali/桌面/7d9cee505acc04c9f79a099e7a60d26f_90144900.apk

        

打开AppInfoScanner工具收集完成的表格文件,到这里即信息收集完成

        

        

0x04 IOS信息收集

        IOS 信息收集,在进行 iOS 信息收集时要确保 Kali 虚拟机的 IP 地址与 iPad mini6平板的 IP地址处于同一局域网中,也就是说需要连接同一个网络才可以正常抓取到 iPad mini6平板中的 APP  数据。

        

04x01 环境说明

kali虚拟机(192.168.228.28)
ipad mini6平板(192.168.228.173)
PortSwigger CA
QQ音乐

        

04x02 配置代理

        配置代理就是为了 Kali 虚拟机的 IP 地址与 iPad mini6平板的 IP地址处于同一局域网中。

        

打开Kali虚拟机自带的burp suite抓包工具

         

选择proxy目录下的options对IP进行配置

         

将端口设置为8888,并选择具体地址找到Kali虚拟机的IP地址

         

设置完成后取消框选默认的代理配置

         

使用ipad mini6平板访问设置中网络下的HTTP代理进行配置

         

将服务器IP改为Kali虚拟机的IP地址,端口设置为8888,并存储

         

04x03 安装证书

        因为直接建立 HTTP 代理是不被 iOS 信任的,需要安装 CA 证书来获得信任。建立 Kali 虚拟机和 iPad mini6平板双方之间的连接。

        

在ipad mini6平板的浏览器中访问http://burp下载安装CA证书

http://burp

        

点击右上角的CA Certificate下载CA证书

         

下载完成后在设置中找到已下载描述文件对CA证书进行安装

         

正确安装完成PortSwigger CA证书应如下图所示

         

04x04 信息收集

        完成了 CA 证书的安装,这时使用 iPad mini6平板访问 APP 应用程序,burp suite 抓包工具就会自动捕获到数据,即信息收集完成。

        

使用iPad mini6平板打开QQ音乐,抓包工具可以捕获其相关信息数据

         

 访问抓包工具的HTTP history目录可以查看到更多信息和请求,用于后续的渗透测试

        

        

0x05 参考文献

[1].余生(心如止水). 为什么需要ca证书?[EB/OL]. [2022-12-03]. https://blog.csdn.net/weixin_45135517/article/details/120587685.

[2].Zichel77. 苹果IOS手机设置BurpSuite抓包(详细步骤)[EB/OL]. [2022-12-03]. https://blog.csdn.net/weixin_43965597/article/details/107864200.

[3].告白热. app测试-资源提取-测试框架-反证书抓包[EB/OL]. [2022-12-03]. https://blog.csdn.net/qq_53577336/article/details/124872662?spm=1001.2014.3001.5502.

        

        

0x06 总结

由于作者水平有限,文中若有错误与不足欢迎留言,便于及时更正。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/58322.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【学习笔记76】认识ajax和ajax的请求

一、认识前后端交互 1、前后端交互 前端向后端发送请求, 索要数据因为前端没有办法存储大量数据, 所以数据都存储在后端当前端需要数据时, 需要向后端发送请求, 得到想要的数据 2、什么是ajax ajax全名async javascript and XML(异步JavaScript和XML)是前后台交互的能⼒&#…

手摸手带你撸一个拖拽效果

目录 前言 准备 创建所需要结构 编写样式 js编写拖拽效果 解释方法 所有代码 结尾 前言 最近看见一个拖拽效果的视频,看好多人评论说跟着敲也没效果,还有就是作者也不回复大家提出的一些疑问,本着知其然必要知其所以然的心理&#xf…

【疯狂世界杯】css 动画实现跳动的足球

📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者😜📝 个人主页:馆主阿牛🔥🎉 支持我:点赞👍收藏⭐️留言📝…

python T检验

T检验通常分为三种:单样本T检验、双样本T检验、配对样本T检验原理可以参考:一文详解t检验本文主要介绍使用python实现T检验的过程,内容主要是参考这篇博文:利用python库stats进行t检验 文章目录一、单样本T检验二、独立样本t检验&…

二、Git本地仓库基本操作——创建Git仓库、提交更新或删除文件

1. 创建本地工作仓库 创建本地工作仓库有两种方法: git init 在本地初始化一个git仓库git clone 直接克隆一个远程的git仓库 方法一: 我们在其中一个目录下,点击鼠标右键,然后启动git bash。输入下面命令: git in…

【实战案例】Python 信用卡欺诈检测其实特简单

当我们在网上购买产品时,很多人喜欢使用信用卡。但信用卡欺诈常常会在身边发生,网络安全正成为我们生活中至关重要的一部分。 为了解决这个问题,我们需要利用机器学习算法构建一个异常行为的识别系统,如果发现可疑,中…

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java高校饭堂管理系统8gmjo

这个选题的话其实有很多的,就看你自己能接受怎么样的,比如可以做网站类、系统类、小程序类、安卓app、大数据类等等,这个也要看你个人能力和技术问题,如果技术小白或者有一点点基础的话建议选择网站类和系统类的,如果有…

微服务框架 SpringCloud微服务架构 10 使用Docker 10.2 镜像命令练习

微服务框架 【SpringCloudRabbitMQDockerRedis搜索分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】 SpringCloud微服务架构 文章目录微服务框架SpringCloud微服务架构10 使用Docker10.2 镜像命令练习10.2.1 练习10 使用Docker 10.2 镜像命令…

Spring boot 自动装配原理

Spring boot 为了解决Bean的复杂配置&#xff0c;引入了自动装配机制&#xff1b;那么什么是自动装配&#xff0c;它的原理又是什么呢&#xff1f;我们先通过以下例子来了解以一下什么是自动装配。 Spring boot 集成 redis 引入依赖包 <dependency><groupId>org…

CTFShow pwn07 (ret2libc-64bit

用ROPgabdet 找到pop rdi地址和ret地址&#xff1a; 来自ctfshow pwn7&#xff1a; 64位程序是需要栈平衡的&#xff0c;而且前六个寄存器用完了才会用栈传参 %rdi&#xff0c;%rsi&#xff0c;%rdx&#xff0c;%rcx&#xff0c;%r8&#xff0c;%r9 用作函数参数&#xff0c;依…

rust编程-rust所有权理解(chapter 4.1)

目录 1. 什么是所有权 1.1 堆与栈 1.2 变量作用域 1.3 String类型 1.4 内存和分配 1.5 变量和数据交互的方式 1.5 所有权和函数 1.6 返回值和作用域 所有权 是Rust独有的特性&#xff0c;该设计开创了编程语言中的先河。所有权使得Rust能保证内存的安全&#xff0c;且不…

游程编码(Run Length Coding)

游程编码游程编码基本介绍示例1示例2游程编码适用的场景游程编码 游程编码&#xff08;Run Length Coding&#xff0c;简称RLC&#xff09;又称游程编码、行程长度编码、变动长度编码 等&#xff0c;是一种统计编码。主要技术是检测重复的比特或字符序列&#xff0c;并用它们的…

亚马逊云科技re:Invent 2022 Ruba Borno主题演讲

2022亚马逊云科技re:Invent全球大会精彩内容应接不暇&#xff0c;亚马逊云科技全球渠道与联盟副总裁Ruba Borno在2022亚马逊云科技re:Invent大会的全球合作伙伴峰会上&#xff0c;为合作伙伴带来一系列全新的合作伙伴创新服务。 云上发展持续加速的当下&#xff0c;上云好比一场…

使用Fiddler对手机App抓包

目录 一、查看 Fiddler 的 ip 地址 二、设置 Fiddler 允许远程连接 三、进行手机端 App 的抓包 3.1.准备工作 3.2.手机设置 3.3.安装根证书 四、可能会遇到的问题 一、查看 Fiddler 的 ip 地址 有两种方法都可以查询到。 第一种方法&#xff1a; 打开 Fiddler&#xff…

[附源码]计算机毕业设计springboot在线招聘网站

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

一分钟带你了解音视频开发进阶(先收藏了)

FFmpeg/WebRTC/RTMP/NDK/Android音视频流媒体高级开发学习路线 随着基础设施的完善&#xff08;光纤入户、wifi覆盖、5G普及&#xff09;的影响&#xff0c;将短视频、直播、视频会议、在线教育、在线医疗瞬间推到了顶峰&#xff0c;人们对音视频的需求和要求也越来越强烈 音视…

实现java项目idea打包发布至服务器(完整版)

问题&#xff1a;如何快速部署本地代码到服务器&#xff1f; 今天介绍的是使用idea的一款插件(Alibaba Cloud Toolkit)实现&#xff0c;首先需要在自己的服务器上安装运行环境&#xff0c;包括&#xff1a;jdk、maven、mysql等&#xff0c;这些操作就不详细说了&#xff0c;可…

Inductive Representation Learning on Large Graphs 论文/GraphSAGE学习笔记

1 动机 1.1 过去的方法 现存的方法大多是transductive的&#xff0c;也就是说&#xff0c;在训练图的时候需要将整个图都作为输入&#xff0c;为图上全部节点生成嵌入&#xff0c;每个节点在训练的过程中都是可知的。举个例子&#xff0c;上一次我学习了GCN模型&#xff0c;它…

考研数据结构大题整合_组三(LZH组)

考研数据结构大题整合 目录考研数据结构大题整合三、LZH组LZH 组一LZH 组二LZH 组三LZH 组四LZH 组五LZH 组七三、LZH组 LZH 组一 给出如图所示的无向图G的邻接矩阵和邻接表两种存储结构. &#xff08;2&#xff09;解答下面的问题&#xff08;6分&#xff09; &#xff08;…

二、进程管理(五)死锁

目录 5.1死锁的定义和产生条件 5.2死锁的处理策略 5.2.1死锁预防 5.2.2死锁避免 5.2.3死锁检测和解除 5.1死锁的定义和产生条件 在并发环境下&#xff0c;各进程因竞争资源而造成的一种互相等待对方手里的资源&#xff0c;导致各进程都阻塞&#xff0c;都无法向前推进的现…