免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2555 | 回复: 2
打印 上一主题 下一主题

gdb7.0 手册中的翻译问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-28 23:46 |只看该作者 |倒序浏览
各位高手和英语大侠,小弟闲来无事翻译gdb 7.0的手册,由于能力有限,在4.2节关于程序启动时动态库及程序运行虚拟地址空间随机化的内容上,不是很理解,也不知道自己翻译的对不对。

所以希望大家能帮助我对照一下,欢迎提出宝贵的修改意见,谢谢。

原文:
The virtual address space randomization is implemented only on gnu/Linux. It protects the programs against some kinds of security attacks. In these cases the attacker needs to know the exact location of a concrete executable code. Randomizing its location makes it impossible to inject jumps misusing a code at its expected addresses.

Prelinking shared libraries provides a startup performance advantage but it makes addresses in these libraries predictable for privileged processes by having just unprivileged access at the target system. Reading the shared library binary gives enough information for assembling the malicious code misusing it. Still even a prelinked shared library can get loaded at a new random address just requiring the regular relocation process during the startup. Shared libraries not already prelinked are always loaded at a randomly chosen address.

Position independent executables (PIE) contain position independent code similar to the shared libraries and therefore such executables get loaded at a randomly chosen address upon startup. PIE executables always load even already prelinked shared libraries at a random address. You can build such executable using gcc -fPIE -pie.


我的译文:
目前只有在GNU/Linux平台上实施了虚拟地址空间随机使用技术,这有助于避免进程遭到安全性攻击。这种情况下,攻击者需要知道具体执行码的准确位置。随机化分布执行执行码地址后,基本不可能轻易的插入跳转语句,执行一段恶意代码。

预链接动态库提高了程序启动的速度。不过这也使特权进程在这些库中的地址变得可以预测,很简单,只要在目标系统上让非特权的进程访问这些动态库。解析这些动态库的二进制文件能够获得足够的信息,来汇编恶意代码并运行它们,就算程序启动时执行一个常规的重定向处理能使一个预链接的动态库重新载入一个随机地址。没有预链接的动态库总是会被加载到一个随机选择的地址。

位置无关可执行程序(PIE)含有位置无关代码,有点像动态库,因此启动时这些代码会被随机加载到一个地址上。就算是预链接的动态库,PIE执行程序通常也会把它们加载到一个随机的地址上。通过使用“gcc -fPIE -pie”可以编译得到这样的程序。

堆(malloc申请的空间),栈和程序中的mmap区域通常都是随机分配的地址(只要激活了随机化处理)


[ 本帖最后由 Benson_linux 于 2009-12-29 16:10 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2009-12-29 08:58 |只看该作者
一个建议,统一一下词汇,prelink到底是预链接还是提前链接,否则会被编辑部打回头。

论坛徽章:
0
3 [报告]
发表于 2009-12-29 16:12 |只看该作者
原帖由 gz80 于 2009-12-29 08:58 发表
一个建议,统一一下词汇,prelink到底是预链接还是提前链接,否则会被编辑部打回头。



已经修改了,哈哈。翻译这个纯属个人行为:wink:

主要是对于这个预链接(prelink)动态库的东西,平时没弄过。所以不知道这段翻译的对不对。

有高手能进来解释一下更好,哈哈
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP