Android调试器存在漏洞,可获取设备内存数据(2)
170 if (sym_idx != -1) {
171 // …and populate them 172 for(i = 0; i < numsyms; i++) { 173 if((syms[i].st_shndx != SHN_UNDEF) && 174 (strlen(str+syms[i].st_name)) && 175 (syms[i].st_value != 0) && (syms[i].st_size != 0)) { 176 table->symbols[j].name = strdup(str + syms[i].st_name);//st_name没有经过检查就被使用了 177 table->symbols[j].addr = syms[i].st_value; 178 table->symbols[j].size = syms[i].st_size; 179 XLOG2(“name: %s, addr: %x, size: %x\n”, 180 table->symbols[j].name, table->symbols[j].addr, table->symbols[j].size); 181 j++; 182 } 183 } 184 }
而在Android 4.1-4.4中,漏洞存在于system/core/libcorkscrew/symbol_table.c:
150 size_t symbol_index = 0; 151 if (dynsym_idx != -1) { 152 // …and populate them 153 for (int i = 0; i < dynnumsyms; i++) { 154 if (dynsyms[i].st_shndx != SHN_UNDEF) { 155 table->symbols[symbol_index].name = strdup(dynstr + dynsyms[i].st_name);//st_name没有经过检查就被使用了 156 table->symbols[symbol_index].start = dynsyms[i].st_value; 157 table->symbols[symbol_index].end = dynsyms[i].st_value + dynsyms[i].st_size; 158 ALOGV(” [%d] ‘%s’ 0x%08x-0x%08x (DYNAMIC)”, 159 symbol_index, table->symbols[symbol_index].name, 160 table->symbols[symbol_index].start, table->symbols[symbol_index].end); 161 symbol_index += 1; 162 } 163 } 164 } 165 166 if (sym_idx != -1) { 167 // …and populate them 168 for (int i = 0; i < numsyms; i++) { 169 if (syms[i].st_shndx != SHN_UNDEF 170 && str[syms[i].st_name] 171 && syms[i].st_value 172 && syms[i].st_size) { 173 table->symbols[symbol_index].name = strdup(str + syms[i].st_name);//st_name is type of uint32_t not be checked 174 table->symbols[symbol_index].start = syms[i].st_value; 175 table->symbols[symbol_index].end = syms[i].st_value + syms[i].st_size; 176 ALOGV(” [%d] ‘%s’ 0x%08x-0x%08x”, 177 symbol_index, table->symbols[symbol_index].name, 178 table->symbols[symbol_index].start, table->symbols[symbol_index].end); 179 symbol_index += 1; 180 } 181} 182 }
趋势科技的研究员已经在今年4月27日将漏洞提交给了Google。5月15日Android Open Source Project (AOSP)代码中发布了一个针对这个漏洞的补丁。
- 文章作者: 福州军威计算机技术有限公司
军威网络是福州最专业的电脑维修公司,专业承接福州电脑维修、上门维修、IT外包、企业电脑包年维护、局域网网络布线、网吧承包等相关维修服务。
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 、作者信息和声明。否则将追究法律责任。
TAG:
评论加载中...
|