![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android安全
文章平均质量分 88
行者无疆-超越
这个作者很懒,什么都没留下…
展开
-
Bionic中的ptrace函数
ptrace函数的原型是:long ptrace(enum __ptrace_request request, pid_tpid, void *addr, void *data);q 参数request是请求ptrace执行的操作。q 参数pid是目标进程的ID。q 参数addr是目标进程的地址值。q 参数data的作用则根据request的不同而变化,如果需要向目原创 2014-04-30 15:46:18 · 1086 阅读 · 0 评论 -
Android签名漏洞分析
Android的签名在理论上可以防止别人破坏了软件后(例如加入恶意代码)还能以你的名义发布。但是Android的签名机制最近接连暴露了两个漏洞,导致整个签名机制形同虚设。第一个漏洞是由国外的安全公司 BlueboxSecurity发现的,这个漏洞自Android 1.6以来就一直存在,号称对99% 的android设备造成影响。恶意软件制作者可以在不破坏原有APK签名的前提下,利原创 2014-04-30 15:46:27 · 1374 阅读 · 0 评论 -
SEAndroid的各种策略文件
在external/sepolicy目录存放了很多SELinux的策略定义文件。通过这些文件我们能了解到SEAndroid更多的细节,下面我们一起看看这些文件的内容。1. 角色定义文件roles角色定义文件用来定义SELinux系统的角色。文件roles的内容如下:roler;role rtypes domain;从这里可以看到,SEAndroid实际上只定义了一种原创 2014-04-30 15:46:46 · 2513 阅读 · 0 评论 -
Android设置守护进程的安全上下文
前面我们已经介绍了客体的安全上下文是通过文件file_contexts来指定的。但是作为主体的进程,它的安全上下文又是在哪里指定的呢?我们知道,启动进程有两种方式,一种是通过init进程来启动守护进程,另一种是通过Zygote来启动应用进程。在“7.1.2节启动Service进程”中介绍service_star()t函数时有一段代码是关于获得守护进程的安全上下文的,让我们一起来看看:原创 2014-04-30 15:46:52 · 2594 阅读 · 0 评论 -
SEAndroid简介
SEAndroid是Security Enhancementsfor Android(安全增强型Android)的缩写,这是一个把SELinux移植到Android中的项目,目前Android上的SELinux和标准Linux中的SELinux还有一些区别。如果希望了解这个项目的更多细节,可以访问网站http://selinuxproject.org/page/SEAndroid。SEAnd原创 2014-04-30 15:46:44 · 999 阅读 · 0 评论 -
Init进程初始化安全上下文
selinux_initialize()函数调用selinux_android_load_policy()函数装载并向内核设置了策略文件后,接着调用了selinux_init_all_handles()函数,这个函数用来装载系统中所有文件和属性的安全上下文,下面我们看看这个函数的代码:voidselinux_init_all_handles(void){ sehandle =原创 2014-04-30 15:46:50 · 2569 阅读 · 0 评论 -
Android设置应用进程的安全上下文
理解了守护进程的安全上下文的创建过程后,我们再看看应用进程的安全上下文是如何创建的。应用进程是通过Zygote进程fork出来的,但是不会调用exec。在前面介绍Zygote进程时我们已经知道了创建应用进程时会调用函数ForkAndSpecializeCommon(),这个函数则通过调用selinux_android_setcontext()函数来设置应用进程的安全上下文,如下所示:rc =原创 2014-04-30 15:46:54 · 3498 阅读 · 0 评论 -
Init进程设置SELinux的Policy
Init进程的main()函数有一段代码用来初始化SELinux,如下所示:int main(......) { ...... //设置SELinux的回调函数union selinux_callback cb;cb.func_log = klog_write; selinux_set_callback(SELINUX原创 2014-04-30 15:46:48 · 3379 阅读 · 0 评论 -
奇虎360安全牛人全球挑战赛无线部…
前几天在网上看到了一个360安全挑战赛的站点下载了其中无线挑战部分的题看了看。一共有三道题,前面两道题比较简单,都是关于apk的反编译,大概花了4个小时完成了,但是第三道题却没完成,这道题需要工具来完成so文件的反编译。然后在网下了IDA的评估版,反编译出来看了看,但是我对ARM汇编还没有熟到看C代码一样,要完成估计比较费劲,大概需要好几天,毕竟自己不是专业玩破解的,而且将来估计也不会干这行,也就原创 2014-04-30 15:47:09 · 2583 阅读 · 0 评论 -
Android的SandBox(沙箱)
在研究Android系统时,有时会遇到Sandbox(沙箱)这个概念。沙箱概念本身并不是太新奇,但是一直不是很清楚Android是如何实现它所称的“沙箱”的。网上不少人声称应用使用了虚拟机就是应用了沙箱,一直对这种说法表示怀疑。最近发现Android的网站上更新了一些文档,其中包括对Sandbox的解释,这才明白Android中Sandbox的含义。Android的”沙箱“原创 2014-10-29 15:57:25 · 9145 阅读 · 0 评论 -
Android利用ptrace实现Hook API
Hook API的技术由来已久,在操作系统未能提供所需功能的情况下,利用HookAPI的手段来实现某种必需的功能也算是一种不得已的办法。笔者了解Hook API技术最早是在十几年前,当时是在Windows平台下开发电子词典的光标取词功能。这项功能就是利用HookAPI的技术把系统的字符串输出函数替换成了电子词典中的函数,从而能得到屏幕上任何位置的字符串。无论是16位的Windows9原创 2014-04-30 15:46:20 · 9617 阅读 · 5 评论