我们在使用SpringBoot启动项目的时候,可能只需加一个注解,然后启动main,整个项目就运行了起来,但事实真的是所见即所得吗,还是SpringBoot在背后默默做了很多?...本文会通过源码解析的方式深入理解SpringBoot启动全过程 SpringBoot启动过程流程图 源码解析 大家不要抗拒源码解析,这个非常优秀的代码,我们如果能够学会对自己代码编写水平大有裨益...,启动完成后会打印耗时 获取并启动监听器 SpringApplicationRunListeners 配置环境 ConfigurableEnvironment Banner配置,就是控制台的那个spirng...方法第一步:获取并启动监听器 这里的启动监听就是我们需要监听SpringBoot的启动流程监听,实现SpringApplicationRunListener类即可监听 /** * 获取运行监听的监听者们...主要做如下几件事情: 发出启动结束事件 执行实现ApplicationRunner、CommandLineRunner的run方法 发布应用程序已启动(ApplicationStartedEvent)
前言 说到PE,可能第一必备一个8GB以上的U盘才能搞 也有人可能会说,我可以把PE写到硬盘上用硬盘启动引导 但是这种方法再电脑已经不能正常启动的情况下是没有用的 可能有人经历过,出门在外,自己的(或者身边人...)的电脑启动不了了,而你又没有带上你的装机U盘 这个时候真的是巧妇难为无米之炊 而且现场制作一个又会相当难搞(毕竟制作PE是需要先格式化U盘的)而我们日常生活中的U盘都有其他用途你也不可能现场制作一个(...测试手机能否成功引导电脑启动 到了这一页,我们需要保持在这一页不动(不要断开手机和电脑的连接) 将电脑重新启动到快捷引导菜单 你问我怎么启动???...可以百度 你的品牌+启动快捷键 我手上这台神州笔记本是F12 ? 可以看到第三个设备即为我们的手机 如果能看到一个Linux开头的启动项,就是初步成功了 移动光标到这个选项上。 按下回车 ?...进入PE 接下来我们只需要重启电脑。 进入启动菜单。 ? 选择手机,回车进入。即可 ? 读条中。。。。。 手机成功引导电脑进入PE了(滑稽) ? 至此应该说进入PE这块是已经完成了。
软件介绍: 微 PE 工具箱 v2.2 是一款免费纯净、无捆绑软件、体积小巧、功能齐全的PE 系统,微PE工具箱 v2.2 由全新 Win10 内核打造,全面支持 NVMe盘,集成了实用的硬盘分区、数据恢复...注意: 一个大容量的可以当做正常的U盘来使用; 一个【EFI】命名的盘符就是制作的PE系统,不要去删除修改里面的文件。...图片 附:U盘PE系统启动教程 有两种方法: 一种方法是使用启动热键,一键设置并启动u盘pe系统; 另一种方法是进入bios,在bios设置里面将u盘设置成第一启动项,然后保存退出重新启动电脑。...,一般为u盘品牌的英文名称,然后按回车键,即可进入u盘pe系统。...总体来说就是在启动项里面设置U盘为第一启动项,设置后按F10保存,重启电脑自动从U盘启动。 图片 03 启动成功,进入PE系统的画面如下。 图片
软件下载 IT天空论坛的U启帖子页面 访问IT天空论坛的U启帖子页面,下面即有软件下载地址链接 解压并运行 解压压缩包,并运行EasyU_开头的exe文件 制作启动盘 在U盘模式下,确认读取的磁盘为需要制作启动盘的...盘或移动硬盘,然后点击全新制作,若需保留U盘或移动硬盘里的数据,可以点击免格升级 免格升级也请备份好个人数据,谨防数据丢失 Tip 若需要在Mac系统中读取与写入U盘或移动硬盘中的内容,在制作启动盘前
接上一篇文章 linux内核启动流程分析 - efistub的入口函数,我们继续看efi_pe_entry这个函数。 ?...接下来该函数验证了system table中的signature是否等于uefi specification中定义的signature,以此来判断该次启动是否用的是uefi方式。...继续看efi_pe_entry函数。...boot_params又被称为zeropage,该结构体用来存放各种启动参数,供后续启动kernel使用,其具体结构如下: ?...继续efi_pe_entry函数。
这篇文章将介绍基础知识,详细讲解PE文件格式,熟悉各种PE编辑查看工具,针对目标EXE程序新增对话框等,这也为后续PE病毒和恶意代码的攻防打下扎实基础。...(参考文献见后) 一.PE文件基础 什么是PE文件?...PE文件格式与恶意软件的关系 何为文件感染或控制权获取? 使目标PE文件具备或启动病毒功能(或目标程序) 不破坏目标PE文件原有功能和外在形态(如图标)等 … 病毒代码如何与目标PE文件融为一体呢?...五.总结 文章写到这里,就介绍完毕,本文主要讲解PE文件解析、PE编辑工具使用和PE结构修改,属于系统安全和PE逆向相关知识,希望对您有所帮助。...内容包括: PE文件基础 PE文件格式解析 – 010Editor解析PE文件 – Ollydbg动态调试程序 – 仅弹出第二个窗口 熟悉并分析PE文件的引出表 – PEView和Stud_PE查看文件
制作winpe的软件很多,我自己已经习惯用WimBuilder2,网上制作Win11PE的资料很少很少,这个完全是我摸索出来的,分享给有缘人。...Administrator用户下操作则没事 修改注册表建议在SYSTEM用户下进行 RDP远程访问其他机器、挂载共享文件夹只有在Administrator用户下操作才会正常 整得差不多了以后就可以集成启动光盘菜单了...如果要制作成优盘启动用于维护电脑,用刻盘软件刻到空优盘里就行,这类软件太多了,自己搜下吧。...优盘做好后,开机时选择从优盘启动即可,具体按哪个键调出bootmenu可以从这里查下 https://www.laomaotao.net/ 当然,最省事的就是直接下载老毛桃,不过我看网上基本都是win10pe...,鲜有Win11PE。
本章笔者将介绍一种通过Metasploit生成ShellCode并将其注入到特定PE文件内的Shell注入技术。...该技术能够劫持原始PE文件的入口地址,在PE程序运行之前执行ShellCode反弹,执行后挂入后台并继续运行原始程序,实现了一种隐蔽的Shell访问。而我把这种技术叫做字节注入反弹。...我们以如下截图中的30352为例; 接着读者需要自行准备一段ShellCode代码,只保留代码部分去掉头部变量参数,如下所示; 接着我们使用如下这段代码中的WritePEShellCode函数,通过传入指定PE...// 将ShellCode写出到PE程序的特定位置 // 参数1: 指定PE路径 参数2: 指定文件中的偏移(十进制) 参数3: 指定ShellCode文件 void WritePEShellCode(...文件中我们需要手动分析寻找空余块,并在注入成功后还需要自行修正PE文件内的入口地址等,这种方式适合于对PE结构非常熟悉的人可以,但也要花费一些精力去寻找分析,如下代码则是实现了自动化注入功能,该代码中FindSpace
PE知识复习之PE合并节 一丶简介 根据上一讲.我们为PE新增了一个节. 并且属性了各个成员中的相互配合....以前我们讲过PE扩大一个节怎么做. 合并节跟扩大节类似. 只不过一个是扩大. 一个是合并了....合并节的步骤. 1.修改文件头节表个数 2.修改节表中的属性 节.sIzeofRawData 节数据对齐后的大小. 3.修改扩展头中PE镜像大小 SizeofImage 4.被合并的节以...最后一个节表以0填充即可. 3.修改扩展头的PE镜像大小. SizeofImage ? 我们上一讲新增了一个节.所以映像大小为0x1E000.
PE知识复习之PE新增节 一丶为什么新增节.以及新增节的步骤 例如前几讲.我们的PE文件在空白区可以添加代码.但是这样是由一个弊端的.因为你的空白区节属性可能是只读的不能执行...我们新增的节.自己需要在PE文件添加一段节数据.数据的大小按照文件对齐添加. 并且填写到这个成员中. 6.修改扩展头的PE镜像大小. sizeofImage....这个成员才是关键.如果不按照内存对齐修改镜像大小.那么我们的节就不会映射到内存中.或者PE文件根本无法执行....二丶根据新增节步骤.实战手工添加一个节. 1.添加一个节表 添加节表的时候.需要在最后一个节后面添加.随便哪一个PE文件举例 ? ...跳转过去之后发现就是我们刚才填写FFFF的数据.已经成功映射了.至此我们就为这个PE文件新增了一个节.
PE知识复习之PE扩大节 一丶为什么扩大节 上面我们讲了,空白区添加我们的代码.但是有的时候.我们的空白区不够了怎么办.所以需要进行扩大节. ...并且在PE文件中添加0数据进行填充即可....Characteristics; //节的属性 } IMAGE_SECTION_HEADER, *PIMAGE_SECTION_HEADER; 二丶扩大节实战以及注意问题 PE...还要修改扩展头中的 SizeofImage(内存PE镜像大小) 三丶扩大节实战 1.添加数据 随便找一个PE文件.在最后文件偏移处添加数据....但是注意,修改之后并不能直接查看.因为PE没法运行.我们必须修改扩展头中的sizeofImage属性.这样我们的内存镜像大小才是真正的大小.
本章笔者将介绍一种通过Metasploit生成ShellCode并将其注入到特定PE文件内的Shell注入技术。...该技术能够劫持原始PE文件的入口地址,在PE程序运行之前执行ShellCode反弹,执行后挂入后台并继续运行原始程序,实现了一种隐蔽的Shell访问。而我把这种技术叫做字节注入反弹。...我们以如下截图中的30352为例;图片接着读者需要自行准备一段ShellCode代码,只保留代码部分去掉头部变量参数,如下所示;图片接着我们使用如下这段代码中的WritePEShellCode函数,通过传入指定PE...// 将ShellCode写出到PE程序的特定位置// 参数1: 指定PE路径 参数2: 指定文件中的偏移(十进制) 参数3: 指定ShellCode文件void WritePEShellCode(const...文件中我们需要手动分析寻找空余块,并在注入成功后还需要自行修正PE文件内的入口地址等,这种方式适合于对PE结构非常熟悉的人可以,但也要花费一些精力去寻找分析,如下代码则是实现了自动化注入功能,该代码中FindSpace
PE知识复习之PE的导入表 一丶简介 上一讲讲解了导出表. 也就是一个PE文件给别人使用的时候.导出的函数 函数的地址 函数名称 序号 等等. ...一个进程是一组PE文件构成的. PE文件需要依赖那些模块.以及依赖这些模块中的那些函数.这个就是导入表需要做的. 确定PE依赖那个模块. 确定PE依赖的那个函数. 以及确定函数地址....PE加载前加载后的区别. 一样是一样的.但是需要分清 PE加载前.还有PE加载后.如果加载前,那么IAT跟INT一样.都可以找到依赖的函数名称....PE加载后如下图: ? IAT表保存的就是函数地址了. 从导入表中找到IAT表. ? IAT表的RVA 偏移为 0x1A098 VA == 41A098 ?...PE加载后INT 表同上. IAT表变成了存储函数地址的地址表了. 2. Name 民称表. 直接指向DLL名称文件名.
0, 0, 0); HANDLE lpBase = MapViewOfFile(hMap, FILE_MAP_READ | FILE_SHARE_WRITE, 0, 0, 0); // 找到PE...0, 0, 0); HANDLE lpBase = MapViewOfFile(hMap, FILE_MAP_READ | FILE_SHARE_WRITE, 0, 0, 0); // 定位PE
PE文件就是我们常说的EXE可执行文件,针对文件特征的识别可以清晰的知道该程序是使用何种编程语言实现的,前提是要有特征库,PE特征识别有多种形式,第一种是静态识别,此方法就是只针对磁盘中文件的特征码字段进行检测来判断编译器版本...打开PE文件映射: 在读取PE结构之前,首先要做的就是打开PE文件到内存,这里打开文件我们使用了CreateFile()函数该函数可以打开文件并返回文件句柄,接着使用CreateFileMapping(...include #include #include #pragma comment(lib,"Imagehlp.lib") // 读取PE...结构,然后判断其是否符合PE文件规范即可,这里需要注意32位于64位PE结构所使用的的结构定义略有不同,代码中已经对其进行了区分....(lpMapAddress, 0); printf("是否为PE文件: %d \n", ret); system("pause"); return 0; } 判断PE文件特征码: 判断程序使用了何种编译器编写
PE格式是 Windows下最常用的可执行文件格式,理解PE文件格式不仅可以了解操作系统的加载流程,还可以更好的理解操作系统对进程和内存相关的管理知识,而有些技术必须建立在了解PE文件格式的基础上,如文件加密与解密...,病毒分析,外挂技术等,在PE文件中我们最需要关注,PE结构,导入表,导出表,重定位表,下面将具体介绍PE的关键结构,并使用C语言编程获取到这些结构数据....Windows NT 系统中可执行文件使用微软设计的新的文件格式,也就是至今还在使用的PE格式,PE文件的基本结构如下图所示:图片在PE文件中,代码,已初始化的数据,资源和重定位信息等数据被按照属性分类放到不同的...,上面介绍的是真正的PE文件,为了兼容以前的DOS系统,所以保留了DOS的文件格式,接下来将依次介绍这几种数据结构.我们需要编程实现读取PE结构,在读取PE文件中的数据的前提下,我们先来打开文件,然后才能读取...PE文件头开始偏移为00f8h的位置。
PE格式是 Windows下最常用的可执行文件格式,理解PE文件格式不仅可以了解操作系统的加载流程,还可以更好的理解操作系统对进程和内存相关的管理知识,而有些技术必须建立在了解PE文件格式的基础上,如文件加密与解密...,病毒分析,外挂技术等,在PE文件中我们最需要关注,PE结构,导入表,导出表,重定位表,下面将具体介绍PE的关键结构,并使用C语言编程获取到这些结构数据....Windows NT 系统中可执行文件使用微软设计的新的文件格式,也就是至今还在使用的PE格式,PE文件的基本结构如下图所示: 在PE文件中,代码,已初始化的数据,资源和重定位信息等数据被按照属性分类放到不同的...我们需要编程实现读取PE结构,在读取PE文件中的数据的前提下,我们先来打开文件,然后才能读取。...PE文件头开始偏移为00f8h的位置。
下面就来介绍一下如何制作 PE启动盘 ,并使用它来安装 Win10 操作系统。...制作之前,您需要准备: 16GB以上的U盘(至少要能够装下您准备安装的操作系统镜像) 系统镜像(推荐官方渠道或是MSDN下载) U盘启动盘制作 第一步,下载微PE工具箱 官网下载即可:http://www.wepe.com.cn.../download.html 第二步,制作U盘启动盘 插入U盘,启动微PE软件,选择安装进U盘。...安装Win10 第一步,进入微PE 将您在上一步制作好的U盘启动盘插入待安装系统的电脑,之后选择U盘启动,使用U盘引导启动(至于如何选择U盘启动,不同型号的计算机方法也不同,请自行根据自己的电脑品牌及型号查找...第三步,激活 您可以使用本站提供的 KMS 服务器激活您的windows系统,只需要以管理员权限在命令提示符运行如下命令: slmgr /skms kms.frytea.com && slmgr /ato
PAGE_READWRITE, 0, 0, 0); HANDLE lpBase = MapViewOfFile(hMap, FILE_MAP_READ | FILE_SHARE_WRITE, 0, 0, 0); // 找到PE...PAGE_READWRITE, 0, 0, 0); HANDLE lpBase = MapViewOfFile(hMap, FILE_MAP_READ | FILE_SHARE_WRITE, 0, 0, 0); // 定位PE
PE知识复习之PE的导出表 一丶简介 在说明PE导出表之前.我们要理解.一个PE可执行程序.是由一个文件组成的吗....答案: 不是.是由很多PE文件组成.DLL也是PE文件.如果我们PE文件运行.那么就需要依赖DLL.系统DLL就是Kerner32.dll user32.dll等等.这些都是PE文件....什么是导出表: 导出表就是当前的PE文件提供了那些函数.给别人用. 举个例子: PE文件相当于一个饭店.那么菜单就是导出表....所以我们需要转换为FOA 去PE文件中查看. RVA 判断在那个节....如果在内存中.我们直接RVA + 当前PE的ImageBase就可以看到函数导出的名称了.不过我们现在算一下.
领取专属 10元无门槛券
手把手带您无忧上云