PE文件结构

程序员通勤双肩包,下单送全年 CSDN 会员 防泼水面料电脑包,保护笔记本电脑,背负轻便,下单再赠 Coding Plan,看技术干货、查文档、下载源码,一站式搞定学习需求 立即抢购

了解PE文件结构对于分析病毒来说很重要,虽然这方面的资料在网上绰绰有余,我还是想写写我自己觉得更有用的一些东西。

3ch   pe,0,0 字符串(Signature)的位置
从这里开始就是pe文件头

PE header 的正式命名是 IMAGE_NT_HEADERS。

IMAGE_NT_HEADERS STRUCT
    Signature dd ?
    FileHeader IMAGE_FILE_HEADER <>
    OptionalHeader IMAGE_OPTIONAL_HEADER32 <>
IMAGE_NT_HEADERS ENDS

Signature PE标记,一共4个字节,值为50h, 45h, 00h, 00h(PE/0/0)。

FileHeader 一共14h字节,该结构域包含了关于PE文件物理分布的一般信息。

IMAGE_FILE_HEADER STRUCT
    Machine WORD ?
    NumberOfSections WORD ?
    TimeDateStamp dd ?
    PointerToSymbolTable dd ?
    NumberOfSymbols dd ?
    SizeOfOptionalHeader WORD ?
    Characteristics WORD ?
IMAGE_FILE_HEADER ENDS

OptionalHeader 该结构域包含了关于PE文件逻辑分布的信息。

下面从pe文件头开始介绍一些重要的数据位置

28 程序入口的相对地址RVA
2c 代码段的起始相对位置RVA
30 数据段的起始相对位置RVA
34 加载内存的首选基地址imageBase
78 引出表RVA
7c 引出表大小
80 引入表RVA
84 引入表大小
f8 节表开始:节名
100 节在内存中的大小
104 节在内存中的起始RVA
108 节在文件中的大小
10c 节在文件中的偏移
11c 节的属性
 

45、Linux服务器服务管理全解析 本文深入解析了Linux服务器服务管理的各个方面,包括系统目标运行级别的设置、服务审计、服务的停止启动、持久服务的配置等内容。详细介绍了基于三种主流init守护进程(经典SysVinit、Upstart init和systemd)的服务管理方法,并通过流程图和对比表格直观展示了不同init系统的操作差异。此外,还总结了服务管理的最佳实践,并展望了未来Linux服务管理的发展趋势,为系统管理员提供了全面的技术参考。 阅读详情

相关推荐

Linux服务管理命令servicesystemctl

service命令 Ubuntu中service命令用于对系统服务进行管理,service命令本身是一个shell脚本,它在/etc/init.d/目录查找指定的服务脚本,然后调用该服务脚本来完成任务。 可通过sercice SCRIPT COMMAND命令管理服务,SCRIPT为/etc/init.d/中存放的可执行脚本文件: service SCRIPT start #启动服务 service SCRIPT stop #停止服务 service SCRIPT restart #重

苏木川的博客 1万+

linux服务管理

IP 地址是计算机在互联网中唯一的地址编码。每台计算机如果需要接入网络和其他计算机进行数据通信,就必须配置唯一的公网 IP 地址。配置 IP 地址有两种方法:1)setup 工具手工修改配置文件。

2401_87689651的博客 956

Linux系统管理 - (九)系统初始化进程文件及服务[结]

自说 本章是linux系统管理的最后一章,系统初始化进程文件服务管理。其实只要用心,基本知识也就是呢么多,最重要的如何灵活运用,日积月累,以小积多,不断的扩充自己的知识,提升自己的能力其实是一件快乐的事情,加油! 学习路径 Linux系统管理 - (一)安装Linux系统 Linux系统管理 - (二)Linux系统命令 Linux系统管理 - (三)Linux常用命令解析 Linux系统管理 - (四)VIM编辑器 Linux系统管理 - (五)应用安装管理 Linux系统

夜风中的男孩 268

LINUX——引导过程服务控制

1.linux 操作系统引导过程 开机的时候,先是硬件自检BIOS 基本的输入输出系统 主板上的ROM芯片 配置BIOS 使用的是汇编语言 可以配置密码,时间等 配置BIOS信息的内容放在 CMOS 上面,是以RAM存储,对硬件加电自检 寻找可以引导系统启动的设备或者程序(光盘,硬盘,U盘,网络) UEDI 使用的是C语言。比较容易实现,未来可能会接替BIOS MBR引导 主引导记录,在磁盘的第一扇区,512字节的MBR 启动引导程序 boot loader 456字节 存放MBR分区表 64字节 一个分

weixin_56670610的博客 138

linux操作系统引导过程

为其他机器提供服务的程序,服务程序启动后,会持续监听端口。使用systemctl 命令管理systemd服务。

m0_67497257的博客 2304

Linux 引导过程服务控制

systemctl is-active 服务名[.service] #查看服务是否活动,用于检查一个或多个服务单元(unit)的当前活动状态。systemctl reload 服务名[.service] #重载服务配置,当服务的配置文件被修改后,可以使用此命令重新加载配置,而无需重启服务。systemctl status 服务名[.service] #显示指定服务的当前状态,包括是否正在运行、最近一次启动或停止的时间等。命令在一些旧的系统或特定的发行版中仍然可用。

weixin_46373596的博客 761

Linux系统引导进程管理全解析

Linux 系统引导过程:包括开机自检、MBR 引导、GRUB 引导菜单、加载内核以及init进程初始化。Systemd 服务管理:替代传统的init进程,通过并行启动服务、按需启动服务提高系统启动速度。服务管理:使用systemctl命令管理服务的启动、停止和开机启动状态,支持配置服务在特定目标下的运行。使用ps、top、pgrep、pstree命令查看系统中的进程。使用kil、killall、pkill终止进程。计划任务使用at设置一次性任务使用cron设置周期性任务,并通过crontab管理任务。

qq_26422089的博客 1049

第13章 Linux的系统服务管理

Systemd就是为了解决这些问题而诞生的。它的设计目标是,为系统的启动和管理提供一套完整的解决方案,根据Linux惯例,字母d是守护进程(daemon)的缩写,Systemd这个名字的含义,就是它要守护整个系统。Systemd​ (上图为Systemd作者Lennart Poettering)使用了Systemd,就不需要再用init了。Systemd取代了initd,成为系统的第一个进程(PID 等于 1),其他进程都是它的子进程

微客猿 1030

Linuxinit

Linux执行完一些初始化以后,第一个启动init进程init进程是所有进程的父进程,负责启动其它进程,这些进程大多数是服务进程(daemon)。随着时间的推移这个启动过程也在变化。但目前主要有两种:System V style的runlevel式启动和upstart代表的event-based启动。 1,System V style的runlevel启动 init进程会读取/et...

dengxiqu4950的博客 122

Linux(十三)——系统引导过程服务控制指南

本文介绍了Linux系统的引导过程,包括开机自检、MBR引导、GRUB引导菜单、内核加载和init进程初始化等阶段。详细对比了GRUB2GRUB的区别,重点分析了GRUB2在文件系统支持、模块化设计等方面的优势。针对Systemd服务管理,文章阐述了其并行启动、按需启动等特性,并提供了详细的运行级别Systemd目标对照表。此外,还列举了常用的systemctl服务管理命令和chkconfig工具的使用方法,帮助读者全面掌握Linux系统启动流程优化和服务管理技巧。

荣光波比的博客 959

Linux系统管理进程管理

检测到第一个能够启动的设备,如硬盘或光驱、U盘。

hanyi_qwe的博客 929

Linux实验 系统管理(三)

实验目的: 了解Linux系统下的进程; 掌握一类守护进程——计划任务的管理; 掌握进程管理的常用命令; 掌握进程的前台后台管理; 了解Linux系统的运行级别; 掌握系统服务管理的常用命令

Jiangxia13的博客 1109

ubuntu 下 init.d 服务启动脚本编写

1、在/etc/init.d/ 下以管理员权限新建文件,在本例中为location_server. 2、使用以下模板修改启动脚本的内容 #!/bin/bash ### BEGIN INIT INFO # # Provides: location_server # Required-Start: $local_fs $remote...

MENGHUANBEIKE的专栏 2287

liunx服务进程管理@@@@@@@@@@

服务管理进程管理 服务管理 服务:一些特殊的程序启动之后持续在后台工作,等待用户或其他软件调用的程序。 功能: 系统服务:服务对象是linux系统本身或者是linux系统用户 网络服务:服务对象是网络上其他客户端 启动方式 独立系统服务:启动后除非系统关闭或管理员手动结束,否则都将在后台执行,不管是否用到 优点:响应速度快 缺点:占用系统资源 ...

weixin_45284484的博客 224

Linux基础笔记——管理进程和计划任务(五)

管理进程和计划任务 从INIT进程获得系统控制权开始,即进入初始化过程 运行终端程序“/sbin/mingetty”后,将等待用户进行登录(登录过程由“/bin/login”程序负责验证) BIOS:(输入输出系统)存放硬件信息/加电自检/一道操作系统/初始化 CMOS:写入数据 CPU:运算/控制 CPU寻址:指令集(提前编写的命令)输入电路板 调用和搜索指令 寻址命中率:80% 为什么需要内存:寻址方式不同/速度差 MBR:主引导记录,位于硬盘0磁道,0柱面。1扇区。共512字节,其中64字节是磁

菜鸟的学习笔记 410

centos7系统关机命令_Linux系统管理系列(七)引导系统服务控制

文章目录一、 系统引导过程1.1 引导过程讲解(1)、开机自检(BIOS)(2)、MBR引导(3)、GRUB菜单(4)、加载内核(kernel)(5)、init进程初始化1.1.1 init命令1.2 systemd进程二、 systemd管理2.1 systemd单元2.2 systemd服务管理2.2.1 查看服务启动状态2.2.2 启动停止服务2.2.3 配置文件2.3 Targ...

weixin_42389766的博客 231

34.上帝进程Systemd管理命令systemctl

例如 sshd.service 的配置文件写入到/etc/sysconfig/sshd 当中!而如果是源码安装的比如nginx,要想用systemctl管理就得单独写在vim /etc/systemd/system里,至于怎么写,可以参考/lib/systemd/system中的*.service文件。不是.service而是直接管理服务的,写service文件时和直接操作服务用的,比如源码安装的nginx,它的管理命令是/usr/local/nginx/sbin/nginx。

shy19950601的博客 548

Linux_pieces

Linux:免费的类Unix操作系统 bash:Linux平台内定shell 进程(daemon):正在运行的程序 守护进程(daemon):一直在后台运行的程序 initlinux操作系统必不可少的 程序 之一, 历史上linux的启动,都是用 init init 0 init 3 init 5 unit (服务): 如 firewalld ( 防火墙 ) systemd ( systemdaemon ) 根据 Linux 惯例,字母d是守护进程(daemon)的缩写。 S..

让, 104

Linux Systemctl 命令由来及详解

Linux Systemctl 命令由来及详解 一、由来 历史上,Linux 的启动一直采用init进程。 下面的命令用来启动服务。 $ sudo /etc/init.d/apache2 start #或者 $ service apache2 start 这种方法有两个缺点。 一是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。 二是启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。 二、Systemd 概述 Sys

small_queen的博客 1008
上一篇: A Crash Course on the Depths of Win32 Structured Exception Handling
ayken
博客等级 码龄20年 1粉丝 1原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值