[Android移动安全渗透基础教程] 易受攻击的移动应用程序

news/2024/5/20 21:51:43/文章来源:https://blog.csdn.net/Ananas_Orangey/article/details/119898613

也许每个人出生的时候都以为这世界都是为他一个人而存在的,当他发现自己错的时候,他便开始长大

少走了弯路,也就错过了风景,无论如何,感谢经历


0x01 如何设置 GoatDroid (FourGoats)

1.1 简介(概述)

“GoatDroid” 是一个安装在 “Android” 设备上的程序,用于根据 OWASP Mobile TOP 10 学习检测漏洞

原则上,我们要先在 Android 设备上安装程序,然后在“Server” 端启用“GoatDroid”,让 “Android” 设备上的程序连,只需一台计算机

1.2 步骤

  • 打开模拟器
  • 然后从 “[Appie2存储文件夹]” 文件夹中运行程序 “Appie.exe”
  • “将” OWASP GoatDroid- FourGoats Android App.apk" 程序安装到 “模拟器” 上。该程序将在文件夹中。“[文件夹Appie2]/Appie2/Appie/pentesting/OWASP-GoatDroid-0.9/goatdroid_apps/FourGoats/android_app”
  • 复制 “OWASP GoatDroid- FourGoats Android App.apk” 到 “桌面” 页面
  • 然后使用 “install” 命令
C:\Users\[user]\Desktop
λ adb install "OWASP GoatDroid- FourGoats Android App.apk"
1674 KB/s (1256313 bytes in 0.732s)pkg: /data/local/tmp/OWASP GoatDroid- FourGoats Android App.apk
Success
  • “Success” 是指 “Install” 和 “模拟器”,"模拟器 "是指 “FourGoats”

在这里插入图片描述

  • 然后转到文件夹,在 “Server” 端打开 “Web服务” “[Appie2存储文件夹]/Appie2/Appie/pentesting/OWASP-GoatDroid-0.9/” 找到程序 “goatdroid-0.9.jar”,使用如下命令
C:\Users\[user]\Desktop
λ cd C:\Users\[user]\Desktop\Data\Application\VM\Appie2\Appie\pentesting\OWASP-GoatDroid-0.9\C:\Users\[user]\Desktop\Data\Application\VM\Appie2\Appie\pentesting\OWASP-GoatDroid-0.9
λ java -jar goatdroid-0.9.jar
  • 该程序将打开,单击 “FourGoats” 和 “启动 Web 服务”
    在这里插入图片描述
  • 当它说 “停止 Web 服务” 时,它正在工作

在这里插入图片描述

  • 使用 “IP config” 命令检查 “服务器” 的 “IP 地址”
C:\Users\[user]\Desktop
λ ipconfig
Windows IP Configuration
Wireless LAN adapter Local Area Connection* 3:Media State . . . . . . . . . . . : Media disconnectedConnection-specific DNS Suffix  . :Ethernet adapter Bluetooth Network Connection:Media State . . . . . . . . . . . : Media disconnectedConnection-specific DNS Suffix  . :Wireless LAN adapter Wi-Fi:Connection-specific DNS Suffix  . :Link-local IPv6 Address . . . . . : fe80::f5a0:3bbc:5e4e:5fe2%5IPv4 Address. . . . . . . . . . . : 192.168.0.15Subnet Mask . . . . . . . . . . . : 255.255.255.0Default Gateway . . . . . . . . . : 192.168.0.1
  • 在示例中,“服务器” 的 “IP” 为 “192.168.0.15”
  • 在 “Emulator” 中打开 “FourGoat” 程序,然后选择 “Destination Info”,如图所示

在这里插入图片描述

  • 在 “Server” 端输入 “IP Address”,正常使用 “Port” 如图

在这里插入图片描述

  • 按保存,并尝试使用用户名和密码登录 goatdroid

在这里插入图片描述

  • 将能够访问该功能

在这里插入图片描述

0x02 如何设置 GoatDroid (Herd Financial)

2.1 简介(概述)

“GoatDroid” 是一个安装在 “Android” 设备上的程序,用于学习根据 OWASP Mobile TOP 10 检测漏洞

原则上,我们必须先在Android设备上安装程序,然后在 “服务器” 端启用 “GoatDroid”,并允许 “Android” 设备上的程序连接到 “Server” 端的 “Web服务器”,只需一台计算机

在这篇文章中,你可以安装 “Herd Financial” 程序

2.2 步骤

  • 打开模拟器
  • 然后从 “[Appie2存储文件夹]” 文件夹中运行程序 “Appie.exe”
  • 将 “OWASP GoatDroid- Herd Financial Android App.apk” 程序安装到 “模拟器” 上。该程序将在文件夹中。“[文件夹Appie2]/Appie2]/Appie2/Appie/pentesting/OWASP-GoatDroid-0.9/goatdroid_apps/HerdFinancial/android_app”
  • 复制 “OWASP GoatDroid- Herd Financial Android App.apk” 到 “桌面” 页面
  • 然后使用 “install” 命令
C:\Users\[user]\Desktop
λ adb install "OWASP GoatDroid- Herd Financial Android App.apk"
1223 KB/s (3742671 bytes in 2.986s)pkg: /data/local/tmp/OWASP GoatDroid- Herd Financial Android App.apk
Success
  • 从上面的命令中发现,“Success” 是可以在 “Emulator” 上成功 “install” 的。 你会发现一个名为 “Herd Financial” 的程序

在这里插入图片描述

  • 然后转到文件夹,在 “Server” 端打开 “Web服务” “[文件夹Appie2]/Appie2/Appie/pentesting/OWASP-GoatDroid-0.9/” 找到程序 “goatdroid-0.9.jar”,使用如下命令
C:\Users\[user]\Desktop
λ cd C:\Users\[user]\Desktop\Data\Application\VM\Appie2\Appie\pentesting\OWASP-GoatDroid-0.9\C:\Users\[user]\Desktop\Data\Application\VM\Appie2\Appie\pentesting\OWASP-GoatDroid-0.9
λ java -jar goatdroid-0.9.jar
  • 该程序将打开,单击 “Heard Financial” 和 “启动 Web 服务”

在这里插入图片描述

  • 当它说 “停止 Web 服务” 时,它正在工作

在这里插入图片描述

  • 然后打开程序 “Herd Financial”,如果程序出现 “错误” 无法打开。 或无法安装,建议安装在名为 “Google Galaxy Nexus -4.2.2 – API 17 720×1280” 的 “模拟器” 上
  • 并安装 ARM Translation:https://www.dropbox.com/s/ro15uo27i84ge23/Genymotion-ARM-Translation_v1.1.zip?dl=0
  • 检查 IP
C:\Users\[user]\Desktop
λ ipconfig
Windows IP ConfigurationWireless LAN adapter Local Area Connection* 3:Media State . . . . . . . . . . . : Media disconnectedConnection-specific DNS Suffix  . :Ethernet adapter Bluetooth Network Connection:Media State . . . . . . . . . . . : Media disconnectedConnection-specific DNS Suffix  . :Wireless LAN adapter Wi-Fi:Connection-specific DNS Suffix  . :Link-local IPv6 Address . . . . . : fe80::f5a0:3bbc:5e4e:5fe2%5IPv4 Address. . . . . . . . . . . : 192.168.0.15Subnet Mask . . . . . . . . . . . : 255.255.255.0Default Gateway . . . . . . . . . : 192.168.0.1
  • 在示例中,“Server” 的 “IP” 为 “192.168.0.15”
  • 然后,如图所示选择 “目的地信息” 或按键盘快捷键 “Ctrl + M”

在这里插入图片描述

  • 然后选择 “Destination Info”

在这里插入图片描述

  • 在 “Server” 端输入 “IP Address”,正常使用 “Port” 如图

在这里插入图片描述

  • 使用 “注册” 功能进行测试

在这里插入图片描述

0x03 如何在 Genymotion 模拟器上安装 sieve.apk

3.1 简介(概述)

“sieve.apk” 程序是一个密码管理程序。 我们用它来展示如何利用漏洞在本文中,我们将在名为“Genymotion” 的 “Emulator”上安装一个程序,但问题是无法安装,因为“Emulator” 使用了我们正在使用的计算机的 “CPU”,例如 “Intel core … ”。 但是程序要使用 “mobile” 的 “CPU” 是“ARM”,所以我们需要在“Emulator”中安装程序,将“CPU”转换为“ARM”,这样才能进行编程。

3.2 步骤

  • 安装程序 “Genymotion” 以及如何在如何设置 Genymotion(Android 模拟器)中安装“Emulator”
  • 安装程序 “Appie2”
  • 下载程序 “sieve.apk” 或从 “Dropbox”
  • 打开(1)中设置的 “模拟器”,使用以下命令安装 “sieve.apk” 程序
C:\Users\[user]\Desktop
λ adb install sieve.apk
2502 KB/s (367886 bytes in 0.143s)pkg: /data/local/tmp/sieve.apk
Failure [INSTALL_FAILED_CPU_ABI_INCOMPATIBLE]
  • 你会发现 “INSTALL_FAILED_CPU_ABI_INCOMPATIBLE” 无法 “安装”
  • 下载 ARM Translation,然后不需要解压缩 “zip”,只需将整个文件拖放到 “Genymotion” 中即可

在这里插入图片描述

  • 当出现以上信息时,选择 “OK” 安装 “/system” 下的文件
  • 完成后,会出现一条信息,如图所示,按 “OK”,然后关闭 “Emulator”,然后再次打开它

在这里插入图片描述

  • 再次尝试 “安装” 命令
C:\Users\[user]\Desktop
λ adb install sieve.apk
2085 KB/s (367886 bytes in 0.172s)pkg: /data/local/tmp/sieve.apk
Success
  • 尝试检查 “模拟器”,你会发现 “icon” 的 “图标”

在这里插入图片描述

  • 尝试打开程序

在这里插入图片描述

0x04 如何安装 DIVA (Android)

4.1 简介(概述)

“DIVA”的“Android”版本是一个漏洞程序。 为了练习“Android”版的“渗透测试”,本文介绍如何通过名为“Droid4x”的“模拟器”安装程序。

4.2 步骤

  • 安装 “Emulator” 或准备 “Android” 设备进行安装。 例如使用名为 “Droid4x” 的 “模拟器”
  • 安装完成后,打开 “模拟器”
  • 下载程序 DIVA (Android)
  • 然后按下图中的按钮安装程序

在这里插入图片描述

  • 然后你会看到如图所示的菜单,选择 “Other” 并选择 “Apk install”

在这里插入图片描述

  • 然后选择下载的 “.apk” 文件进行安装。 等结束了,返回查看 “桌面” 页面,查看是否出现 “DIVA” 程序

在这里插入图片描述

  • 尝试打开程序

在这里插入图片描述

0x05 如何安装 InsecureBank

5.1 简介(概述)

“InsecureBank” 是一个针对 “Android” 的漏洞程序,用于练习各种漏洞。 另外,还有其它有趣的漏洞程序如下:

  • 如何设置 GoatDroid (FourGoats)
  • 如何设置 GoatDroid (Herd Financial)
  • 如何在 Genymotion 模拟器上安装 sieve.apk
  • 如何安装 DIVA (Android)

5.2 步骤

  • 下载漏洞程序 “Insecure Bank” 或从 “DropBox” 下载
  • 安装程序 “Android Emulator” 上的 “InsecureBankv2.apk”
  • 转到名为 “\AndroLabServer” 的 “文件夹”,并使用命令 “python app.py” 启用 “服务器”
root@KALI:~/Desktop/Android-InsecureBankv2-master# ls -l
total 12940
drwxrwxrwx 2 root root    4096 Mar  3 13:42 AndroLabServer
drwxrwxrwx 5 root root    4096 Nov  3 11:09 InsecureBankv2
-rwxrw-rw- 1 root root 3462429 Oct 30 09:33 InsecureBankv2.apk
-rw-r--r-- 1 root root 6561697 Mar  6 21:21 InsecureBankv2-dex2jar.jar
-rwxrw-rw- 1 root root    1079 Oct 30 09:33 LICENSE
-rwxrw-rw- 1 root root    1515 Oct 30 09:33 README.markdown
drwxrwxrwx 2 root root    4096 Nov  3 11:09 Spoilers
-rwxrw-rw- 1 root root    8704 Oct 30 09:33 Thumbs.db
-rwxrw-rw- 1 root root 3185178 Oct 30 09:33 Usage Guide.pdf
drwxrwxrwx 4 root root    4096 Nov  3 11:09 wip-attackercode
root@KALI:~/Desktop/Android-InsecureBankv2-master# cd AndroLabServer/
root@KALI:~/Desktop/Android-InsecureBankv2-master/AndroLabServer# ls -l
total 28760
-rwxrw-rw- 1 root root     4996 Oct 30 09:33 app.py
-rwxrw-rw- 1 root root      727 Oct 30 09:33 database.py
-rw-r--r-- 1 root root      908 Mar  2 13:58 database.pyc
-rw-r--r-- 1 root root  5882933 Mar  2 13:56 getopt
-rwxrw-rw- 1 root root        0 Oct 30 09:33 __init__.py
-rw-r--r-- 1 root root 17637486 Mar  2 13:58 json
-rwxrw-rw- 1 root root     1647 Oct 30 09:33 models.py
-rw-r--r-- 1 root root     2690 Mar  2 13:58 models.pyc
-rwxrw-rw- 1 root root     5120 Mar  3 13:42 mydb.db
-rwxrw-rw- 1 root root      604 Oct 30 09:33 README.markdown
-rw-r--r-- 1 root root  5882930 Mar  2 13:58 sys
root@KALI:~/Desktop/Android-InsecureBankv2-master/AndroLabServer# python app.py
The server is hosted on port: 8888
  • 在 “Server” 中,按照以下说明检查 “IP”
root@KALI:~# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0c:29:99:e8:4b  inet addr:192.168.1.43  Bcast:192.168.1.255  Mask:255.255.255.0inet6 addr: fe80::20c:29ff:fe99:e84b/64 Scope:LinkUP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1RX packets:1341 errors:0 dropped:0 overruns:0 frame:0TX packets:65 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:94060 (91.8 KiB)  TX bytes:9676 (9.4 KiB)lo        Link encap:Local Loopback  inet addr:127.0.0.1  Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING  MTU:65536  Metric:1RX packets:20 errors:0 dropped:0 overruns:0 frame:0TX packets:20 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0 RX bytes:1200 (1.1 KiB)  TX bytes:1200 (1.1 KiB)
  • 从示例端口“是” 8888 设置 “Android 模拟器” 上编程的 “IP”,然后单击 “Submit” 按钮

在这里插入图片描述

  • 我们可以使用 “帐户” 登录,如下所示
Username: jack
Password: Jack@123$

参考链接

http://blog.itselectlab.com/?p=4726

http://blog.itselectlab.com/?p=4892

http://blog.itselectlab.com/?p=4845

http://blog.itselectlab.com/?p=6995

http://blog.itselectlab.com/?p=7583


你以为你有很多路可以选择,其实你只有一条路可以走


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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第十四届蓝桥杯集训——JavaC组第十三篇——for循环

第十四届蓝桥杯集训——JavaC组第十三篇——for循环 目录 第十四届蓝桥杯集训——JavaC组第十三篇——for循环 for循环(重点) 倒序迭代器 for循环死循环 for循环示例 暴力循环 等差数列求和公式 基础循环展开 循环控制语句 break结束 continue继续 for循环(重点) f…

MySQL主从复制太慢,怎么办?

本文分析了MySQL主从延迟的原因以及介绍了MTS方案。点击上方“后端开发技术”,选择“设为星标” ,优质资源及时送达mysql主从同步延迟原因导致备库延迟的原因主要有如下几种:通常备库所在机器的性能要比主库所在的机器性能差,执行…

nodejs092学生考勤请假管理系统vue

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.3 B/S结构 4 2.4 MySQL数据库 4 前端技术:nodejsvueelementui 前端:HTML5,CSS3、JavaScript、VUE 系统…

ChatGpt详细注册流程

ChatGpt详细注册流程ChatGpt的网址:直接点击我 点击链接后向下滑动看到TRY CHATGPT如下图所示: 点击TRY CHATGPT后会跳转如下图界面: 点击Log in(登录)如下图: 因为首次登录你肯定是没有账号的所以需要先点击红框框出的Sign up…

七个步骤覆盖 API 接口测试

接口测试作为最常用的集成测试方法的一部分,通过直接调用被测试的接口来确定系统在功能性、可靠性、安全性和性能方面是否能达到预期,有些情况是功能测试无法覆盖的,所以接口测试是非常必要的。首先需要对接口测试的基本信息做一些了解&#…

Java+Swing实现的五子棋游戏

JavaSwing实现的五子棋游戏一、系统介绍二、功能展示1.游戏展示三、系统实现1.ChessFrame .java四、其它1.其他系统实现2.获取源码一、系统介绍 五子棋游戏实现人机对战、人人对战两个模式。 二、功能展示 1.游戏展示 三、系统实现 1.ChessFrame .java package five;impor…

JDK的使用——Java开发第一步

JDK的使用——Java开发第一步 1 什么是JDK JDK是 Java 语言的软件开发工具包,是整个java开发的核心,使用Java开发第一步就是要在计算机上安装JDK。 JDK主要包含三个部分: 1 JAVA开发工具(jdk\bin) 2 基础开发库(jdk\jre\lib) 3 基础开发库…

java TCP发送数据

TCP是一种可靠的网络协议 他在通信的两端都建立了Socke对象 从而形成了两端的虚拟链路 一旦建立了虚拟链路 两端就可以通过链路通信 TCP会将通信两端分为 客户端和服务端 客户端通过Socke实现 服务端通过ServerSocke实现 那么 我们就来实现一下发送数据的方法 我们创建一个测…

【C语言数据结构(基础版)】第三站:链表(二)

目录 一、单链表的缺陷以及双向链表的引入 1.单链表的缺陷 2.双向链表的引入 3.八大链表结构 (1)单向和双向 (2)带头和不带头 (3)循环和不循环 (4)八种链表结构 二、带头双向…

web网页设计期末课程大作业:美食餐饮文化主题网站设计——HTML+CSS+JavaScript美食餐厅网站设计与实现 11页面

👨‍🎓静态网站的编写主要是用HTML DIVCSS JS等来完成页面的排版设计👩‍🎓,常用的网页设计软件有Dreamweaver、EditPlus、HBuilderX、VScode 、Webstorm、Animate等等,用的最多的还是DW,当然不同软件写出的…

[附源码]Node.js计算机毕业设计高校教学过程管理系统Express

项目运行 环境配置: Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境:最好是Nodejs最新版,我…

java毕业设计——基于java+Socket+sqlserver的网络通讯系统设计与实现(毕业论文+程序源码)——网络通讯系统

基于javaSocketsqlserver的网络通讯系统设计与实现(毕业论文程序源码) 大家好,今天给大家介绍基于javaSocketsqlserver的网络通讯系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。 文章目录: 基于jav…

基于java+springmvc+mybatis+vue+mysql的少儿编程管理系统

项目介绍 在国家重视教育影响下,教育部门的密确配合下,对教育进行改革、多样性、质量等等的要求,使教育系统的管理和运营比过去十年前更加理性化。依照这一现实为基础,设计一个快捷而又方便的网上少儿编程教育网站系统是一项十分…

820爆炸案(模拟案件)

文章目录模拟案件背景相关密码快压word邮箱BitLocker系统证书bestcrypt涉案图片模拟案件背景 8月20日18:00某市汽车站发生一起爆炸案件,经初步侦查,炸弹系通过手机远程引爆,办案人员经过综合研判分析,确定了引爆炸弹的…

并发编程之深入理解ReentrantLock和AQS原理

AQS(AbstractQueuedSynchronizer)在并发编程中占有很重要的地位,可能很多人在平时的开发中并没有看到过它的身影,但是当我们有看过concurrent包一些JDK并发编程的源码的时候,就会发现很多地方都使用了AQS,今…

Linux | 网络概念理解 | 对网络的初识

文章目录重新看待计算机体系结构软件分层的思想网络中的分层协议的理解局域网的理解MAC地址 && IP地址报头的作用端口号(port)重新看待计算机体系结构 计算机由硬件组成,而不同硬件之间要怎么通信,或者说要怎么进行数据的…

8年软件测试工程师感悟—我亲身经历的2022年软件质量工作

这两天和朋友谈到软件测试的发展,其实软件测试已经在不知不觉中发生了非常大的改变,前几年的软件测试行业还是一个风口,随着不断地转行人员以及毕业的大学生疯狂地涌入软件测试行业,目前软件测试行业“缺口”已经基本饱和。当然&a…

Linux小黑板(4):文件与文件描述符fd

"性向善,才是人类最后的骄傲和胜算。" 一、认识文件 在linux中每个文件都有一个类型(type)来表明自己在系统中承担的角色: 普通文件(regular file): 应用程序包含任意数据。它常常区分二进制文件(binary file) 与 文本文件(txt file),而 文本文件只含有…

阿里云效产品【代码管理Codeup】企业项目代码管理

文章目录前言一、Codeup是什么二、使用步骤1.首先登录阿里云2.进入云效3.进入云效4.代码分组5.新建代码库三、SSH 密钥总结前言 阿里云Code(新版:代码托管Codeup)阿里云代码管理 Codeup是基于 Git 的代码管理平台,10万企业正在使…

机器学习必会技能之微积分【一文到底】

机器学习必会技能 —— 微积分【一文到底】 文章目录机器学习必会技能 —— 微积分【一文到底】1 微积分的四类问题2 深入理解导数的本质3 深入理解复合函数求导4 理解多元函数偏导5 梯度究竟是什么?6 真正理解微积分6.1 直观理解6.2 理解微积分基本定理7 非常重要的…