黑客技术拳拳到肉实战:一步一步揭开病毒程序的面纱2

上一节我们从一个莫名其妙的文件67b8601里面分离出了efl文件头数据,这意味着该文件其实隐藏着一个可执行的elf文件,现在问题是我们如何把整个elf文件抽取出来。既然我们已经获得了头部信息,那么就可以根据elf文件格式的结构,结合头部数据将整个文件提取出来。

从上一节提取的头部信息中,我们需要关注几个关键信息,它们是start of p headers:8568(bytes into file), Size of p headers: 64(bytes), Number of p headers: 27,我们需要根据这些数据再次从文件67b8601中提取数据。

从以前章节中我们了解到ELF文件格式的最后部分其实就是段头表,而段表其实就是由一系列的段头结构组成,从前面展示的ELF头信息中已经表明一个段头结构的长度为64字节,总共有27个段头结构,而段头表的偏移为8568字节,于是整个ELF文件的长度就是8568+(27 * 64) = 10296字节,于是我们就从ELF头部信息的开头起始,将连续10296个字节的数据抠出来,而这部分数据就是一个完整的ELF可执行文件,而且就是ctf可执行文件需要链接的动态库,所以我们执行如下命令:

dd skip=52  count=10296  if=67b8601 of=lib5ae9b7f.so bs=1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值