linux中常见指令解释 1. sedsed是一个经常被忽视的指令,但是sed使用范围十分广阔,这里介绍其几个简单的使用方法;sdfkjkjk语法: 1sed [-hnV][-e<script>][-f<script文件>][文本文件] 参数说明: -e<script>或–expression=<script> 以选项中指定的script来处理输入的文本文件。 2023-11-09 Linux > 常用命令 #转载
malloc源码分析——2 malloc源码分析—_int_malloc根据上一章的分析,malloc会调用__libc_malloc分配内存,__libc_malloc会调用malloc_hook_ini 进行初始化,然后回调__libc_malloc函数,这时候会执行_int_malloc开始分配内存,定义在malloc.c中,因为非常长,这里分段来看, _int_malloc第一部分123456789101112131 2023-11-09 C > 源码 #转载
malloc源码分析——1 malloc源码分析—ptmalloc_init本文分析malloc的源码,首先从glibc开始,首先看malloc.c文件中的一段定义, 1strong_alias (__libc_malloc, __malloc) strong_alias (__libc_malloc, malloc) strong_alias是GNU C中的定义,编译器判定这里malloc是__libc_malloc的别 2023-11-09 C > 源码 #转载
malloc源码分析——3 malloc源码分析—_int_malloc上一章分析了_int_malloc的前面一小部分,本章继续往下看, _int_malloc — fastbin123456789101112131415161718192021222324252627282930static void * _int_malloc(mstate av, size_t bytes) { ... if ( 2023-11-09 C > 源码 #转载
malloc源码分析——4 malloc源码分析—_int_malloc上一章分析了_int_malloc中的fastbin、smallbin和部分largebin的处理,本章继续往下看余下的代码。最后会对整个_int_malloc做一个总结。 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 2023-11-09 C > 源码 #转载
malloc源码分析——5 malloc源码分析—sysmalloc本章主要分析sysmalloc的代码,在《malloc源码分析—2》中已经分析了部分sysmalloc的代码,主要用于对分配区进行初始化。本章查看余下的代码, 第一部分123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525 2023-11-09 C > 源码 #转载
栈溢出原理与实践 声明:本章的所有实验都是在Windows 2000 Server上完成的。生成字符串并查找其偏移是在kali 2.0上,查找跳转函数的VA是在windows 10上用IDA。 1. 栈溢出原理1.1 修改邻接变量的原理用实例来反映原理 #include <stdio.h> #include <string.h> #define PASSWORD "1234567" i 2023-11-09 安全 #转载
栈的介绍 1、内存的不同用途进程使用的内存按照功能分为以下4个部分:(1)代码区:这个区域存储着被装入执行的二进制机器代码,处理器会到这个区域取出指令并执行。(2)数据区:用于存储全局变量(3)堆区:进程可以在堆区动态地请求一定大小的内存,并在用完之后归还给堆区。动态分配和回收是堆区的特点。(4)栈区:用于动态地存储函数之间的调用关系,以保证被调用函数在返回时恢复到母函数中继续执行。 协作过程如图所示: 2023-11-09 安全 #转载
汇编中常见指令解释 这篇博文很有趣,竟然将hexo的content设置给冲垮了,感觉里面写了不可思议的东西,十分值得我去深挖!!! 1. pop 和 push常见的汇编指令源码 pop机器码 含义 push机器码 含义 5f pop edi 57 push edi 5e pop esi 56 push esi 5d pop ebp 55 push ebp 5c pop esp 54 pus 2023-11-09 汇编 #转载
浅析堆的申请释放及相应保护机制 0×00 前面的话在了解这部分的时候,首先你最好阅读一下这两篇博客: Linux堆内存管理深入分析(上) Linux堆内存管理深入分析(下) 在内存中,堆是一个很有趣的地方,因为它可以由用户去直接的进行分配与销毁,所以也产生了一些很有趣、奇思妙想的漏洞,像unlink漏洞、House系列漏洞等等。但是在学习的过程中,我们很容易难以理解那些介绍的比较模糊的概念,比如 unsortedbin 在某些条 2023-11-09 安全 > 杂项 #转载