- 获取内核源码在Linux内核官方网站即可下载最新Linux源码点击跳转我们一般应该下载最新的稳定版本Linux内核源码进行学习。源码下载后,通过tar命令进行解压即可tar xvzf linux-X.X.X.tar.gz解压后源码会存在linux-X.X.X文件夹中。内核源码一般都安装在 /usr/src/linux 目录下,但我们开发时不要直接对这个源码树进行开发,因为编译C库所用的内核... 获取内核源码在Linux内核官方网站即可下载最新Linux源码点击跳转我们一般应该下载最新的稳定版本Linux内核源码进行学习。源码下载后,通过tar命令进行解压即可tar xvzf linux-X.X.X.tar.gz解压后源码会存在linux-X.X.X文件夹中。内核源码一般都安装在 /usr/src/linux 目录下,但我们开发时不要直接对这个源码树进行开发,因为编译C库所用的内核...
- 在这篇博文中,作者深入解析了CSAPP(Computer Systems: A Programmer's Perspective)课程中的BombLab实验,聚焦于其中的第三阶段(Phase_3)。文章揭示了Phase_3的解密过程与实战策略,深入讲解了逆向工程和程序攻击的关键技术,为读者提供了深刻的计算机系统学习体验。 在这篇博文中,作者深入解析了CSAPP(Computer Systems: A Programmer's Perspective)课程中的BombLab实验,聚焦于其中的第三阶段(Phase_3)。文章揭示了Phase_3的解密过程与实战策略,深入讲解了逆向工程和程序攻击的关键技术,为读者提供了深刻的计算机系统学习体验。
- CSAPP课程中的BombLab实验是一场计算机系统学习之旅,而其中的Phase_2更是一个充满奥秘与挑战的阶段。本文深入解析了Phase_2的解密过程与实战经验,揭开了这个计算机科学之谜的一角。通过逆向分析、汇编语言理解以及程序攻击的实际运用,读者将深刻领略底层系统编程的复杂性与精妙之处。这篇博文旨在帮助学习者更好地理解计算机系统的运作原理,并在实战中锤炼他们的编程技能。 CSAPP课程中的BombLab实验是一场计算机系统学习之旅,而其中的Phase_2更是一个充满奥秘与挑战的阶段。本文深入解析了Phase_2的解密过程与实战经验,揭开了这个计算机科学之谜的一角。通过逆向分析、汇编语言理解以及程序攻击的实际运用,读者将深刻领略底层系统编程的复杂性与精妙之处。这篇博文旨在帮助学习者更好地理解计算机系统的运作原理,并在实战中锤炼他们的编程技能。
- 写在前面博文内容涉及:BPF 和 eBPF 认知BCC 和 bpftrace 认知BCC 和 bpftrace 工具简单认知理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回归,是随波逐流,是对内心的恐惧 ——赫尔曼·黑塞《德米安》BPF和 eBPF 是什么BPF 是 B... 写在前面博文内容涉及:BPF 和 eBPF 认知BCC 和 bpftrace 认知BCC 和 bpftrace 工具简单认知理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回归,是随波逐流,是对内心的恐惧 ——赫尔曼·黑塞《德米安》BPF和 eBPF 是什么BPF 是 B...
- 本文涵盖:数据类型汇总、大小端字节序存储、有/无符号数在底层的数据分布、浮点数疑攻破【附加经典笔试题】 本文涵盖:数据类型汇总、大小端字节序存储、有/无符号数在底层的数据分布、浮点数疑攻破【附加经典笔试题】
- 一名出色的程序员 = 优秀的Coding技巧 + 扎实的调试基本功 一名出色的程序员 = 优秀的Coding技巧 + 扎实的调试基本功
- 前言📖面向过程C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。以洗衣服这件事为例,下图是C语言完成洗衣服这件事的过程。📖面向对象C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。针对洗衣服这件事,C++会设置四个对象:人、衣服、洗衣粉、洗衣机。整个洗衣服的过程就变成了:人将衣服放进洗衣机、倒入洗衣粉、启动洗衣机,洗衣... 前言📖面向过程C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。以洗衣服这件事为例,下图是C语言完成洗衣服这件事的过程。📖面向对象C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。针对洗衣服这件事,C++会设置四个对象:人、衣服、洗衣粉、洗衣机。整个洗衣服的过程就变成了:人将衣服放进洗衣机、倒入洗衣粉、启动洗衣机,洗衣...
- 函数调用过程就是内存申请和数据流动的过程,熟悉其中原理,对于写出“人类高质量源码”有很好的辅助作用 后面将分别从C、C++、Objective-C三种语言来解析 函数调用过程就是内存申请和数据流动的过程,熟悉其中原理,对于写出“人类高质量源码”有很好的辅助作用 后面将分别从C、C++、Objective-C三种语言来解析
- 在之前的文章中,我们实现了一个正向的匿名管道ShellCode后门,为了保证文章的简洁易懂并没有增加针对调用函数的动态定位功能,此类方法在更换系统后则由于地址变化导致我们的后门无法正常使用,接下来将实现通过PEB获取GetProcAddrees函数地址,并根据该函数实现所需其他函数的地址自定位功能,通过枚举内存导出表的方式自动实现定位所需函数的动态地址,从而实现后门的通用性。 1.7.1 通... 在之前的文章中,我们实现了一个正向的匿名管道ShellCode后门,为了保证文章的简洁易懂并没有增加针对调用函数的动态定位功能,此类方法在更换系统后则由于地址变化导致我们的后门无法正常使用,接下来将实现通过PEB获取GetProcAddrees函数地址,并根据该函数实现所需其他函数的地址自定位功能,通过枚举内存导出表的方式自动实现定位所需函数的动态地址,从而实现后门的通用性。 1.7.1 通...
- 条件语句,也称为IF-ELSE语句,是计算机编程中的一种基本控制结构。它允许程序根据条件的真假来执行不同的代码块。条件语句在处理决策和分支逻辑时非常有用。一般来说,条件语句由IF关键字、一个条件表达式、一个或多个代码块以及可选的ELSE关键字和对应的代码块组成。条件表达式的结果通常是布尔值(True或False),决定了程序将执行IF代码块还是ELSE代码块。在汇编语言中,条件跳转指令用于根... 条件语句,也称为IF-ELSE语句,是计算机编程中的一种基本控制结构。它允许程序根据条件的真假来执行不同的代码块。条件语句在处理决策和分支逻辑时非常有用。一般来说,条件语句由IF关键字、一个条件表达式、一个或多个代码块以及可选的ELSE关键字和对应的代码块组成。条件表达式的结果通常是布尔值(True或False),决定了程序将执行IF代码块还是ELSE代码块。在汇编语言中,条件跳转指令用于根...
- 过程的实现离不开堆栈的应用,堆栈是一种后进先出(LIFO)的数据结构,最后压入栈的值总是最先被弹出,而新数值在执行压栈时总是被压入到栈的最顶端,栈主要功能是暂时存放数据和地址,通常用来保护断点和现场。栈是由CPU管理的线性内存数组,它使用两个寄存器(SS和ESP)来保存栈的状态,SS寄存器存放段选择符,而ESP寄存器的值通常是指向特定位置的一个32位偏移值,我们很少需要直接操作ESP寄存器,... 过程的实现离不开堆栈的应用,堆栈是一种后进先出(LIFO)的数据结构,最后压入栈的值总是最先被弹出,而新数值在执行压栈时总是被压入到栈的最顶端,栈主要功能是暂时存放数据和地址,通常用来保护断点和现场。栈是由CPU管理的线性内存数组,它使用两个寄存器(SS和ESP)来保存栈的状态,SS寄存器存放段选择符,而ESP寄存器的值通常是指向特定位置的一个32位偏移值,我们很少需要直接操作ESP寄存器,...
- 本章内容为C++修炼之筑基期系列的第一篇文章,初步认识类与对象,本章我们会学习什么是面向对象?类的定义、类的作用域、类的实例化、类对象模型以及this指针。此外筑基期系列文章都是关于类与对象的讲解。 本章内容为C++修炼之筑基期系列的第一篇文章,初步认识类与对象,本章我们会学习什么是面向对象?类的定义、类的作用域、类的实例化、类对象模型以及this指针。此外筑基期系列文章都是关于类与对象的讲解。
- 本章将探索驱动程序开发的基础部分,了解驱动对象`DRIVER_OBJECT`结构体的定义,一般来说驱动程序`DriverEntry`入口处都会存在这样一个驱动对象,该对象内所包含的就是当前所加载驱动自身的一些详细参数,例如驱动大小,驱动标志,驱动名,驱动节等等,每一个驱动程序都会存在这样的一个结构。 本章将探索驱动程序开发的基础部分,了解驱动对象`DRIVER_OBJECT`结构体的定义,一般来说驱动程序`DriverEntry`入口处都会存在这样一个驱动对象,该对象内所包含的就是当前所加载驱动自身的一些详细参数,例如驱动大小,驱动标志,驱动名,驱动节等等,每一个驱动程序都会存在这样的一个结构。
- 预处理指令、typedef、条件编译、多文件代码 预处理指令、typedef、条件编译、多文件代码
- 详细介绍C语言中程序的预处理、编译、汇编、链接过程。向你展示在计算机内部一个完整的程序是如何诞生的 详细介绍C语言中程序的预处理、编译、汇编、链接过程。向你展示在计算机内部一个完整的程序是如何诞生的
上滑加载中
推荐直播
-
物联网资深专家带你轻松构建AIoT智能场景应用
2024/11/21 周四 16:30-18:00
管老师 华为云IoT DTSE技术布道师
如何轻松构建AIoT智能场景应用?本期直播将聚焦华为云设备接入平台,结合AI、鸿蒙(OpenHarmony)、大数据等技术,实现物联网端云协同创新场景,教您如何打造更有实用性及创新性的AIoT行业标杆应用。
回顾中 -
Ascend C算子编程之旅:基础入门篇
2024/11/22 周五 16:00-17:30
莫老师 昇腾CANN专家
介绍Ascend C算子基本概念、异构计算架构CANN和Ascend C基本概述,以及Ascend C快速入门,夯实Ascend C算子编程基础
即将直播 -
深入解析:华为全栈AI解决方案与云智能开放能力
2024/11/22 周五 18:20-20:20
Alex 华为云学堂技术讲师
本期直播我们将重点为大家介绍华为全栈全场景AI解决方案以和华为云企业智能AI开放能力。旨在帮助开发者深入理解华为AI解决方案,并能够更加熟练地运用这些技术。通过洞悉华为解决方案,了解人工智能完整生态链条的构造。
去报名
热门标签