Android 重启代码 无需root卸载系统软件 不安装为系统应用 不使用系统签名

Android爆出一个已经存在四年的重大漏洞,可以绕过数字签名
Bluebox Security 实验室一个团队的安全研究人员发现Android有一个已经存在四年的漏洞,可以允许恶意软件修改经过验证的安全应用程序,然后感染软件设备,而用户则完全无法察觉到这个恶意软件的存在。
通常情况下每一个应用程序都是有数字签名的,软件开发者拥有密钥,供软件开放人员更新软件。如果密钥不匹配的话,就会被系统拒绝。而这个漏洞则可以绕过数字签名光明正大的修改APK文件,也就是说恶意代码完全可以在不被用户察觉的情况下完成对软件的修改。
该团队说,这个BUG早在Android 1.6 的时候就存在,所以现在这个漏洞将会影响到99%的Android系统的手机。这个BUG已经在今年的2月份已经通知了谷歌了,并且制作了漏洞补丁。不过因为Android系统的碎片化,所以现在只有三星Galaxy S4更新了补丁,而谷歌的Nexus设备的补丁则正在开发中。
当然安卓党也不必惊慌,因为恶意软件要感染你的应用软件,就必须先进入你的手机。只要你到官方网站去下载或者购买,都是很安全的。[ via ]
# 关于 Android 数字签名
在Android 系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系。Android系统要求每一个安装进系统的应用程序都是经过数字证书签名的,数字证书的私钥则保存在程序开发者的手中。这个数字证书并不需要权威的数字证书签名机构认证,它只是用来让应用程序包自我认证。
00:50:35 :
00:52:12 :
元宵节快乐
00:40:15 :
谁搬来的救兵
00:49:47 :
05:31:23 :哎呀,服务正在维护中……
休息一下,马上回来!android(11)
原文出自:/welenwho/archive//2494984.html
& & & &android想要获得系统权限有几种途径,一种就是你的程序固化的系统中,这种方式可以通过将apk放到rom中/system/app中然后刷机即可,或者是在你的程序root后通过root文件管理器将apk放到改目录下.第二种就是你的程序必须要有该平台的签名,那么怎样获得android下的系统签名呢.
& & &首先需要有android的源码,编译出signapk.jar文件,signapk的源码在android源码目录的/build/tools/signapk下,首先需要cd到该目录下,然后通过javac signapk.java命令编译该源文件,得到SignApk$SignatureOutputStream.class和SignApk.class文件,然后手动创建 k/com/android/signapk目录,然后将两个class文件放到该目录下,执行jar
cvfm signapk.jar SignApk.mf -C k\ .即可生成signapk.jar文件,得到android提供的签名程序(k\ .之间有空格).
& & 然后是在android源码目录中的位置是/build/target/product/security下面的platform.pk8和platform.x509.pem两个文件(该目录下面还有两个testkey.pk8和testkey.x509.pem文件这两个是系统签名测试文件,第三方rom一般通过使用这个重新签名修改后的rom,上面提到的第一种方法修改完后需要使用该文件签名,不签在某些recovery下是可以通过的,但是还是建议签)
& & 在获得signapk.jar文件和platform.pk8和platform.x509.pem文件后就可以对某个apk进行系统签名了 ,具体执行指令如下,假如需要对名为welen.apk(在此之前,welen.apk文件的生成时必须在AndroidManifest.xml文件中加入android:sharedUserId=&android.uid.system&,使其获得和系统一样的uid,在加入该属性后如果没有经过系统签名,该apk是无法安装的)的文件进行系统签名,则
java -jar signapk.jar platform.x509.pem platform.pk8 welen.apk welen_signed.apk
使用上面指令即可对welen.apk文件进行签名,签名后的文件拥有系统程序的权限,可执行静默安装卸载,系统关机重启,强制结束进程等操作,具体的关机重启的代码就不写了
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:82560次
排名:千里之外
原创:10篇
评论:21条查看: 18955|回复: 101
android应用静默升级,安装完成后自动启动该应用
签到天数: 59 天连续签到: 1 天[LV.5]常住居民I主题帖子e币
最近在做关于静默安装的功能,网上搜了好久,一直没有解决,后来结合各位大神的思路,终于把这个功能完整的实现了,好啦,废话不多说了,开始正文,该方法用的调用android隐藏方法,不需要获取ROOT权限,
首先,要使用静默安装,肯定得添加系统级的签名,(manifest中添加这句:android:sharedUserId=&android.uid.system&),后边会介绍怎么给应用加签名的
然后,开始调用android源码中隐藏的类和方法(也就是PackageManager),调用隐藏的方法大概有两种,一种是利用反射,还有一种就是重新编译android源码,网上有牛人重新编译好的.jar,这里就直接拿来用了,以下是Eclipse中的设置步骤:
在此放上需要的类和编译后的jar
1.右键项目,打开Build Path,进入Configure Build Path
2.Add Library,选择User Library,
3.新建一个,取名为framework,
4.Add Exernal JARS...选择上边提到的编译好的jar包
5.添加完成,把framework前边的小框打钩,并且通过Up上移到android源码上边
至此,就可以调用隐藏的方法啦& &~\(≧▽≦)/~啦啦啦
但是需要注意的一些问题
1)无论是反射还是使用自编译的stublibrary,只能解决调用隐藏API的问题,而无法越过权限检查。
2)Google之所以将有些API隐藏,有些原因可能是因为这些API属于内部逻辑,不想对外暴露,也有可能是API接口还未最终确定下来。所以在低版本Android上的隐藏API不一定能在高版本的Android上使用。这点是一定要注意的。也就说隐藏API的兼容性比较差。因此利用反射调用隐藏API时,一定要注意根据Android的版本采用不同的方式去反射。
接下来,我们开始调用:(这里说一下,PackageInstaller这个类里边的方法大家可以看看,自由选择调用就行)
& &PackageInstaller piInstaller = new PackageInstaller(getApplicationContext());
& &piInstaller.instatllBatch(updatePath);
别忘记了加权限哟:
&!-- 静默安装所需的权限 --&
& & &uses-permission android:name=&android.permission.INSTALL_LOCATION_PROVIDER& /&
& & &uses-permission android:name=&android.permission.INSTALL_PACKAGES& /&
& & &uses-permission android:name=&android.permission.DELETE_PACKAGES& /&
& & &uses-permission android:name=&android.permission.MOUNT_UNMOUNT_FILESYSTEMS& /&
& & &uses-permission android:name=&android.permission.WRITE_EXTERNAL_STORAGE& /&
如果报错,Project→Clean一下就好
在此添加系统签名需要的工具,大家也可以去网上查查怎么获取,
通过上面两行代码,我们就可以静默安装应用啦,但是,直接运行肯定会报错的,因为我们用到了系统级的签名,没错,就是上边说到的(android:sharedUserId=&android.uid.system&),在此我们需要给应用加系统签名
1.项目右键,Android Tools选择 Export Unsigned Application Package,到处未加签名的应用
2.把上边的platform.pk8,platform.x509.pem,signapk.jar以及未加签名的apk放在同一个文件夹下
3.在cmd中,定位到该文件夹,然后执行
java -jar signapk.jar platform.x509.pem platform.pk8 len.apk newlen_signed.apk
(其中len.apk是未加签名的,newlen_signed是打包后的)
4.然后把打包后的APK安装在设备上就可以啦,
在这里提醒下大家,使用系统签名并且也用到百度地图的,记得获取系统的数字证书,不然地图会不好使的(这个问题折磨了我好久 %&_&%),
亲测更新的apk不会把用户数据清除,大家放心使用,下边是几个广播,大家可以看看:
&action android:name=&android.intent.action.PACKAGE_ADDED& /&&&设备上新安装了一个应用程序包
&action android:name=&android.intent.action.PACKAGE_REMOVED& /&设备上删除了一个应用程序包
&action android:name=&android.intent.action.PACKAGE_REPLACED& /&设备上升级了一个应用程序包
就是这些了,第一次发帖,大家多多支持!!!
本帖子中包含更多资源
才可以下载或查看,没有帐号?
有帮助: 5 &
完全照着上面的教程来弄了,共享用户权限不完整 怎么解决?&
我支持: 5 有帮助: 5 不错&
我支持: 5 写的很详细,也很有用&
非常精彩,支持你,加油!
精彩主题,感谢分享
本帖被以下淘专辑推荐:
& |主题: 501, 订阅: 223
& |主题: 76, 订阅: 7
& |主题: 12, 订阅: 3
签到天数: 1 天连续签到: 1 天[LV.1]初来乍到主题帖子e币
楼主,静默卸载怎么写?能给个代码吗?
签到天数: 6 天连续签到: 1 天[LV.2]偶尔看看I主题帖子e币
我是说,动态获取系统签名啊,你做的只是在指定机子上吧。
就是 SignApk.rar 这个文件里的系统签名,如果你的应用安装到不同的手机上,你怎么获取它的签名。
Unable to execute dex: Cannot merge new index 65712 into a non-jumbo instruction!
无法正确运行出apk呀,报错呀,亲们&
签到天数: 22 天连续签到: 1 天[LV.4]偶尔看看III主题帖子e币
& && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && &
签到天数: 59 天连续签到: 1 天[LV.5]常住居民I主题帖子e币
先占一楼,我再找找获取系统数字证书的方法,快来人呐.......
我帖子上有个链接 你可以看看/thread--1.html&
/thread--1.html
来看看我写的软件...很简单的哦,互相学习下,&
签到天数: 1 天连续签到: 1 天[LV.1]初来乍到主题帖子e币
咳咳咳,板凳坐上。。
嘻嘻,~\(≧▽≦)/~啦啦啦&
该用户从未签到主题帖子e币
签到天数: 59 天连续签到: 1 天[LV.5]常住居民I主题帖子e币
/android/android-view-signatures/comment-page-1/这个是获取系统数字证书
可用么,实践没?&
签到天数: 9 天连续签到: 1 天[LV.3]偶尔看看II主题帖子e币
这个是不是有点流氓啊
静默安装嘛,只是有需求的时候添加,&
签到天数: 59 天连续签到: 1 天[LV.5]常住居民I主题帖子e币
这个是不是有点流氓啊
静默安装嘛,只是有需求的时候添加,
签到天数: 59 天连续签到: 1 天[LV.5]常住居民I主题帖子e币
咳咳咳,板凳坐上。。
嘻嘻,~\(≧▽≦)/~啦啦啦
神经病,哼,⊙﹏⊙b汗&
签到天数: 105 天连续签到: 1 天[LV.6]常住居民II主题帖子e币
顶一个,做过使用命令行的方式实现的,需要root权限
恩恩,用ROOT也可以的,但是有时候手机不支持就很麻烦啦&
签到天数: 6 天连续签到: 1 天[LV.2]偶尔看看I主题帖子e币
不明觉厉。静默安装?
是的,程序会在后台自动安装好的,可以使用广播监听到安装完成,就可以启动的,亲测绝对没问题。。&
签到天数: 6 天连续签到: 1 天[LV.2]偶尔看看I主题帖子e币
/android/android-view-signatures/comment-page-1/这个是获取系统数字证书 ...
可用么,实践没?
我就是用的这个,完全没问题,,,&
签到天数: 108 天连续签到: 1 天[LV.6]常住居民II主题帖子e币
貌似很不错的啊!~~~呵呵 ···可以试试!
(*^__^*) 嘻嘻……&
签到天数: 18 天连续签到: 1 天[LV.4]偶尔看看III主题帖子e币
需要ROOT权限吧?
不需要ROOT,只要加系统级签名就行&
签到天数: 59 天连续签到: 1 天[LV.5]常住居民I主题帖子e币
需要ROOT权限吧?
不需要ROOT,只要加系统级签名就行
签到天数: 59 天连续签到: 1 天[LV.5]常住居民I主题帖子e币
可用么,实践没?
我就是用的这个,完全没问题,,,
我是说,动态获取系统签名啊,你做的只是在指定机子上吧。&
QQ已认证,此人靠谱
社区认证会员
社区认证会员
推荐阅读热门话题
61882417416379326278277260256251226218210206715
25&分钟前半小时前昨天&23:58昨天&23:56昨天&22:39昨天&22:34昨天&22:28昨天&21:37昨天&18:41昨天&17:33昨天&16:42昨天&16:25昨天&15:53昨天&15:48昨天&15:47昨天&15:19
Powered by
扫一扫 关注eoe官方微信>> 截屏源码,无需root权限,但需要apk升级为系统级应用
截屏源码,无需root权限,但需要apk升级为系统级应用
所属分类:
下载地址:
Screenshot.zip文件大小:3.54 MB
分享有礼! 》
请点击右侧的分享按钮,把本代码分享到各社交媒体。
通过您的分享链接访问Codeforge,每来2个新的IP,您将获得0.1 积分的奖励。
通过您的分享链接,每成功注册一个用户,该用户在Codeforge上所获得的每1个积分,您都将获得0.2 积分的分成奖励。
截屏的代码有很多,但是本源代码是最少,且最简单的截屏方式,只需通过sighapk.jar 工具进行签名,并需要相应的签名文件,既可以实现应用变为系统级应用。
Sponsored links
源码文件列表
温馨提示: 点击源码文件名可预览文件内容哦 ^_^
.classpath475.00 B 15:37
.project846.00 B 10:42
org.eclipse.jdt.core.prefs177.00 B 10:42
1.05 kB 11:02
1.05 kB 09:27
classes.dex1.31 MB 09:32
BuildConfig.class349.00 B 09:27
MainActivity$1.class813.00 B 09:31
MainActivity$2.class1.73 kB 09:31
MainActivity.class1.51 kB 09:31
R$attr.class346.00 B 20:39
R$drawable.class413.00 B 20:39
R$id.class426.00 B 20:39
R$layout.class409.00 B 20:39
R$string.class439.00 B 20:39
R$style.class437.00 B 20:39
R.class595.00 B 20:39
android-support-v4-3fc670c51d33e2e2d31edca.jar445.25 kB 11:23
android-support-v4-8b17bba49c2cfd08bec22.jar445.25 kB 15:59
jarlist.cache120.00 B 20:38
pla.pem1.66 kB 21:09
pla.pk81.19 kB 21:09
resources.ap_39.47 kB 09:08
ic_launcher.png5.82 kB 11:23
ic_launcher.png3.04 kB 11:23
ic_launcher.png9.14 kB 11:23
ic_launcher.png17.47 kB 11:23
Screenshot.apk485.72 kB 09:32
screenshot1.apk485.82 kB 09:32
signapk.jar7.20 kB 15:44
162.00 B 09:27
1.89 kB 20:39
ic_launcher-web.png50.19 kB 10:42
android-support-v4.jar1.30 MB 10:42
781.00 B 10:42
project.properties563.00 B 15:37
ic_launcher.png7.48 kB 10:42
ic_launcher.png3.69 kB 10:42
ic_launcher.png12.22 kB 10:42
ic_launcher.png24.20 kB 10:42
590.00 B 10:43
334.00 B 10:42
391.00 B 10:42
173.00 B 10:42
697.00 B 10:42
1.54 kB 09:31
(提交有效评论获得积分)
评论内容不能少于15个字,不要超出160个字。
评价成功,多谢!
下载Screenshot.zip
CodeForge积分(原CF币)全新升级,功能更强大,使用更便捷,不仅可以用来下载海量源代码马上还可兑换精美小礼品了
您的积分不足,优惠套餐快速获取 30 积分
10积分 / ¥100
30积分 / ¥200原价 ¥300 元
100积分 / ¥500原价 ¥1000 元
订单支付完成后,积分将自动加入到您的账号。以下是优惠期的人民币价格,优惠期过后将恢复美元价格。
支付宝支付宝付款
微信钱包微信付款
更多付款方式:、
您本次下载所消耗的积分将转交上传作者。
同一源码,30天内重复下载,只扣除一次积分。
鲁ICP备号-2 runtime:Elapsed:188.407ms - init:0.1;find:0.8;t:0.4;tags:0.0;related:81.1;comment:0.2; 27.69
登录 CodeForge
还没有CodeForge账号?
Switch to the English version?
^_^"呃 ...
Sorry!这位大神很神秘,未开通博客呢,请浏览一下其他的吧}

我要回帖

更多关于 无需root禁止系统更新 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信