什么是mmap mmap对于c程序员很熟悉,对于java程序员有点陌生。简而言之,将文件直接映射到用户态的内存地址,这样对文件的操作不再是write/read,而是直接对内存地址的操作。 在c中提供了三个函数来实现 [list]mmap 进行映射munmap 取消映射msync 进程在映射空间的对共...
分类:
编程语言 时间:
2014-07-19 16:37:03
阅读次数:
407
mmap与read/write两条路线对文件的访问比较 我们知道无论是通过mmap或read/write访问文件在内核中都必须经过缓存, 当需要从文件读写内容时,都经过内存拷贝的方式与内核中的缓存进行通讯。 1. 用read/write方式,用户须向内核指定要读多少,内核再把得到的内容从内核缓存拷向...
分类:
其他好文 时间:
2014-07-03 23:49:43
阅读次数:
469
很多源代码在父子进程进行通信时,都会yong...
分类:
其他好文 时间:
2014-06-30 10:04:01
阅读次数:
189
通过mmap直接操作物理内存的漏洞应该算是比较常见的一类漏洞了,在2012年、2013年的这段时间里,爆出了好几个物理内存读写相关的漏洞。主要是因为某些设备本身具有mmap物理内存的功能,但是其权限又是全局可读写的,最后,黑客通过精心构造的参数,patch相关函数或者数据结构达到权限提升的目的。
这样的设备主要有以下几个
/dev/exynos-mem CVE-2012-6422 ht...
分类:
移动开发 时间:
2014-06-26 10:16:01
阅读次数:
289
1漏洞描述
漏洞的产生主要是因为摄像头驱动提供了几个用于用户空间调用的接口。用户空间可以使用诸如ioctl或者mmap这样的系统调用函数就能对摄像头驱动产生影响。黑客可以很容易的使用事先构造好的参数将物理内存map到用户空间,并提升权限。
2.影响设备
绝大多数使用2013年5月1日之前的Linux内核安卓系统
3.PoC
/*
*
* This progra...
分类:
移动开发 时间:
2014-06-26 07:55:07
阅读次数:
507
存储映射I/O使一个磁盘文件与存储空间中的一个缓冲区相映射,对缓冲区的读、写操作就是对文件的读、写操作,从而可以不再使用read、write系统调用。
将文件映射到存储区的函数由mmap完成,函数原型如下:
#include
/* 成功返回映射区起始地址,出错返回MAP_FAILED */
void *mmap(void *addr, size_t len, int prot, ...
分类:
系统相关 时间:
2014-06-22 21:39:19
阅读次数:
301
from:unix高级环境编程
unix/linux中共享内存是最高效的ipc方式。
有几种使用方式:
1)mmap /dev/zero设备:
fd = open("/dev/zero", O_RDWR);
area = mmap(0, size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
close(fd);
加入MAP_SHARE...
分类:
其他好文 时间:
2014-06-22 06:21:16
阅读次数:
215
本来打算使用pipe进行父子进程之间的数据交互(应用场景是父进程向多个子进程分发数据,子进程进行处理);但是担心pipe的性能,转而使用mmap实现。废话少叙,上代码。#include #include #include #include #include #include #include #in...
分类:
其他好文 时间:
2014-06-21 10:03:04
阅读次数:
190
共享内存区是可用IPC形式中最快的。一旦内存区映射到共享它的进程的地址空间,进程间数据的传递就不再涉及内核。然而往该共享内存区存放信息或从中取走信息的进程间通常需要某种形式的同步。不再涉及内核是指:进程不再通过执行任何进入内核的系统调用来彼此传递数据。内核必须建立允许各个进程共享该内存区的内存映射关系,然后一直管理内存区。
默认情况下通过fork派生的子进程并不与其父进程共享内存区。
mmap...
分类:
系统相关 时间:
2014-06-11 06:34:25
阅读次数:
439
现在将共享内存区的概念扩展到将无亲缘关系进程间共享的内存区包括在内。Posix提供了两种在无亲缘关系进程间共享内存区的方法:
1、内存映射文件:由open函数打开,由mmap函数把得到的描述符映射到当前进程地址空间中的一个文件。(上一节就是这种技术)
2、共享内存区对象:由shm_open打开一个Posix名字(也许是在文件系统中的一个路径名),所返回的描述符由mmap函数映射到当前进程的地址...
分类:
系统相关 时间:
2014-06-11 00:28:43
阅读次数:
464