Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2017-13156 PoC — Android System(art) 权限许可和访问控制问题漏洞

Source
Associated Vulnerability
Title: Android System(art) 权限许可和访问控制问题漏洞 (CVE-2017-13156)
Description:An elevation of privilege vulnerability in the Android system (art). Product: Android. Versions: 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2, 8.0. Android ID A-64211847.
Description
CVE-2017-13156-Janus复现
Readme
## CVE-2017-13156-Janus 复现

> 攻击者利用Janus漏洞(CVE-2017-13156)可以绕过Android系统的signature scheme V1签名机制,任意修改应用代码而不影响其签名。Android的签名机制用来防护应用被篡改,正常来说,应用被修改了,需要重新对其签名,否则无法安装到设备上。应用在安装时,系统会校验apk的签名,如果签名不存在或者校验失败,系统会拒绝安装。由于攻击者不具有开发者的私钥,所以他会使用其他私钥对该应用进行重签名,这时会出现签名不一致的情况。应用校验签名,可以在一定程度上发现应用是否被篡改。但是Janus漏洞允许攻击者篡改应用而不影响签名,这样二次开发的应用可以覆盖官方应用,带来一定程度的危害。  

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

影响范围: Android 5.0-8.0   

```
.
|____a.dex 修改的dex
|____target.apk 修改后的apk
|____app
|____janus.py 修改脚本
|____Janus.jar 修改的jar
|____cla.dex 修改的dex
|____README.md 
|____a.apk
|____f.apk
|____app-release.apk 原apk
```


jar:    
```
java -jar Janus.jar Janus [dex_file] [apk_file] [output_file]
java -jar Janus.jar Janus a.dex app-release.apk a.apk
```

python:  
```
python janus.py [dex_file] [apk_file] [output_file]
> python janus.py a.dex app-release.apk a.apk

```

尝试的步骤:  
1.生成原apk  
2.baksmail解压初smali 修改字符  
3.重新smali打包成dex  
4.使用poc生成新apk  
5.加toast  
6.多写点log 对比log  
7.你可以先在原来的java上改,再编译一个新的apk,再用新的apk的dex注入进去看看  
8.改过的dex里面弄一个特有的函数,hook就代表有执行   

尝试6.0.1小米手机测试未成功  安装成功未执行代码  
尝试6.0.1nexus手机测试未成功  安装成功未执行代码  
尝试4.4.3sony手机测试未成功  未安装成功  
猜测手机打了补丁    


[别人复现的](https://github.com/TomesVWhite/BuildFakeApk)  
[python poc](https://github.com/V-E-O/PoC/blob/master/CVE-2017-13156/janus.py)  
[java poc](https://github.com/xyzAsian/Janus-CVE-2017-13156)  
[Janus签名漏洞(CVE-2017-13156)原理与利用分析](https://www.freebuf.com/news/171835.html)  
[安天移动安全:Janus高危漏洞深度分析](https://www.secpulse.com/archives/66599.html)  
[Janus漏洞分析](https://www.jianshu.com/p/5e35902cddb2)  
File Snapshot

Log in to view the POC file snapshot cached by Shenlong Bot

Log in to view
Remarks
    1. It is advised to access via the original source first.
    2. Local POC snapshots are reserved for subscribers — if the original source is unavailable, the local mirror is part of the paid plan.
    3. Mirroring, verifying, and maintaining this POC archive takes ongoing effort, so local snapshots are a paid feature. Your subscription keeps the archive online — thank you for the support. View subscription plans →