admin 管理员组文章数量: 1087135
2024年3月18日发(作者:drawimage方法的功能是)
第28卷 第6期
2021年6月
仪器仪表用户
INSTRUMENTATION
Vol.28
2021 No.6
针对Android平台的渗透测试技术研究
宋玉言
(北方工业大学 信息学院,北京 100144)
本文针对Android平台在网络通信方面的漏洞,利用python语言编写了“端口扫描”“ping扫射”“syn flood”
摘 要:
等脚本程序,基于此脚本程序设计针对搭载Android系统的移动设备的渗透测试实验;通过kali linux系统和arpspoof
软件,设计并实施针对Android系统的ARP欺骗实验。通过渗透测试实验检验运行此脚本程序和ARP欺骗后对
Android移动设备产生的影响及后果,分析Android移动设备在渗透测试实验中发现的漏洞。
关键词:Android平台;渗透测试;拒绝服务攻击;ARP欺骗
DOI:10.3969/.1671-1041.2021.06.002
中图分类号:TP309 文献标志码:A
文章编号:1671-1041(2021)06-0006-08
Research on Penetration Testing Technology
for Android Platform
Song Yuyan
(School of Information, North China University of Technology,Beijing,100144,China)
Abstract:Aiming at the loopholes of Android platform in network communication, this paper uses Python language to write
"port scanning", "Ping scanning", "SYN Flood" and other script programs. Based on this script program, the penetration test
experiment for mobile devices equipped with Android system is designed Linux system and arpproof software, design and imple-
ment ARP Spoofing experiment for Android system. Through the penetration test experiment, this paper examines the impact and
consequences of running this script and ARP Spoofing on Android mobile devices, and analyzes the vulnerabilities found in the
penetration test experiment of Android mobile devices.
Key words:android platform;penetration testing;denial of service attack;ARP spoofing
0 引言
搭载Android操作系统的智能手机发展迅速,对于人
们的日常生活的帮助和影响越来越大。根据中国信通院发
布的权威数据显示,2020年,中国国内手机总出货量累计
达到3.08亿部,其中智能手机出货量达到2.96亿部,占比
达到96%。
[1]
全球智能手机市场经过10余年激烈的竞争与发展,到
2020年底,谷歌公司的Android系统和苹果公司的IOS系
统占据了智能手机市场的绝大部分份额
[2]
。Android操作系
统的市场份额迅速增长的原因之一是由于Android系统基
于Linux系统打造,具有良好的开源性。但正是由于其开
源性等特点,Android系统本身存在许多的安全漏洞,容易
成为黑客等不法分子攻击的目标
[3]
。
收稿日期:
2021-04-09
作者简介:
宋玉言(1996-),男,北京顺义人,在读硕士研究生,研究方向:电子与通信。
第6期宋玉言·针对Android平台的渗透测试技术研究
7
图1 Android平台组件
Fig.1 Android platform components
要想及时地防范不法黑客针对Android系统的恶意攻
击,就需要安全研究人员尽可能早地了解整个Android系
统并发现其存在的系统安全漏洞,及时作出改进与防范。
要达到以上目的,渗透测试技术是个非常好的方式之一
[4]
。
渗透测试技术是一种安全的测试性技术,在实际使用的网
络条件下,通过编写各种脚本程序或使用专业软件,站在
黑客的视角下对Android手机进行模拟攻击,查看Android
手机被攻击后的结果,通过研究分析实验结果,验证评估
Android手机存在的各种安全漏洞和可能造成的影响
[5]
。
现有的传统渗透测试技术,主要针对基于传统网络下
的系统和设备,缺少以针对现代移动网络下的设备进行的
测试技术,特别是搭载Android系统的智能手机。所以通
过研究移动互联网和Android操作系统的安全机制,并通
过设计研究相应的渗透测试技术发现其系统漏洞,对于防
范不法分子的恶意攻击和维护Android操作系统的安全有
着十分重要的意义
[6]
。
1 概述
1.1 Android系统
Android是一种基于Linux的开放源代码软件栈,为各
类设备和机型而创建。
Android平台主要组件如图1所示。
1.2 渗透测试
渗透测试是一种基于攻击目标的测试方法,通过模拟
图2 实验流程
Fig.2 Experimental flow
图3 实验环境搭建
Fig.3 Construction of experimental environment
主动攻击目标系统,查看其存在的问题。其目的在于通过
主动的模拟攻击,站在黑客的角度,在攻击过程中找到目
标系统的弱点、漏洞和缺陷等
[7]
。
2 渗透测试实验设计
根据上述对Android系统和渗透测试的流程研究与分
析,本研究将针对Android移动设备的渗透测试实验流程
设计为制定测试方案、被测目标信息收集、实施渗透测试、
完成实验结果分析4个阶段
[8]
。实验流程如图2所示。
2.1 制定测试方案
在渗透测试实验实施之前,需要制定完善的测试方案。
包括确定测试目标、范围、计划、测试工具、环境搭建等。
2.2 实验环境搭建
首先,建立无线网络环境,测试平台为两台PC主机,
分别搭载win10系统和kali linux系统。
搭建无线网络环境,本研究选用Tenda AC6 1200M
11AC无线路由器建立实验无线网络。渗透测试实验环境搭
建如图3所示。
将两台测试PC主机和两台被测目标Android智能手机
连接在同一wifi网络下,并测试其连接性,为接下来实验
做好准备。
8
仪器仪表用户
INSTRUMENTATION
第28卷
图4 Ping扫射代码实现
Fig.4 Implementation of Ping sweeping code
图7 端口扫描代码实现
Fig.7 Port scan code implementation
2.3 实验程序实现
1)Ping扫射
Ping扫射程序原理基于ICMP协议。Ping扫射规定在
一定的时间内,探测主机向目标主机发送一个包含当前时
间值的ICMP数据包后,收到了来自目标主机的ICMP回送
数据包,则表示Ping成功。
Ping扫射程序校验方法代码实现如图4所示。
程序流程图如图5所示。
如果在实验中不明确被测目标的IP地址,此程序就无
法实现Ping出目标。为解决此问题,可将上述程序中的对
单一IP地址进行Ping扫射修改为对一段范围内的IP地址
进行Ping扫射,程序流程图如图6所示。
2)端口扫描
根据TCP连接和端口扫描相关技术原理,本研究通过
python编写了TCP端口扫描程序。具体内容为对目标系统
的某个端口建立完整的TCP连接,通过连接的建立情况判
断一个目标地址的端口开放情况。
端口扫描代码实现如图7所示。
程序流程图如图8所示。
3)Syn flood攻击
通过python中的scapy模块,构建Syn Flood攻击。
图5 Ping扫射程序流程图
Fig.5 Flow chart of Ping scanning program
图6 范围Ping扫射流程图
Fig.6 Flow chart of range Ping sweeping
第6期宋玉言·针对Android平台的渗透测试技术研究
9
图8 端口扫描程序流程图
Fig.8 Flow chart of port scanning program
Syn Flood攻击代码实现如图9所示。
程序流程图如图10所示。
3 实验结果及分析
3.1 信息收集阶段结果分析
1)Ping扫射
当已知被测目标设备的IP地址时,选用Ping扫射(单
一)程序进行实验,可快速Ping到目标设备。
首先,运行单一IP地址Ping扫射python程序,对两
个目标Android设备进行探测。
然后,对IP地址为172.20.10.5的搭载Android8.0的三
星s8进行Ping扫射。结果如图11所示。
这里显示此程序成功Ping到IP地址为172.20.10.5的
三星s8测试设备。
小米4手机实验结果与s8类似。
若被测目标设备的具体IP未知,处于某IP段内,选
图9 Syn Flood攻击代码实现
Fig.9 Implementation of Syn Flood attack code
图10 Syn flood攻击程序流程图
Fig.10 Flow chart of Syn Flood attack program
10
仪器仪表用户
INSTRUMENTATION
第28卷
图11 s8 Ping扫射结果
Fig.11 Result of s8 Ping
图13 s8端口扫描结果
Fig.13 Scan result of s8 port
用范围IP地址Ping扫射程序进行实验。可发现一定IP范
围内的目标设备,但当较与单一IP地址Ping扫射程序用时
较长。
运行Ping扫射(范围)程序,对给定IP范围内的目
标设备进行Ping扫射。结果如图12所示。
实验结果表明,此程序能够发现IP地址为172.20.10.2
和172.20.10.3的两台Android智能手机。
此实验结果表明:Ping扫射可以发现局域网内存在的
两台Android手机。
将实验重复20次,20次实验中成功20次,失败0次,
成功率100%。20次实验程序执行所需时间平均为10.92s,
比扫描单一IP地址的Ping程序所需时间较长。
2)端口扫描
首先,对搭载Android8.0的三星s8进行实验。
打开被测手机的14806端口,随后运行python程序
,对已开放14806端口的三星s8手机进行端口
扫描,结果如图13所示。
图12 范围Ping扫射结果
Fig.12 Range Ping results
图14 Syn Flood程序运行结果
Fig.14 Running result of Syn Flood program
此实验结果表明,当Android8.0设备的某端口打开时,
端口扫描程序能够检测到Android设备的此端口处于打开
状态。
小米4手机实验结果与s8类似。
3.2 测试实施阶段结果分析
1)拒绝服务渗透
首先,对搭载Android8.0的三星s8进行实验。
运行python程序“Syn flood”,输入目标Android设备
的IP地址并指定端口号,可进行源地址为随机生成、自由
输入,使用本机的多线程Syn flood攻击。如图14所示。
根据20次实验结果平均值,被测目标读取网页时间实
验结果如图15所示。
此实验结果表明,拒绝服务攻击对Android8.0手机读
取网页的影响较大。
小米4手机实验结果与s8类似。
被测目标实时网速如图16所示。
“端口扫描”
第6期宋玉言·针对Android平台的渗透测试技术研究
11
图15 读取网页时间
Fig.15 Time of reading web page
图17 设备能耗变化
Fig.17 Energy consumption change of equipment
此实验结果表明,拒绝服务攻击对Android8.0手机的
网络连接影响较大。
小米4手机实验结果与s8类似。
被测目标实时能耗如图17所示。
实验数据表明,拒绝服务攻击对Android8.0手机的设
备能耗的影响非常大。
小米4手机实验结果与s8类似。
被测目标CPU使用率如图18所示。
由此看出,在遭受20次Syn Flood拒绝服务攻击过程
中,CPU平均使用率平均增加14.51%,受到较大影响。
小米4手机实验结果与s8类似。
2)ARP欺骗
在进行ARP攻击之前,查看被攻击主机的ARP缓存
表,打开cmd,输入arp -a,如图19所示。
图19中显示,攻击主机中的ARP缓存表记录了网关、
被攻击目标手机和攻击主机的MAC地址,可发现被攻击目
图16 实时网速变化
Fig.16 Real time network speed change
图18 CPU使用率变化
Fig.18 CPU Utilization change
图19 被攻击主机ARP缓存表
Fig.19 ARP Cache table of attacked host
标手机的MAC地址和攻击主机不同。
在kali linux中利用arpspoof工具,对被测目标手机发
12
仪器仪表用户
INSTRUMENTATION
第28卷
图20 发起ARP攻击
Fig.20 Launching ARP attack
图22 运行driftnet
Fig.22 Running drivetnet
起ARP欺骗攻击,如图20所示。
从图20中可以看出,此时攻击主机不断地向被测目
标手机发送ARP应答包,这个应答包将网关的IP地址
192.168.1.1和虚拟机的MAC地址50:2B:73:D5:71:
08绑定在一起,从而将被测目标手机的ARP缓存表中的网
关的MAC地址修改为攻击主机的MAC地址。
检查物理机的ARP缓存表,检查其是否遭遇了ARP
欺骗。结果如图21所示。
从图21中可以看出,此时被攻击目标手机的ARP缓
存表中的MAC地址和攻击主机的MAC地址是一样的。可
以认定,物理机遭遇了ARP欺骗。
此时,被攻击目标手机和网关通信的数据包都会流经
攻击主机,那么可以在攻击主机的虚拟机中利用driftnet工
具,捕获被攻击手机正在浏览的图片。
在虚拟机中的kali linux系统中,打开driftnet。如图22
所示。
从图22中可以看出,攻击主机正在不断地捕获被测目
标手机和网卡之间的数据包。在被测目标手机中,打开一
图21 被攻击后ARP缓存表
Fig.21 ARP Cache table after being attacked
图23 手机端浏览图片
Fig.23 Browsing pictures on mobile terminal
图24 driftnet窗口显示图片
Fig.24 Image displayed in the driftnet window
个应用,浏览图片。如图23所示。
在攻击主机中的driftnet窗口中监看。如图24所示。
实验结果表明,被测目标手机可被ARP欺骗攻击,导
致信息泄露。
第6期
3.3 实验小结
宋玉言·针对Android平台的渗透测试技术研究
13
Android10.0系统还是目前市场占有率最高的Android8.0系
统,都在抵御拒绝服务攻击方面的漏洞;参与实验的两台
Android手机在受到Syn Flood这一泛洪类拒绝服务攻击时,
皆受到网络限制、能耗上升等影响。另外,通过arpspoof
软件伪造MAC地址,从而进行的ARP欺骗攻击也对两台
Android手机造成了影响,使得两台手机的信息遭到泄露。
通过此实验,实现了渗透测试对移动目标设备的渗透
实例。通过分析实验数据,可为之后的研究打下基础。
本章依次对Android8.0手机和Android10.0手机进行了
Ping扫射实验、端口扫描实验、拒绝服务攻击实验和ARP
欺骗实验,并进行了实验数据分析。根据各实验结果表明,
两台搭载Android8.0和Android10.0系统的智能手机不存在
过滤Ping扫射和端口扫描的防火墙,普通的Ping扫射和端
口扫描都能成功实施在目标手机上;两台搭载Android8.0
和Android10.0系统的智能手机也不存在抵御Syn Flood拒
绝服务攻击的防火墙,在受到此类攻击时,两台Android
智能手机在实时网速、读取网页时间、CPU使用率以及实
时能耗上的数据都产生了十分大的波动,对于日常使用有
着较大影响;两台搭载Android8.0和Android10.0系统的智
能手机也无法抵御ARP欺骗,实验结果表明,ARP欺骗可
成功获取目标手机的信息,造成严重的信息泄露。
参考文献:
[1]
钟越,付迪阳.Android应用程序隐私权限安全研究[J].信息安全
[2]
[3]
[4]
[5]
[6]
[7]
[8]
研究,2021,7(03):287-292.
王亚洲,王斌.基于深度学习的安卓恶意应用检测[J].计算机工程
与设计,2020,41(10):2752-2757.
高枫.安卓系统曝出高危漏洞[J].计算机与网络,2020,46(11):51.
范铭,刘烃,刘均,等.安卓恶意软件检测方法综述[J].中国科学:信
息科学,2020,50(08):1148-1177.
潘文强.基于流量分析的安卓恶意软件检测[D].成都:电子科技
大学,2020.
刘存,李晋.安卓平台软件漏洞挖掘与分析技术浅析[J].保密科学
技术,2020(2):33-38.
张楠熙.基于Java语言的安卓手机软件开发研究[J].数字技术与
应用,2019,37(12):118,120.
陈蓉.面向安卓的恶意流量分类识别方法研究[D].北京:北京交
通大学,2019.
4 结语
本文首先介绍了Android系统的基本架构和市场占有
情况,分析了Android系统各组件的基本情况。随后介绍
了渗透测试的基本内容,通过研究国内外现有的渗透测试
技术,并结合Android系统的特点,选择适当的渗透测试技
术,设计并通过python和kali linux系统实现对Android移
动设备的渗透测试实验。通过分析实验数据,发现Android
系统在能耗管理和信息安全等方面存在的漏洞。
此次渗透测试实验的结果表明,无论是最新的
(上接第49页)
由于PCS管道需要贯穿安全壳,实际布置中PCS管道
还需要避开诸多设备。第1方案由于冷管和热管管径不同,
但因为只是互换贯穿件位置,对安全壳厂房内外设备布置
的变动影响较小;第2方案对安全壳结构影响较大,需要
在电厂设计初期进行充分考虑,但从长远来看,该方案对
PCS系统自然循环建立更为有利
[4]
。在运行机组中则可以
考虑为壳内冷管增加保温层,或者在安全壳温度和压力不
可控的缓慢上升事故中,考虑提前手动触发PCS,以保证
自然循环的顺利建立。
分析结果,提出了非能动安全壳热量导出系统管道布置的
几种优化方案,以提升事故工况下非能动安全壳热量导出
系统的初始自然循环驱动压头,加强安全壳内热量导出效
能,降低安全壳内峰值压力和温度,确保安全壳完整性。
参考文献:
[1]
中国核电工程有限公司.非能动安全壳热量导出系统手册[Z].
[2]
丘锦萌,吴健,田卫卫,等.华龙一号非能动安全壳冷却系统热工
水力分析[J].原子能科学技术,2020,54(1):72-80.
[3]
李军,李晓明,喻新利,等.非能动安全壳热量导出系统设计方案
及评价[J].原子能科学技术,2018,52(6):1021-1027.
[4]
王凯,高元."华龙一号"非能动安全壳热量导出系统布置优化研
究[J].中国核电,2020,13(1):22-24.
4 结语
本文对华龙一号机组非能动安全壳热量导出系统管道
布置方案进行了深入分析,充分考虑了事故工况下PCS触
发时管道实际布置对PCS建立自然循环的影响。基于以上
版权声明:本文标题:针对Android平台的渗透测试技术研究 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1710757653a571587.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论